diff --git a/flake.lock b/flake.lock index fd7d351..2c59639 100644 --- a/flake.lock +++ b/flake.lock @@ -86,11 +86,11 @@ ] }, "locked": { - "lastModified": 1725377834, - "narHash": "sha256-tqoAO8oT6zEUDXte98cvA1saU9+1dLJQe3pMKLXv8ps=", + "lastModified": 1727249977, + "narHash": "sha256-lAqOCDI4B6hA+t+KHSm/Go8hQF/Ob5sgXaIRtMAnMKw=", "owner": "nix-community", "repo": "disko", - "rev": "e55f9a8678adc02024a4877c2a403e3f6daf24fe", + "rev": "c1c472f4cd91e4b0703e02810a8c7ed30186b6fa", "type": "github" }, "original": { @@ -106,11 +106,11 @@ "pyproject-nix": "pyproject-nix" }, "locked": { - "lastModified": 1722526955, - "narHash": "sha256-fFS8aDnfK9Qfm2FLnQ8pqWk8FzvFEv5LvTuZTZLREnc=", + "lastModified": 1726523340, + "narHash": "sha256-Av5mdR2lAGUVdA6DJ8Anon3/FZg3DX4gl1Ff72rCpKU=", "owner": "nix-community", "repo": "dream2nix", - "rev": "3fd4c14d3683baac8d1f94286ae14fe160888b51", + "rev": "b76c529f377100516c40c5b6e239a4525fdcabe0", "type": "github" }, "original": { @@ -250,11 +250,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "lastModified": 1726560853, + "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", "type": "github" }, "original": { @@ -286,11 +286,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1725234343, - "narHash": "sha256-+ebgonl3NbiKD2UD0x4BszCZQ6sTfL4xioaM49o5B3Y=", + "lastModified": 1726153070, + "narHash": "sha256-HO4zgY0ekfwO5bX0QH/3kJ/h4KvUDFZg8YpkNwIbg1U=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "567b938d64d4b4112ee253b9274472dc3a346eb6", + "rev": "bcef6817a8b2aa20a5a6dbb19b43e63c5bf8619a", "type": "github" }, "original": { @@ -448,11 +448,11 @@ ] }, "locked": { - "lastModified": 1726985855, - "narHash": "sha256-NJPGK030Y3qETpWBhj9oobDQRbXdXOPxtu+YgGvZ84o=", + "lastModified": 1727246346, + "narHash": "sha256-TcUaKtya339Asu+g6KTJ8h7KiKcKXKp2V+At+7tksyY=", "owner": "nix-community", "repo": "home-manager", - "rev": "04213d1ce4221f5d9b40bcee30706ce9a91d148d", + "rev": "1e22ef1518fb175d762006f9cae7f6312b8caedb", "type": "github" }, "original": { @@ -484,11 +484,11 @@ }, "impermanence": { "locked": { - "lastModified": 1725690722, - "narHash": "sha256-4qWg9sNh5g1qPGO6d/GV2ktY+eDikkBTbWSg5/iD2nY=", + "lastModified": 1727198257, + "narHash": "sha256-/qMVI+SG9zvhLbQFOnqb4y4BH6DdK3DQHZU5qGptehc=", "owner": "nix-community", "repo": "impermanence", - "rev": "63f4d0443e32b0dd7189001ee1894066765d18a5", + "rev": "8514fff0f048557723021ffeb31ca55f69b67de3", "type": "github" }, "original": { @@ -542,11 +542,11 @@ "lix": { "flake": false, "locked": { - "lastModified": 1725846500, - "narHash": "sha256-8tzJO3PllVPc0RYE0OfXVWlgTiJxKH1nzXsQLGyFRJ4=", + "lastModified": 1726905313, + "narHash": "sha256-jsOyXonevsNaKxM9burYc2S4JVle+VMCJ8+AAp0MDCc=", "ref": "refs/heads/main", - "rev": "c14486ae8d3bbc862c625d948a6b2f4dc0927d5b", - "revCount": 16226, + "rev": "5f298f74c92402a8390b01c736463b17b36277e3", + "revCount": 16254, "type": "git", "url": "https://git@git.lix.systems/lix-project/lix" }, @@ -567,11 +567,11 @@ ] }, "locked": { - "lastModified": 1725836728, - "narHash": "sha256-dCbHCwqrzcHlEsRilMX+KM3IfRV46ieGqDyAD3GgCSs=", + "lastModified": 1726631249, + "narHash": "sha256-b2rMO8+jKjY55d8uynX7FjV4NIPu/WzPux0kWOAzwoo=", "ref": "refs/heads/main", - "rev": "353b25f0b6da5ede15206d416345a2ec4195b5c8", - "revCount": 107, + "rev": "b0e6f359500d66670cc16f521e4f62d6a0a4864e", + "revCount": 110, "type": "git", "url": "https://git.lix.systems/lix-project/nixos-module" }, @@ -583,11 +583,11 @@ "mobile-nixos": { "flake": false, "locked": { - "lastModified": 1725601293, - "narHash": "sha256-PLk1m0ZukClV+qrszd6WaNclpge8zGsSBTOAwYB9es4=", + "lastModified": 1726960027, + "narHash": "sha256-BJe+6Gpqu98Mhi1oAfrJK25SZvvQgfYqpmLaXvXgQ9g=", "owner": "NixOS", "repo": "mobile-nixos", - "rev": "672f8299e484301994858d9220921309f631d616", + "rev": "a386813d9ec46fa32e51488f7d48c0e1bde77f8e", "type": "github" }, "original": { @@ -652,11 +652,11 @@ ] }, "locked": { - "lastModified": 1725628909, - "narHash": "sha256-xI0OSqPHcs/c/utJsU0Zvcp1VhejMI9mgwr68uHHlPs=", + "lastModified": 1727003835, + "narHash": "sha256-Cfllbt/ADfO8oxbT984MhPHR6FJBaglsr1SxtDGbpec=", "owner": "LnL7", "repo": "nix-darwin", - "rev": "76559183801030451e200c90a1627c1d82bb4910", + "rev": "bd7d1e3912d40f799c5c0f7e5820ec950f1e0b3d", "type": "github" }, "original": { @@ -691,11 +691,11 @@ }, "nixosHardware": { "locked": { - "lastModified": 1725885300, - "narHash": "sha256-5RLEnou1/GJQl+Wd+Bxaj7QY7FFQ9wjnFq1VNEaxTmc=", + "lastModified": 1727040444, + "narHash": "sha256-19FNN5QT9Z11ZUMfftRplyNN+2PgcHKb3oq8KMW/hDA=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "166dee4f88a7e3ba1b7a243edb1aca822f00680e", + "rev": "d0cb432a9d28218df11cbd77d984a2a46caeb5ac", "type": "github" }, "original": { @@ -897,15 +897,16 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1726745986, - "narHash": "sha256-xB35C2fpz7iyNcj9sn0a+wM2C4CQ6DGTn5VUHogstYs=", + "lastModified": 1726937504, + "narHash": "sha256-bvGoiQBvponpZh8ClUcmJ6QnsNKw0EMrCQJARK3bI1c=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "268bb5090a3c6ac5e1615b38542a868b52ef8088", + "rev": "9357f4f23713673f310988025d9dc261c20e70c6", "type": "github" }, "original": { "owner": "NixOS", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } @@ -1275,11 +1276,11 @@ ] }, "locked": { - "lastModified": 1725271838, - "narHash": "sha256-VcqxWT0O/gMaeWTTjf1r4MOyG49NaNxW4GHTO3xuThE=", + "lastModified": 1727252110, + "narHash": "sha256-3O7RWiXpvqBcCl84Mvqa8dXudZ1Bol1ubNdSmQt7nF4=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "9fb342d14b69aefdf46187f6bb80a4a0d97007cd", + "rev": "1bff2ba6ec22bc90e9ad3f7e94cca0d37870afa3", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 79dd5bc..001eca4 100644 --- a/flake.nix +++ b/flake.nix @@ -3,9 +3,7 @@ inputs = { flakeParts.url = "github:hercules-ci/flake-parts"; - # FIXME remove constraint - nixpkgs.url = "github:NixOS/nixpkgs"; - # nixpkgsForSisko.url = "github:NixOS/nixpkgs/0e74ca98a74bc7270d28838369593635a5db3260"; + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; nixosHardware.url = "github:NixOS/nixos-hardware"; homeManager = { url = "github:nix-community/home-manager"; diff --git a/hmModules/foot/default.nix b/hmModules/foot/default.nix index 620d5f8..e8ac8d3 100644 --- a/hmModules/foot/default.nix +++ b/hmModules/foot/default.nix @@ -14,6 +14,7 @@ lib.mkMerge [ login-shell = "yes"; dpi-aware = "no"; horizontal-letter-offset = "1"; + pad = "1x1"; font = let size = "13"; diff --git a/hmModules/freecad/default.nix b/hmModules/freecad/default.nix new file mode 100644 index 0000000..ef86027 --- /dev/null +++ b/hmModules/freecad/default.nix @@ -0,0 +1,4 @@ +{ pkgs, ... }: +{ + home.packages = [ pkgs.freecad-wayland ]; +} diff --git a/hmModules/git/default.nix b/hmModules/git/default.nix index fcec555..8b1dfd4 100644 --- a/hmModules/git/default.nix +++ b/hmModules/git/default.nix @@ -27,8 +27,6 @@ in user.signingKey = "/home/${username}/.ssh/id_rsa"; gpg.format = "ssh"; commit.gpgsign = true; - - core.editor = "emacsclient"; }; userName = config.name; diff --git a/hmModules/shell/default.nix b/hmModules/shell/default.nix index d1e8fc4..32f4a8f 100644 --- a/hmModules/shell/default.nix +++ b/hmModules/shell/default.nix @@ -8,6 +8,18 @@ { programs.bat.enable = true; + programs.ranger = { + enable = true; + settings = { + "preview_images" = true; + "preview_images_method" = "sixel"; + }; + }; + + programs.fzf.enable = true; + + programs.ripgrep.enable = true; + programs.direnv = { enable = true; config = { @@ -16,12 +28,10 @@ nix-direnv.enable = true; }; - # programs.exa = { - # enable = false; - # enableAliases = true; - # }; - - # programs.fzf.enable = false; + programs.lsd = { + enable = false; + enableAliases = true; + }; programs.vim.enable = true; @@ -50,169 +60,32 @@ }; }; - # programs.starship = { - # enable = false; - # settings = { - # character = { - # success_symbol = "[👌](bold green)"; - # error_symbol = "[🤌](bold red)"; - # }; - # nix_shell = { - # symbol = "❄ "; - # }; - # }; - # }; - - # Playing with it sometimes - # programs.nushell = { - # enable = false; - # configFile.text = '' - # let carapace_completer = {|spans| - # carapace $spans.0 nushell $spans | from json - # } - # let-env config = { - # show_banner: false - # ls: { - # use_ls_colors: true # use the LS_COLORS environment variable to colorize output - # clickable_links: true # enable or disable clickable links. Your terminal has to support links. - # } - # rm: { - # always_trash: true # always act as if -t was given. Can be overridden with -p - # } - # cd: { - # abbreviations: true # allows `cd s/o/f` to expand to `cd some/other/folder` - # } - # table: { - # mode: compact # basic, compact, compact_double, light, thin, with_love, rounded, reinforced, heavy, none, other - # index_mode: always # "always" show indexes, "never" show indexes, "auto" = show indexes when a table has "index" column - # trim: { - # methodology: wrapping # wrapping or truncating - # wrapping_try_keep_words: true # A strategy used by the 'wrapping' methodology - # truncating_suffix: "..." # A suffix used by the 'truncating' methodology - # } - # } - # history: { - # max_size: 10000 # Session has to be reloaded for this to take effect - # sync_on_enter: true # Enable to share history between multiple sessions, else you have to close the session to write history to file - # file_format: "plaintext" # "sqlite" or "plaintext" - # } - # completions: { - # case_sensitive: false # set to true to enable case-sensitive completions - # quick: true # set this to false to prevent auto-selecting completions when only one remains - # partial: true # set this to false to prevent partial filling of the prompt - # algorithm: "fuzzy" # prefix or fuzzy - # external: { - # enable: true # set to false to prevent nushell looking into $env.PATH to find more suggestions, `false` recommended for WSL users as this look up my be very slow - # max_results: 100 # setting it lower can improve completion performance at the cost of omitting some options - # completer: $carapace_completer # check 'carapace_completer' above as an example - # } - # } - # filesize: { - # metric: true # true => KB, MB, GB (ISO standard), false => KiB, MiB, GiB (Windows standard) - # format: "auto" # b, kb, kib, mb, mib, gb, gib, tb, tib, pb, pib, eb, eib, zb, zib, auto - # } - # buffer_editor: "${config.programs.helix.package}/bin/helix" - # } - # ''; - # }; - programs.fish = { enable = true; - shellInit = lib.optionalString (builtins.hasAttr "cachix-personal-token" age.secrets) '' - export CACHIX_AUTH_TOKEN=$(cat ${age.secrets.cachix-personal-token.path}) - ''; + shellInit = + '' + fish_vi_key_bindings + '' + + lib.optionalString (builtins.hasAttr "cachix-personal-token" age.secrets) '' + export CACHIX_AUTH_TOKEN=$(cat ${age.secrets.cachix-personal-token.path}) + ''; shellAliases = { "cat" = "bat"; }; }; - # programs.zsh = { - # enable = false; # Playing xswith fish at the moment - # enableAutosuggestions = true; - # enableCompletion = true; - # enableSyntaxHighlighting = true; - # enableVteIntegration = true; - # autocd = true; - # oh-my-zsh = { - # enable = true; - # plugins = [ - # "ag" - # "cabal" - # "colored-man-pages" - # "colorize" - # "command-not-found" - # "fzf" - # "git" - # "nomad" - # "pass" - # "python" - # "sudo" - # "terraform" - # "thefuck" - # ]; - # }; - # plugins = [ - # { - # name = "fzf-tab"; - # src = pkgs.fetchFromGitHub { - # owner = "Aloxaf"; - # repo = "fzf-tab"; - # rev = "c2b4aa5ad2532cca91f23908ac7f00efb7ff09c9"; - # sha256 = "sha256-gvZp8P3quOtcy1Xtt1LAW1cfZ/zCtnAmnWqcwrKel6w="; - # }; - # } - # { - # name = "fzf-tab"; - # src = pkgs.fetchFromGitHub { - # owner = "Aloxaf"; - # repo = "fzf-tab"; - # rev = "c2b4aa5ad2532cca91f23908ac7f00efb7ff09c9"; - # sha256 = "sha256-gvZp8P3quOtcy1Xtt1LAW1cfZ/zCtnAmnWqcwrKel6w="; - # }; - # } - # { - # name = "fast-syntax-highlighting"; - # src = pkgs.fetchFromGitHub { - # owner = "zdharma-continuum"; - # repo = "fast-syntax-highlighting"; - # rev = "13d7b4e63468307b6dcb2dadf6150818f242cbff"; - # sha256 = "sha256-AmsexwVombgVmRvl4O9Kd/WbnVJHPTXETxBv18PDHz4="; - # }; - # } - # ]; - # shellAliases = { - # "cat" = "bat"; - # "em" = "TERM=wezterm emacsclient -nw"; - # }; - # loginExtra = "[[ -z $DISPLAY && $TTY = /dev/tty1 ]] && exec dbus-run-session Hyprland"; - # envExtra = '' - # # [ $TERM = "dumb" ] && unsetopt zle && PS1='$ ' # for Emacs TRAMP mode - # ''; - # initExtra = '' - # export CACHIX_AUTH_TOKEN=$(cat ${age.secrets.cachix-personal-token.path}) - - # # Don't enable VIM emulation when in Emacs - # [[ -z $INSIDE_EMACS ]] && source ${pkgs.zsh-vi-mode}/share/zsh-vi-mode/zsh-vi-mode.plugin.zsh - - # # When enabling starship, home-manager add an `initExtra` rule to disable it when in Emacs but not with VTerm, - # # since I use also `eat` besides `vterm` the following line is needed - # [[ "$INSIDE_EMACS" =~ "eat" ]] && eval "$(${config.home.profileDirectory}/bin/starship init zsh)" - # ''; - # }; - home.packages = with pkgs; [ thefuck - htop-vim - bottom dig.dnsutils lsof - zsh-completions - nix-zsh-completions comma - carapace # used by nushell - neovim + ffmpeg-headless + jless + nix-melt + jq + yq-go ] ++ (lib.optionals (builtins.elem hostname [ diff --git a/hmModules/tremotesf/default.nix b/hmModules/tremotesf/default.nix index a3569a1..82c1336 100644 --- a/hmModules/tremotesf/default.nix +++ b/hmModules/tremotesf/default.nix @@ -7,7 +7,9 @@ home.packages = [ pkgs.tremotesf ]; systemd.user.services.tremotesf = { - Install.WantedBy = [ "graphical-session.target" ]; + Install.WantedBy = [ + "waybar.service" + ]; Unit = { Description = "tremotesf"; diff --git a/hmModules/zmkbatx/default.nix b/hmModules/zmkbatx/default.nix index b7f9065..0070092 100644 --- a/hmModules/zmkbatx/default.nix +++ b/hmModules/zmkbatx/default.nix @@ -8,7 +8,6 @@ systemd.user.services.zmkBATx = { Install.WantedBy = [ - "graphical-session.target" "waybar.service" ]; @@ -17,7 +16,7 @@ }; Service = { - ExecStart = lib.getExe pkgs.zmkBATx; + ExecStart = "sleep 5 && ${lib.getExe pkgs.zmkBATx}"; Restart = "on-failure"; RestartSec = 3; }; diff --git a/hosts/default.nix b/hosts/default.nix index 400f3ce..480c37d 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -97,6 +97,7 @@ extraModules = with inputs; [ disko.nixosModules.disko impermanence.nixosModules.impermanence + lix-module.nixosModules.default ]; secrets = { "sisko-wireguard-private-key" = { }; diff --git a/hosts/picard/default.nix b/hosts/picard/default.nix index def7e50..be7d2f8 100644 --- a/hosts/picard/default.nix +++ b/hosts/picard/default.nix @@ -85,6 +85,7 @@ "vscode-server" "zk" "catppuccin" + "freecad" ]; extraGroups = [ ]; backupPaths = [ ]; diff --git a/hosts/sisko/default.nix b/hosts/sisko/default.nix index 79ef8fe..8341327 100644 --- a/hosts/sisko/default.nix +++ b/hosts/sisko/default.nix @@ -21,14 +21,7 @@ "invidious" "searx" "rock5b-samba" - # "paperless" - # "restic" - # "syncthing" - # "minio" - # # "matrix" "forgejo" - # # "jellyfin" - # "immich" "prometheus" "grafana" "prometheus-exporters" @@ -36,7 +29,6 @@ "promtail" "garmin-collector" "restic" - # "immich" "atuin" ] ++ [ diff --git a/modules/immich/default.nix b/modules/immich/default.nix index 21d8bd5..be7e905 100644 --- a/modules/immich/default.nix +++ b/modules/immich/default.nix @@ -1,10 +1,6 @@ -{ config, ... }: -let - nixpkgsImmich = builtins.getFlake "github:NixOS/nixpkgs/c0ee4c1770aa1ef998c977c4cc653a07ec95d9bf"; -in { - containers.nextcloud = { - nixpkgs = nixpkgsImmich; + containers.immich = { + nixpkgs = builtins.getFlake "github:NixOS/nixpkgs/51296fce6f2b33717f710788af4e134aa7ff0e58"; autoStart = true; privateNetwork = true; # hostAddress = "192.168.100.10"; diff --git a/modules/xdg/default.nix b/modules/xdg/default.nix index 0a07d40..c1aa55a 100644 --- a/modules/xdg/default.nix +++ b/modules/xdg/default.nix @@ -3,15 +3,18 @@ xdg = { portal = { enable = true; - extraPortals = with pkgs; [ + configPackages = with pkgs; [ + xdg-desktop-portal-wlr xdg-desktop-portal-gtk xdg-desktop-portal-hyprland ]; - config.common.default = "*"; + extraPortals = with pkgs; [ + xdg-desktop-portal-wlr + xdg-desktop-portal-gtk + xdg-desktop-portal-hyprland + ]; + xdgOpenUsePortal = true; + wlr.enable = true; }; }; - - environment.sessionVariables = { - GTK_USE_PORTAL = "1"; - }; } diff --git a/packages/spotify-adblocked/default.nix b/packages/spotify-adblocked/default.nix index 94df5c9..f44acea 100644 --- a/packages/spotify-adblocked/default.nix +++ b/packages/spotify-adblocked/default.nix @@ -15,7 +15,7 @@ let rev = "5a3281dee9f889afdeea7263558e7a715dcf5aab"; hash = "sha256-UzpHAHpQx2MlmBNKm2turjeVmgp5zXKWm3nZbEo0mYE="; }; - cargoSha256 = "sha256-wPV+ZY34OMbBrjmhvwjljbwmcUiPdWNHFU3ac7aVbIQ="; + cargoHash = "sha256-wPV+ZY34OMbBrjmhvwjljbwmcUiPdWNHFU3ac7aVbIQ="; patchPhase = '' substituteInPlace src/lib.rs \