aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--home/default.nix638
1 files changed, 320 insertions, 318 deletions
diff --git a/home/default.nix b/home/default.nix
index 598cfee..e3db8ed 100644
--- a/home/default.nix
+++ b/home/default.nix
@@ -42,327 +42,16 @@ in
./zaread.nix
];
- home.file = {
- "Calendar/radicale/.keep".text = "";
- "Contacts/radicale/.keep".text = "";
- Downloads.source = config.lib.file.mkOutOfStoreSymlink "/media/skydrive/Downloads";
- };
-
- age = {
- identityPaths = [ "${config.home.homeDirectory}/.ssh/id_ed25519" ];
- secrets = {
- miniflux_api_key = {
- path = "${config.home.homeDirectory}/.secrets/miniflux_api_key";
- file = ../secrets/miniflux_api_key.age;
- };
- openai_auth_token.file = ../secrets/openai_auth_token.age;
- minio = {
- path = "${config.home.homeDirectory}/.mc/config.json";
- file = ../secrets/minio.age;
- };
- relesoft_cargo_token.file = ../secrets/relesoft_cargo_token.age;
- shiori_password.file = ../secrets/shiori_password.age;
- radicale = {
- path = "${config.home.homeDirectory}/.secrets/radicale";
- file = ../secrets/radicale.age;
- };
- unsplash_access_key = {
- path = "${config.home.homeDirectory}/.secrets/unsplash";
- file = ../secrets/unsplash_access_key.age;
- };
- gmail = {
- file = ../secrets/gmail.age;
- path = "${config.home.homeDirectory}/.secrets/gmail";
- mode = "600";
- };
- relesoft = {
- file = ../secrets/relesoft.age;
- path = "${config.home.homeDirectory}/.secrets/relesoft";
- mode = "600";
- };
- };
- };
-
- gtk = {
- colorScheme = "dark";
- enable = true;
- theme = {
- package = pkgs.whitesur-gtk-theme;
- name = "WhiteSur-Dark";
- };
- iconTheme = {
- package = pkgs.nordzy-icon-theme;
- name = "Nordzy";
- };
- font = {
- package = pkgs.roboto-flex;
- name = "Roboto Flex 11";
- };
- };
-
- qt = {
- enable = false;
- style = {
- package = pkgs.darkly;
- name = "Darkly";
- };
- };
-
- programs = {
- home-manager.enable = true;
- chawan = {
- enable = true;
- settings = {
- buffer = {
- autofocus = true;
- history = true;
- images = true;
- scripting = true;
- styling = true;
- };
- input = {
- vi-numeric-prefix = true;
- };
- chawan = {
- G = "n => n ? pager.gotoLine(n) : pager.cursorLastLine()";
- };
- };
- };
- nix-search-tv = {
- enable = true;
- enableTelevisionIntegration = true;
- settings = {
- indexes = [
- "nixpkgs"
- "home-manager"
- "nixos"
- ];
- experimental = { };
- };
- };
- television = {
- enable = true;
- enableFishIntegration = true;
- };
- zathura = {
- enable = true;
- extraConfig = ''
- set selection-clipboard clipboard
- set database sqlite
- '';
- };
- rbw = {
- enable = true;
- settings = {
- email = "${vars.email}";
- base_url = "https://vault.tammi.cc";
- pinentry = pkgs.pinentry-gnome3;
- };
- };
- element-desktop = {
- enable = true;
- settings = {
- "m.homeserver" = {
- base_url = "https://matrix.relesoft.io";
- server_name = "relesoft.io";
- };
- default_theme = "dark";
- };
- };
- zellij = {
- # modern tmux
- enable = true;
- enableFishIntegration = false;
- };
- zoxide = {
- # smarter cd command
- enable = true;
- enableFishIntegration = true;
- enableNushellIntegration = true;
- };
-
- carapace = {
- enable = true;
- enableNushellIntegration = true;
- enableFishIntegration = true;
- };
- gpg = {
- enable = true;
- settings = {
- no-comments = true;
- };
- };
- fzf = {
- enable = true;
- enableFishIntegration = true; # use CTRL+t for files, CTRL + r for history
- defaultOptions = [
- "--style full"
- "--preview '${pkgs.pistol}/bin/pistol {}'"
- ];
- };
- yazi = {
- # file browser
- enable = true;
- enableNushellIntegration = true;
- enableFishIntegration = true;
- settings = {
- mgr = {
- show_hidden = true;
- show_symlink = true;
- sort_by = "mtime";
- sort_dir_first = true;
- sort_reverse = true;
- };
- preview = {
- image_filter = "lanczos3";
- image_quality = 90;
- };
- };
- };
- atuin = {
- enable = true;
- enableFishIntegration = true;
- enableNushellIntegration = true;
- daemon = {
- enable = true;
- };
- settings = {
- auto_sync = true;
- style = "compact";
- sync_address = "https://atuin.tammi.cc";
- sync_frequency = "5m";
- update_check = false;
- workspaces = true;
- };
- };
- starship = {
- enable = true;
- enableFishIntegration = true;
- enableTransience = true;
- enableNushellIntegration = true;
- };
- eza = {
- enable = true;
- enableFishIntegration = true;
- enableNushellIntegration = true;
- git = true;
- icons = "auto";
- extraOptions = [
- "--color=always"
- "--tree"
- "--level=1"
- "--group-directories-first"
- "--dereference"
- ];
- };
- nix-index = {
- enable = true;
- enableFishIntegration = true;
- enableNushellIntegration = true;
- };
- pistol.enable = true;
- ghostty = {
- enable = true;
- systemd = {
- enable = true;
- };
- installVimSyntax = true;
- enableFishIntegration = true;
- settings = {
- copy-on-select = true;
- font-family = "Iosevka Nerd Font";
- font-size = 12;
- mouse-hide-while-typing = true;
- theme = "nord";
- };
- themes = {
- nord = {
- background = "#2e3440";
- cursor-color = "#d8dee9";
- cursor-text = "#2e3440";
- foreground = "#d8dee9";
- selection-background = "#3f4758";
- selection-foreground = "#d8dee9";
- palette = [
- "0=#3b4252"
- "1=#bf616a"
- "2=#a3be8c"
- "3=#ebcb8b"
- "4=#81a1c1"
- "5=#b48ead"
- "6=#88c0d0"
- "7=#e5e9f0"
- "8=#4c566a"
- "9=#bf616a"
- "10=#a3be8c"
- "11=#ebcb8b"
- "12=#81a1c1"
- "13=#b48ead"
- "14=#8fbcbb"
- "15=#eceff4"
- ];
- };
- };
- };
- ssh = {
- enableDefaultConfig = false;
- enable = true;
- matchBlocks."*" = {
- compression = true;
- controlMaster = "auto";
- controlPersist = "10m";
- serverAliveInterval = 1;
- };
- };
- };
-
- services = {
- home-manager.autoExpire.enable = true;
- ssh-agent = {
- enable = true;
- enableFishIntegration = true;
- enableNushellIntegration = true;
- };
- mpris-proxy.enable = true;
- mpd = {
- enable = true;
- musicDirectory = "/media/skydrive/Music/";
- # extraArgs = [ "--verbose" ];
- network = {
- listenAddress = "any";
- startWhenNeeded = true;
- port = 6600;
- };
- };
- wl-clip-persist = {
- enable = true;
- };
- psd = {
- enable = true;
- backupLimit = 5;
- };
- gpg-agent = {
- defaultCacheTtl = 1800;
- enable = true;
- enableFishIntegration = true;
- enableNushellIntegration = true;
- enableSshSupport = true;
- pinentry.package = pkgs.pinentry-gnome3;
- };
- clipse = {
- enable = true;
- };
- };
-
- manual = {
- html.enable = true;
- json.enable = true;
- };
-
home = {
+ file = {
+ "Calendar/radicale/.keep".text = "";
+ "Contacts/radicale/.keep".text = "";
+ Downloads.source = config.lib.file.mkOutOfStoreSymlink "/media/skydrive/Downloads";
+ };
enableNixpkgsReleaseCheck = true;
stateVersion = "25.05";
shell = {
+ enableBashIntegration = true;
enableFishIntegration = true;
enableNushellIntegration = true;
};
@@ -391,13 +80,326 @@ in
};
pointerCursor = {
- package = pkgs.bibata-cursors;
gtk.enable = true;
+ hyprcursor.enable = true;
name = "Bibata-Modern-Ice";
+ package = pkgs.bibata-cursors;
size = 22;
};
homeDirectory = "/home/${vars.user}";
+
+ age = {
+ identityPaths = [ "${config.home.homeDirectory}/.ssh/id_ed25519" ];
+ secrets = {
+ miniflux_api_key = {
+ path = "${config.home.homeDirectory}/.secrets/miniflux_api_key";
+ file = ../secrets/miniflux_api_key.age;
+ };
+ openai_auth_token.file = ../secrets/openai_auth_token.age;
+ minio = {
+ path = "${config.home.homeDirectory}/.mc/config.json";
+ file = ../secrets/minio.age;
+ };
+ relesoft_cargo_token.file = ../secrets/relesoft_cargo_token.age;
+ shiori_password.file = ../secrets/shiori_password.age;
+ radicale = {
+ path = "${config.home.homeDirectory}/.secrets/radicale";
+ file = ../secrets/radicale.age;
+ };
+ unsplash_access_key = {
+ path = "${config.home.homeDirectory}/.secrets/unsplash";
+ file = ../secrets/unsplash_access_key.age;
+ };
+ gmail = {
+ file = ../secrets/gmail.age;
+ path = "${config.home.homeDirectory}/.secrets/gmail";
+ mode = "600";
+ };
+ relesoft = {
+ file = ../secrets/relesoft.age;
+ path = "${config.home.homeDirectory}/.secrets/relesoft";
+ mode = "600";
+ };
+ };
+ };
+
+ gtk = {
+ colorScheme = "dark";
+ enable = true;
+ theme = {
+ package = pkgs.whitesur-gtk-theme;
+ name = "WhiteSur-Dark";
+ };
+ iconTheme = {
+ package = pkgs.nordzy-icon-theme;
+ name = "Nordzy";
+ };
+ font = {
+ package = pkgs.roboto-flex;
+ name = "Roboto Flex 11";
+ };
+ };
+
+ qt = {
+ enable = false;
+ style = {
+ package = pkgs.darkly;
+ name = "Darkly";
+ };
+ };
+
+ programs = {
+ home-manager.enable = true;
+ chawan = {
+ enable = true;
+ settings = {
+ buffer = {
+ autofocus = true;
+ history = true;
+ images = true;
+ scripting = true;
+ styling = true;
+ };
+ input = {
+ vi-numeric-prefix = true;
+ };
+ chawan = {
+ G = "n => n ? pager.gotoLine(n) : pager.cursorLastLine()";
+ };
+ };
+ };
+ nix-search-tv = {
+ enable = true;
+ enableTelevisionIntegration = true;
+ settings = {
+ indexes = [
+ "nixpkgs"
+ "home-manager"
+ "nixos"
+ ];
+ experimental = { };
+ };
+ };
+ television = {
+ enable = true;
+ enableFishIntegration = true;
+ };
+ zathura = {
+ enable = true;
+ extraConfig = ''
+ set selection-clipboard clipboard
+ set database sqlite
+ '';
+ };
+ rbw = {
+ enable = true;
+ settings = {
+ email = "${vars.email}";
+ base_url = "https://vault.tammi.cc";
+ pinentry = pkgs.pinentry-gnome3;
+ };
+ };
+ element-desktop = {
+ enable = true;
+ settings = {
+ "m.homeserver" = {
+ base_url = "https://matrix.relesoft.io";
+ server_name = "relesoft.io";
+ };
+ default_theme = "dark";
+ };
+ };
+ zellij = {
+ # modern tmux
+ enable = true;
+ enableFishIntegration = false;
+ };
+ zoxide = {
+ # smarter cd command
+ enable = true;
+ enableFishIntegration = true;
+ enableNushellIntegration = true;
+ };
+
+ carapace = {
+ enable = true;
+ enableNushellIntegration = true;
+ enableFishIntegration = true;
+ };
+ gpg = {
+ enable = true;
+ settings = {
+ no-comments = true;
+ };
+ };
+ fzf = {
+ enable = true;
+ enableFishIntegration = true; # use CTRL+t for files, CTRL + r for history
+ defaultOptions = [
+ "--style full"
+ "--preview '${pkgs.pistol}/bin/pistol {}'"
+ ];
+ };
+ yazi = {
+ # file browser
+ enable = true;
+ enableNushellIntegration = true;
+ enableFishIntegration = true;
+ settings = {
+ mgr = {
+ show_hidden = true;
+ show_symlink = true;
+ sort_by = "mtime";
+ sort_dir_first = true;
+ sort_reverse = true;
+ };
+ preview = {
+ image_filter = "lanczos3";
+ image_quality = 90;
+ };
+ };
+ };
+ atuin = {
+ enable = true;
+ enableFishIntegration = true;
+ enableNushellIntegration = true;
+ daemon = {
+ enable = true;
+ };
+ settings = {
+ auto_sync = true;
+ style = "compact";
+ sync_address = "https://atuin.tammi.cc";
+ sync_frequency = "5m";
+ update_check = false;
+ workspaces = true;
+ };
+ };
+ starship = {
+ enable = true;
+ enableFishIntegration = true;
+ enableTransience = true;
+ enableNushellIntegration = true;
+ };
+ eza = {
+ enable = true;
+ enableFishIntegration = true;
+ enableNushellIntegration = true;
+ git = true;
+ icons = "auto";
+ extraOptions = [
+ "--color=always"
+ "--tree"
+ "--level=1"
+ "--group-directories-first"
+ "--dereference"
+ ];
+ };
+ nix-index = {
+ enable = true;
+ enableFishIntegration = true;
+ enableNushellIntegration = true;
+ };
+ pistol.enable = true;
+ ghostty = {
+ enable = true;
+ systemd = {
+ enable = true;
+ };
+ installVimSyntax = true;
+ enableFishIntegration = true;
+ settings = {
+ copy-on-select = true;
+ font-family = "Iosevka Nerd Font";
+ font-size = 12;
+ mouse-hide-while-typing = true;
+ theme = "nord";
+ };
+ themes = {
+ nord = {
+ background = "#2e3440";
+ cursor-color = "#d8dee9";
+ cursor-text = "#2e3440";
+ foreground = "#d8dee9";
+ selection-background = "#3f4758";
+ selection-foreground = "#d8dee9";
+ palette = [
+ "0=#3b4252"
+ "1=#bf616a"
+ "2=#a3be8c"
+ "3=#ebcb8b"
+ "4=#81a1c1"
+ "5=#b48ead"
+ "6=#88c0d0"
+ "7=#e5e9f0"
+ "8=#4c566a"
+ "9=#bf616a"
+ "10=#a3be8c"
+ "11=#ebcb8b"
+ "12=#81a1c1"
+ "13=#b48ead"
+ "14=#8fbcbb"
+ "15=#eceff4"
+ ];
+ };
+ };
+ };
+ ssh = {
+ enableDefaultConfig = false;
+ enable = true;
+ matchBlocks."*" = {
+ compression = true;
+ controlMaster = "auto";
+ controlPersist = "10m";
+ serverAliveInterval = 1;
+ };
+ };
+ };
+
+ services = {
+ home-manager.autoExpire.enable = true;
+ ssh-agent = {
+ enable = true;
+ enableFishIntegration = true;
+ enableNushellIntegration = true;
+ };
+ mpris-proxy.enable = true;
+ mpd = {
+ enable = true;
+ musicDirectory = "/media/skydrive/Music/";
+ # extraArgs = [ "--verbose" ];
+ network = {
+ listenAddress = "any";
+ startWhenNeeded = true;
+ port = 6600;
+ };
+ };
+ wl-clip-persist = {
+ enable = true;
+ };
+ psd = {
+ enable = true;
+ backupLimit = 5;
+ };
+ gpg-agent = {
+ defaultCacheTtl = 1800;
+ enable = true;
+ enableFishIntegration = true;
+ enableNushellIntegration = true;
+ enableSshSupport = true;
+ pinentry.package = pkgs.pinentry-gnome3;
+ };
+ clipse = {
+ enable = true;
+ };
+ };
+
+ manual = {
+ html.enable = true;
+ json.enable = true;
+ };
+
packages = with pkgs; [
# tui tools
bluetui # bluetooth management