Update to 24.05

This commit is contained in:
Chris Dombroski 2024-05-30 20:39:54 -04:00
parent 086857da17
commit e79a4fb1ee
15 changed files with 176 additions and 171 deletions

View file

@ -18,39 +18,6 @@
"type": "github"
}
},
"base16-alacritty": {
"flake": false,
"locked": {
"lastModified": 1703982197,
"narHash": "sha256-TNxKbwdiUXGi4Z4chT72l3mt3GSvOcz6NZsUH8bQU/k=",
"owner": "aarowill",
"repo": "base16-alacritty",
"rev": "c95c200b3af739708455a03b5d185d3d2d263c6e",
"type": "github"
},
"original": {
"owner": "aarowill",
"repo": "base16-alacritty",
"type": "github"
}
},
"base16-alacritty-yaml": {
"flake": false,
"locked": {
"lastModified": 1674275109,
"narHash": "sha256-Adwx9yP70I6mJrjjODOgZJjt4OPPe8gJu7UuBboXO4M=",
"owner": "aarowill",
"repo": "base16-alacritty",
"rev": "63d8ae5dfefe5db825dd4c699d0cdc2fc2c3eaf7",
"type": "github"
},
"original": {
"owner": "aarowill",
"repo": "base16-alacritty",
"rev": "63d8ae5dfefe5db825dd4c699d0cdc2fc2c3eaf7",
"type": "github"
}
},
"base16-fish": {
"flake": false,
"locked": {
@ -237,6 +204,23 @@
"type": "github"
}
},
"gnome-shell": {
"flake": false,
"locked": {
"lastModified": 1713702291,
"narHash": "sha256-zYP1ehjtcV8fo+c+JFfkAqktZ384Y+y779fzmR9lQAU=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "0d0aadf013f78a7f7f1dc984d0d812971864b934",
"type": "github"
},
"original": {
"owner": "GNOME",
"ref": "46.1",
"repo": "gnome-shell",
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
@ -244,16 +228,16 @@
]
},
"locked": {
"lastModified": 1716729592,
"narHash": "sha256-Y3bOjoh2cFBqZN0Jw1zUdyr7tjygyxl2bD/QY73GZP0=",
"lastModified": 1716736833,
"narHash": "sha256-rNObca6dm7Qs524O4st8VJH6pZ/Xe1gxl+Rx6mcWYo0=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "2c78a57c544dd19b07442350727ced097e1aa6e6",
"rev": "a631666f5ec18271e86a5cde998cba68c33d9ac6",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-23.11",
"ref": "release-24.05",
"repo": "home-manager",
"type": "github"
}
@ -275,17 +259,18 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1716633019,
"narHash": "sha256-xim1b5/HZYbWaZKyI7cn9TJCM6ewNVZnesRr00mXeS4=",
"lastModified": 1716966868,
"narHash": "sha256-I5dlFm936SkuUu9haYabEBCUPeX6EuXLT1uFkEM/lbY=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9d29cd266cebf80234c98dd0b87256b6be0af44e",
"rev": "fafeae3d248c41c6c8a2ab5e09f9e2d3de706ef8",
"type": "github"
},
"original": {
"id": "nixpkgs",
"ref": "nixos-23.11",
"type": "indirect"
"owner": "NixOS",
"ref": "nixos-24.05",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs-stable": {
@ -339,8 +324,6 @@
"stylix": {
"inputs": {
"base16": "base16",
"base16-alacritty": "base16-alacritty",
"base16-alacritty-yaml": "base16-alacritty-yaml",
"base16-fish": "base16-fish",
"base16-foot": "base16-foot",
"base16-helix": "base16-helix",
@ -348,6 +331,7 @@
"base16-tmux": "base16-tmux",
"base16-vim": "base16-vim",
"flake-compat": "flake-compat_2",
"gnome-shell": "gnome-shell",
"home-manager": [
"home-manager"
],
@ -356,16 +340,15 @@
]
},
"locked": {
"lastModified": 1716327543,
"narHash": "sha256-hQoxnofg9YqQBs/TUOX6oJAm7EEghFgaDdqK7DD+0T4=",
"lastModified": 1716895458,
"narHash": "sha256-W9Y/+K4L7JcF5xcXO4MVGQk/0DgzHrp/IjlHyLeYExY=",
"owner": "danth",
"repo": "stylix",
"rev": "3c8f033fd585835387a754160f47dab0c37ad5ae",
"rev": "5234b3d467aa803ad8d3fe898ef5673246045984",
"type": "github"
},
"original": {
"owner": "danth",
"ref": "release-23.11",
"repo": "stylix",
"type": "github"
}

168
flake.nix
View file

@ -1,15 +1,15 @@
{
description = "Chris's system configuration";
inputs = {
nixpkgs.url = "nixpkgs/nixos-23.11";
flake-utils.url = github:numtide/flake-utils;
nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.05";
flake-utils.url = "github:numtide/flake-utils";
deploy-rs = {
url = github:serokell/deploy-rs;
url = "github:serokell/deploy-rs";
inputs.utils.follows = "flake-utils";
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = github:nix-community/home-manager/release-23.11;
url = "github:nix-community/home-manager/release-24.05";
inputs.nixpkgs.follows = "nixpkgs";
};
sops-nix = {
@ -18,92 +18,102 @@
};
impermanence.url = "github:nix-community/impermanence";
stylix = {
url = "github:danth/stylix/release-23.11";
url = "github:danth/stylix";
inputs = {
nixpkgs.follows = "nixpkgs";
home-manager.follows = "home-manager";
};
};
};
outputs = inputs@{ self, nixpkgs, flake-utils, home-manager, deploy-rs, sops-nix, impermanence, stylix, ... }:
let
pkgs = import nixpkgs { system = "x86_64-linux"; };
aarch64Pkgs = import nixpkgs { system = "aarch64-linux"; };
deployAarch64Pkgs = import nixpkgs {
system = "aarch64-linux";
overlays = [
deploy-rs.overlay
(self: super: { deploy-rs = { inherit (aarch64Pkgs) deploy-rs; lib = super.deploy-rs.lib; }; })
];
};
deployPkgs = import nixpkgs {
system = "x86_64-linux";
overlays = [
deploy-rs.overlay
(self: super: { deploy-rs = { inherit (pkgs) deploy-rs; lib = super.deploy-rs.lib; }; })
];
};
in
{
nixosConfigurations = {
smolboi = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
stylix.nixosModules.stylix
impermanence.nixosModules.impermanence
./systems/smolboi/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.users.cdombroski = import ./systems/smolboi/home.nix;
}
];
};
zeus = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [ ./systems/zeus/configuration.nix ];
};
orangepihole = nixpkgs.lib.nixosSystem {
outputs = inputs@{ self, nixpkgs, flake-utils, home-manager, deploy-rs
, sops-nix, impermanence, stylix, ... }:
let
pkgs = import nixpkgs { system = "x86_64-linux"; };
aarch64Pkgs = import nixpkgs { system = "aarch64-linux"; };
deployAarch64Pkgs = import nixpkgs {
system = "aarch64-linux";
specialArgs = { inherit inputs; };
modules = [
impermanence.nixosModules.impermanence
./systems/orangepihole/configuration.nix
overlays = [
deploy-rs.overlay
(self: super: {
deploy-rs = {
inherit (aarch64Pkgs) deploy-rs;
lib = super.deploy-rs.lib;
};
})
];
};
};
deploy = {
sshUser = "root";
fastConnection = true;
nodes = {
smolboi = {
hostname = "smolboi";
profiles.system.path = deployPkgs.deploy-rs.lib.activate.nixos self.nixosConfigurations.smolboi;
deployPkgs = import nixpkgs {
system = "x86_64-linux";
overlays = [
deploy-rs.overlay
(self: super: {
deploy-rs = {
inherit (pkgs) deploy-rs;
lib = super.deploy-rs.lib;
};
})
];
};
in {
nixosConfigurations = {
smolboi = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [
stylix.nixosModules.stylix
impermanence.nixosModules.impermanence
./systems/smolboi/configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.useGlobalPkgs = true;
home-manager.users.cdombroski = import ./systems/smolboi/home.nix;
}
];
};
zeus = {
hostname = "zeus";
profiles.system.path = deployPkgs.deploy-rs.lib.activate.nixos self.nixosConfigurations.zeus;
zeus = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { inherit inputs; };
modules = [ ./systems/zeus/configuration.nix ];
};
orangepihole = {
hostname = "orangepihole";
profiles.system.path = deployAarch64Pkgs.deploy-rs.lib.activate.nixos self.nixosConfigurations.orangepihole;
orangepihole = nixpkgs.lib.nixosSystem {
system = "aarch64-linux";
specialArgs = { inherit inputs; };
modules = [
impermanence.nixosModules.impermanence
./systems/orangepihole/configuration.nix
];
};
};
};
} //
flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
deployLib = deploy-rs.lib.${system};
in
{
devShells.default = pkgs.mkShell {
buildInputs = [ pkgs.deploy-rs pkgs.sops ];
};
checks = deployLib.deployChecks self.deploy;
formatter = pkgs.nixfmt;
}
);
deploy = {
sshUser = "root";
fastConnection = true;
nodes = {
smolboi = {
hostname = "smolboi";
profiles.system.path = deployPkgs.deploy-rs.lib.activate.nixos
self.nixosConfigurations.smolboi;
};
zeus = {
hostname = "zeus";
profiles.system.path = deployPkgs.deploy-rs.lib.activate.nixos
self.nixosConfigurations.zeus;
};
orangepihole = {
hostname = "orangepihole";
profiles.system.path =
deployAarch64Pkgs.deploy-rs.lib.activate.nixos
self.nixosConfigurations.orangepihole;
};
};
};
} // flake-utils.lib.eachDefaultSystem (system:
let
pkgs = nixpkgs.legacyPackages.${system};
deployLib = deploy-rs.lib.${system};
in {
devShells.default =
pkgs.mkShell { buildInputs = [ pkgs.deploy-rs pkgs.sops ]; };
checks = deployLib.deployChecks self.deploy;
formatter = pkgs.nixfmt;
});
}

