diff --git a/flake.lock b/flake.lock index 43c20a6..35ce449 100644 --- a/flake.lock +++ b/flake.lock @@ -55,16 +55,16 @@ ] }, "locked": { - "lastModified": 1772985280, - "narHash": "sha256-FdrNykOoY9VStevU4zjSUdvsL9SzJTcXt4omdEDZDLk=", + "lastModified": 1781981105, + "narHash": "sha256-/1nNBbA7PrSQpTc9Qazkhl4kIPg+TNl0CjxS3UQJKlw=", "owner": "nix-community", "repo": "home-manager", - "rev": "8f736f007139d7f70752657dff6a401a585d6cbc", + "rev": "7bfff44b465909f69a442701293bc0badcf476dc", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-25.11", + "ref": "release-26.05", "repo": "home-manager", "type": "github" } @@ -76,16 +76,16 @@ ] }, "locked": { - "lastModified": 1772129556, - "narHash": "sha256-Utk0zd8STPsUJPyjabhzPc5BpPodLTXrwkpXBHYnpeg=", + "lastModified": 1781772065, + "narHash": "sha256-xIbRSwDB1GBAUsWsQZUjudGfAGQt3BOpsWaO/ugVa4w=", "owner": "LnL7", "repo": "nix-darwin", - "rev": "ebec37af18215214173c98cf6356d0aca24a2585", + "rev": "adda04f0bf4819575b1978c2f8d78401b3c2be12", "type": "github" }, "original": { "owner": "LnL7", - "ref": "nix-darwin-25.11", + "ref": "nix-darwin-26.05", "repo": "nix-darwin", "type": "github" } @@ -112,43 +112,43 @@ }, "nixpkgs": { "locked": { - "lastModified": 1772822230, - "narHash": "sha256-yf3iYLGbGVlIthlQIk5/4/EQDZNNEmuqKZkQssMljuw=", + "lastModified": 1782375420, + "narHash": "sha256-wiPYmEuHbJvleW489n6+lamL7JSJg3pcKUYwURU9CkI=", "owner": "nixos", "repo": "nixpkgs", - "rev": "71caefce12ba78d84fe618cf61644dce01cf3a96", + "rev": "4062d36ebeae843c750011eef6b61ec9a9dbc9a9", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-25.11", + "ref": "nixos-26.05", "repo": "nixpkgs", "type": "github" } }, "nixpkgs-darwin": { "locked": { - "lastModified": 1766129819, - "narHash": "sha256-crNRwvsbH2XSV8IwBjX6Tm+uWmYwhYyRuNVJ9/ZwlmA=", + "lastModified": 1782185013, + "narHash": "sha256-MMIaAyu3HWrWUBTWEGjhSw3CxfAOVfgqdWv4hcx/+Fs=", "owner": "nixos", "repo": "nixpkgs", - "rev": "eedcb27bf99430e51f83d896cd1149b828290d20", + "rev": "9a54db6898b38a6beded82ce6890b46a0a517d72", "type": "github" }, "original": { "owner": "nixos", + "ref": "nixpkgs-26.05-darwin", "repo": "nixpkgs", - "rev": "eedcb27bf99430e51f83d896cd1149b828290d20", "type": "github" } }, "nixpkgs-unstable": { "locked": { - "lastModified": 1772771118, - "narHash": "sha256-xWzaTvmmACR/SRWtABgI/Z97lcqwJAeoSd5QW1KdK1s=", + "lastModified": 1782175435, + "narHash": "sha256-EMzXKmnOtBQ2MnvpiNOm7E+kOMvdPrIKaeg52Tip2Uk=", "owner": "nixos", "repo": "nixpkgs", - "rev": "e38213b91d3786389a446dfce4ff5a8aaf6012f2", + "rev": "89570f24e97e614aa34aa9ab1c927b6578a43775", "type": "github" }, "original": { @@ -166,11 +166,11 @@ ] }, "locked": { - "lastModified": 1773029295, - "narHash": "sha256-xmHhVHbaA5hR3dCEoGwqAgL6HTTJ0KEMRUTLdJuVtGM=", + "lastModified": 1782590177, + "narHash": "sha256-TkFqACbfUwWeD00ROAXNhxI2wflPP2poUOLeeq60bRg=", "owner": "nix-community", "repo": "NUR", - "rev": "bf45b24de2134f1488f7a6c135f4b0420ccec6fe", + "rev": "ed5872eecf655379bfe46debce7182956b9ad080", "type": "github" }, "original": { @@ -189,11 +189,11 @@ ] }, "locked": { - "lastModified": 1772361940, - "narHash": "sha256-B1Cz+ydL1iaOnGlwOFld/C8lBECPtzhiy/pP93/CuyY=", + "lastModified": 1775856943, + "narHash": "sha256-b7Mp7P+q2Md5AGt4rjHfMcBykzMumFTen10ST++AuTU=", "owner": "nix-community", "repo": "plasma-manager", - "rev": "a4b33606111c9c5dcd10009042bb710307174f51", + "rev": "a524a6160e6df89f7673ba293cf7d78b559eb1a5", "type": "github" }, "original": { @@ -204,11 +204,11 @@ }, "quadlet-nix": { "locked": { - "lastModified": 1770606362, - "narHash": "sha256-6pOOPOQr4rtgShBtkLkSDTql5rRqcUgTRz8O+axK2eM=", + "lastModified": 1782004439, + "narHash": "sha256-OANOcPKJ3JThp2x/ccz4DDrGDY2hIgM5SBLI51swgfI=", "owner": "SEIAROTg", "repo": "quadlet-nix", - "rev": "f4ae60350ea6015b6560cbd0e1f11f7e195c993d", + "rev": "f1652b490b812c4e0b2a36565cdbedf87f35e438", "type": "github" }, "original": { @@ -240,11 +240,11 @@ }, "locked": { "dir": "pkgs/firefox-addons", - "lastModified": 1773028978, - "narHash": "sha256-4BjOTYhHP8ljHShQyZ1gUIdwgSLjvaGN2ueKfqp6CQk=", + "lastModified": 1782532968, + "narHash": "sha256-nRE0OA58F9UtlZkAzfggrLfTcXhqvP89pE5CCIgujBk=", "owner": "rycee", "repo": "nur-expressions", - "rev": "a6ed037ffc0b50a9bd0c92e20e31f270a03ca1e3", + "rev": "06aa41fb8e537b83fab322ff2c9444ecc5bbe720", "type": "gitlab" }, "original": { diff --git a/flake.nix b/flake.nix index 65412b6..43caddc 100644 --- a/flake.nix +++ b/flake.nix @@ -3,10 +3,8 @@ inputs = { # Specify the source of Home Manager and Nixpkgs. - nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; - # Revert to a cached version of Julia for aarch64-darwin - nixpkgs-darwin.url = - "github:nixos/nixpkgs/eedcb27bf99430e51f83d896cd1149b828290d20"; + nixpkgs.url = "github:nixos/nixpkgs/nixos-26.05"; + nixpkgs-darwin.url = "github:nixos/nixpkgs/nixpkgs-26.05-darwin"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixpkgs-unstable"; # Inputs for both darwin and linux systems @@ -19,7 +17,7 @@ }; }; home-manager = { - url = "github:nix-community/home-manager/release-25.11"; + url = "github:nix-community/home-manager/release-26.05"; inputs.nixpkgs.follows = "nixpkgs"; }; nur = { @@ -43,7 +41,7 @@ # Darwin-specific inputs nix-darwin = { - url = "github:LnL7/nix-darwin/nix-darwin-25.11"; + url = "github:LnL7/nix-darwin/nix-darwin-26.05"; inputs.nixpkgs.follows = "nixpkgs-darwin"; }; nix-rosetta-builder = { diff --git a/homes/common.nix b/homes/common.nix index 389c618..4f55d6f 100644 --- a/homes/common.nix +++ b/homes/common.nix @@ -32,7 +32,7 @@ most p7zip pdfgrep - pipx + # pipx python3 ]; sessionVariables = { diff --git a/homes/desktop.nix b/homes/desktop.nix index 37cdec8..fa3d500 100644 --- a/homes/desktop.nix +++ b/homes/desktop.nix @@ -22,7 +22,7 @@ nerd-fonts.symbols-only nil nixd - nixfmt-classic + nixfmt nixos-rebuild quarto roboto-slab diff --git a/homes/linux-desktop.nix b/homes/linux-desktop.nix index 8d25100..6447c0d 100644 --- a/homes/linux-desktop.nix +++ b/homes/linux-desktop.nix @@ -6,7 +6,7 @@ in { imports = [ ./../programs/plasma.nix ]; home = { - packages = with pkgs; [ kwalletcli sqlitebrowser custom-pkgs.sc4pac ]; + packages = with pkgs; [ sqlitebrowser custom-pkgs.sc4pac ]; sessionVariables = { ZED_WINDOW_DECORATIONS = "server"; }; }; services = { @@ -14,7 +14,7 @@ in { # Use kwallet cli, but put it in extraConfig, otherwise gpg-agent will # ask the cli for the password, instead of asking the pinentry package for it extraConfig = '' - pinentry-program ${pkgs.kwalletcli}/bin/pinentry-kwallet + pinentry-program /usr/bin/pinentry-qt ''; }; }; diff --git a/programs/firefox.nix b/programs/firefox.nix index e14e27a..0dfac84 100644 --- a/programs/firefox.nix +++ b/programs/firefox.nix @@ -1,8 +1,9 @@ -{ pkgs, firefox-addons, buildFirefoxXpiAddon, lib, ... }: { +{ pkgs, config, firefox-addons, buildFirefoxXpiAddon, lib, ... }: { programs.firefox = { enable = true; package = null; # Use native package manager/Homebrew b/c there are fewer breakages + configPath = "${config.xdg.configHome}/mozilla/firefox"; nativeMessagingHosts = [ ]; profileVersion = null; profiles = { diff --git a/programs/neovim.nix b/programs/neovim.nix index 39e6645..205406d 100644 --- a/programs/neovim.nix +++ b/programs/neovim.nix @@ -4,6 +4,8 @@ package = pkgs.neovim-unwrapped; defaultEditor = true; coc.enable = true; + withRuby = false; + withPython3 = false; plugins = with pkgs.vimPlugins; [ mason-nvim mason-lspconfig-nvim @@ -16,7 +18,7 @@ lspsaga-nvim vim-slime ]; - extraLuaConfig = '' + initLua = '' require("mason").setup() ''; }; diff --git a/programs/ssh.nix b/programs/ssh.nix index a094d44..c386574 100644 --- a/programs/ssh.nix +++ b/programs/ssh.nix @@ -1,57 +1,57 @@ { pkgs, lib, config, hostname, ... }: let sshIdPath = host: "~/.ssh/id_ed25519__${host}"; - tailnetConfig = host: { identityFile = sshIdPath host; }; - gitConfig = host: tailnetConfig host // { user = "git"; }; + tailnetConfig = host: { IdentityFile = sshIdPath host; }; + gitConfig = host: tailnetConfig host // { User = "git"; }; tailnetHosts = [ "anderson" "mcentire" "bosephus" ]; gitHosts = [ "github.com" "gitlab.com" "codeberg.org" "code.millironx.com" ]; tailnetMatchBlocks = lib.genAttrs (lib.lists.remove hostname tailnetHosts) tailnetConfig; gitMatchBlocks = lib.genAttrs gitHosts gitConfig // { "code.millironx.com" = (gitConfig "code.millironx.com") // { - proxyCommand = "ssh anderson -W localhost:2222"; - hostname = "code.millironx.com"; + ProxyCommand = "ssh anderson -W localhost:2222"; + HostName = "code.millironx.com"; }; }; in { programs.ssh = { enable = true; enableDefaultConfig = false; - matchBlocks = { - "*" = { identitiesOnly = true; }; + settings = { + "*" = { IdentitiesOnly = true; }; "aahz" = { - hostname = "nistac-108-37.dhcp.ksu.edu"; - user = "tchristensen"; - identityFile = sshIdPath "aahz"; + HostName = "nistac-108-37.dhcp.ksu.edu"; + User = "tchristensen"; + IdentityFile = sshIdPath "aahz"; }; "skeeve" = { - hostname = "129.130.108.157"; - user = "tchristensen"; - identityFile = sshIdPath "skeeve"; + HostName = "129.130.108.157"; + User = "tchristensen"; + IdentityFile = sshIdPath "skeeve"; }; "ceres" = { - hostname = "ceres.scinet.usda.gov"; - user = "thomas.christensen"; - identitiesOnly = false; - serverAliveInterval = 20; - serverAliveCountMax = 30; - extraOptions = { TCPKeepAlive = "yes"; }; + HostName = "ceres.scinet.usda.gov"; + User = "thomas.christensen"; + IdentitiesOnly = false; + ServerAliveInterval = 20; + ServerAliveCountMax = 30; + TCPKeepAlive = "yes"; }; "atlas" = { - hostname = "Atlas-login-1.hpc.msstate.edu"; - user = "thomas.christensen"; - identitiesOnly = false; - serverAliveInterval = 20; - serverAliveCountMax = 30; - extraOptions = { TCPKeepAlive = "yes"; }; + HostName = "Atlas-login-1.hpc.msstate.edu"; + User = "thomas.christensen"; + IdentitiesOnly = false; + ServerAliveInterval = 20; + ServerAliveCountMax = 30; + TCPKeepAlive = "yes"; }; "atlas-dtn" = { - hostname = "Atlas-dtn.hpc.msstate.edu"; - user = "thomas.christensen"; - identitiesOnly = false; + HostName = "Atlas-dtn.hpc.msstate.edu"; + User = "thomas.christensen"; + IdentitiesOnly = false; }; "code.millironx.com" = { - proxyCommand = "ssh anderson -W localhost:2222"; + ProxyCommand = "ssh anderson -W localhost:2222"; }; } // tailnetMatchBlocks // gitMatchBlocks; }; diff --git a/programs/zed.nix b/programs/zed.nix index 639bd20..d2dba9e 100644 --- a/programs/zed.nix +++ b/programs/zed.nix @@ -65,9 +65,7 @@ }; }; }; - Nix = { - formatter.external.command = "${pkgs.nixfmt-classic}/bin/nixfmt"; - }; + Nix = { formatter.external.command = "${pkgs.nixfmt}/bin/nixfmt"; }; }; lsp = { nil = { settings.nix.flake.autoArchive = true; }; diff --git a/services/jellyfin.nix b/services/jellyfin.nix index b44da89..900a71a 100644 --- a/services/jellyfin.nix +++ b/services/jellyfin.nix @@ -1,13 +1,9 @@ -{ pkgs, lib, config, ... }: let - driver-name = "iHD"; in -{ +{ pkgs, lib, config, ... }: +let driver-name = "iHD"; +in { environment = { sessionVariables.LIBVA_DRIVER_NAME = driver-name; - systemPackages = with pkgs; [ - jellyfin - jellyfin-web - jellyfin-ffmpeg - ]; + systemPackages = with pkgs; [ jellyfin jellyfin-web jellyfin-ffmpeg ]; }; hardware.graphics = { @@ -15,13 +11,13 @@ extraPackages = with pkgs; [ intel-ocl intel-media-driver + intel-compute-runtime-legacy1 ]; }; # Allow the unfree drivers - nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ - "intel-ocl" - ]; + nixpkgs.config.allowUnfreePredicate = pkg: + builtins.elem (lib.getName pkg) [ "intel-ocl" ]; services.jellyfin = { enable = true; @@ -30,5 +26,6 @@ systemd.services.jellyfin.environment.LIBVA_DRIVER_NAME = driver-name; - users.users.${config.services.jellyfin.user}.extraGroups = [ "mixstudios" "render" ]; + users.users.${config.services.jellyfin.user}.extraGroups = + [ "mixstudios" "render" ]; }