View file

@ -1,3 +1 @@
{...}: {
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
}
{ ... }: { boot.binfmt.emulatedSystems = [ "aarch64-linux" ]; }

View file

@ -1,3 +1,5 @@
{ lib, ...}: {
imports = builtins.map (n: ./common + "/${n}") (builtins.attrNames (lib.filterAttrs (k: v: v == "regular" && lib.hasSuffix ".nix" k) (builtins.readDir ./common)));
{ lib, ... }: {
imports = builtins.map (n: ./common + "/${n}") (builtins.attrNames
(lib.filterAttrs (k: v: v == "regular" && lib.hasSuffix ".nix" k)
(builtins.readDir ./common)));
}

View file

@ -1,4 +1,4 @@
{...}: {
{ ... }: {
time.timeZone = "America/New_York";
i18n.defaultLocale = "en_US.UTF-8";
programs.vim.defaultEditor = true;

View file

@ -1,5 +1,5 @@
{ config, ... }: {
sops.secrets."gmail/password" = {};
sops.secrets."gmail/password" = { };
programs.msmtp = {
enable = true;
accounts.default = {
@ -18,7 +18,7 @@
"aliases" = {
text = ''
root: cdombroski@gmail.com
'';
'';
mode = "0644";
};
};

View file

@ -1,10 +1,7 @@
{pkgs, lib, inputs, config, ...}: {
environment.systemPackages = with pkgs; [
nix-output-monitor
];
{ pkgs, lib, inputs, config, ... }: {
environment.systemPackages = with pkgs; [ nix-output-monitor ];
programs.git.enable = true;
nix = let
flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs;
nix = let flakeInputs = lib.filterAttrs (_: lib.isType "flake") inputs;
in {
settings = {
experimental-features = [ "nix-command" "flakes" ];
@ -17,13 +14,16 @@
dates = "weekly";
};
optimise.automatic = true;
registry = lib.mapAttrs (_: flake: {inherit flake;}) flakeInputs;
registry = lib.mapAttrs (_: flake: { inherit flake; }) flakeInputs;
nixPath = lib.mapAttrsToList (n: _: "${n}=flake:${n}") flakeInputs;
};
system.autoUpgrade = {
enable = true;
flake = "git+https://git.icanttype.org/cdombroski/nix-configs.git";
allowReboot = true;
rebootWindow = { lower = "02:00"; upper = "06:00"; };
rebootWindow = {
lower = "02:00";
upper = "06:00";
};
};
}

View file

@ -1,4 +1,4 @@
{ inputs, ... } : {
{ inputs, ... }: {
imports = [ inputs.sops-nix.nixosModules.sops ];
sops.defaultSopsFile = ../../secrets/secret.yaml;
sops.age.sshKeyPaths = [ "/etc/ssh/ssh_host_ed25519_key" ];

View file

@ -1,7 +1,5 @@
{pkgs, sops, config, ...}: {
sops.secrets."root/password" = {
neededForUsers = true;
};
{ pkgs, sops, config, ... }: {
sops.secrets."root/password" = { neededForUsers = true; };
services.openssh.enable = true;
users.mutableUsers = false;
users.users.root = {

View file

@ -1,4 +1,4 @@
{...}: {
{ ... }: {
systemd.network.enable = true;
networking.useNetworkd = true;
services.resolved = {

View file

@ -1,4 +1,4 @@
{...}: {
{ ... }: {
services.smartd = {
enable = true;
defaults.monitored = "-a -o on -s (S/../.././02|L/../../7/04)";

View file

@ -10,7 +10,7 @@
boot.loader.grub.enable = false;
boot.loader.generic-extlinux-compatible.enable = true;
boot.loader.timeout = 1;
boot.kernelPackages = pkgs.linuxPackages_6_6;
# boot.kernelPackages = pkgs.linuxPackages_6_6;
boot.tmp.cleanOnBoot = true;
networking = {
hostName = "orangepihole"; # Define your hostname.

View file

@ -61,14 +61,12 @@
};
services = {
xserver = {
displayManager.sddm = {
enable = true;
displayManager.sddm = {
enable = true;
autoNumlock = true;
};
desktopManager.plasma5.enable = true;
autoNumlock = true;
wayland.enable = true;
};
desktopManager.plasma6.enable = true;
printing = {
enable = true;
@ -76,7 +74,8 @@
};
avahi = {
enable = true;
nssmdns = true;
nssmdns4 = true;
nssmdns6 = true;
openFirewall = true;
};
printing.cups-pdf.enable = true;
@ -200,8 +199,29 @@
};
stylix = {
image = "${pkgs.breeze-qt5.bin}/share/wallpapers/Next/contents/images_dark/2560x1440.png";
base16Scheme = "${pkgs.base16-schemes}/share/themes/solarflare.yaml";
image =
"${pkgs.breeze-qt5.bin}/share/wallpapers/Next/contents/images_dark/2560x1440.png";
base16Scheme = {
#attrSet until the new yaml is supported
scheme = "Solar Flare";
author = "Chuck Harmston (https://chuck.harmston.ch)";
base00 = "18262F";
base01 = "222E38";
base02 = "586875";
base03 = "667581";
base04 = "85939E";
base05 = "A6AFB8";
base06 = "E8E9ED";
base07 = "F5F7FA";
base08 = "EF5253";
base09 = "E66B2B";
base0A = "E4B51C";
base0B = "7CC844";
base0C = "52CBB0";
base0D = "33B5E1";
base0E = "A363D5";
base0F = "D73C9A";
};
fonts = {
serif = {
package = pkgs.noto-fonts;

View file

@ -23,7 +23,6 @@
openrgb-with-all-plugins
keepassxc
heroic
yuzu-mainline
r2modman
mangohud
hack-font
@ -81,15 +80,9 @@
systemd.user = {
services.gc = {
Service = {
Exec = "nix-collect-garbage --delete-older-than 30d";
};
};
timers.gc = {
Timer = {
OnCalendar = "weekly";
};
Service = { Exec = "nix-collect-garbage --delete-older-than 30d"; };
};
timers.gc = { Timer = { OnCalendar = "weekly"; }; };
targets.tray = {
Unit = {
Description = "System Tray";

View file

@ -286,7 +286,8 @@
};
avahi = {
enable = true;
nssmdns = true;
nssmdns4 = true;
nssmdns6 = true;
openFirewall = true;
extraServiceFiles = {
smb = ''