Nice config structure changes
Some checks failed
/ check (push) Failing after 12s

This commit is contained in:
Daniel Flanagan 2025-02-16 09:12:42 -06:00
parent e01a554b18
commit aa128e65fa
6 changed files with 661 additions and 615 deletions

95
flake.lock generated
View file

@ -22,11 +22,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1736165297, "lastModified": 1739582867,
"narHash": "sha256-OT+sF4eNDFN/OdyUfIQwyp28+CFQL7PAdWn0wGU7F0U=", "narHash": "sha256-rO528HmsiPi3RO9kZdYt0NnzN3pxpXz33m6H/sIFgzI=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "76816af65d5294761636a838917e335992a52e0c", "rev": "4edb87a2ac9010da6fea50fc56d67e123fca85f4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -39,11 +39,11 @@
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1696426674, "lastModified": 1733328505,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -89,11 +89,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1705309234, "lastModified": 1731533236,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide", "owner": "numtide",
"repo": "flake-utils", "repo": "flake-utils",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -123,20 +123,22 @@
"ghostty": { "ghostty": {
"inputs": { "inputs": {
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
"flake-utils": "flake-utils",
"nixpkgs-stable": [ "nixpkgs-stable": [
"nixpkgs" "nixpkgs"
], ],
"nixpkgs-unstable": [ "nixpkgs-unstable": [
"nixpkgs-unstable" "nixpkgs-unstable"
], ],
"zig": "zig" "zig": "zig",
"zig2nix": "zig2nix"
}, },
"locked": { "locked": {
"lastModified": 1739143498, "lastModified": 1739595470,
"narHash": "sha256-85TvsfDdOBfthR44rRJV9KXpj415StJqVyq+BBlLCvM=", "narHash": "sha256-+t87M/reiRbE+E1CM6hswNbq3aDTZKfJVQz3L8JLl/s=",
"owner": "ghostty-org", "owner": "ghostty-org",
"repo": "ghostty", "repo": "ghostty",
"rev": "a3e462bbba724bcf312fcd5edd12bb5e0251c853", "rev": "f1f1120749b7494c89689d993d5a893c27c236a5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -154,11 +156,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1735882644, "lastModified": 1737465171,
"narHash": "sha256-3FZAG+pGt3OElQjesCAWeMkQ7C/nB1oTHLRQ8ceP110=", "narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "a5a961387e75ae44cc20f0a57ae463da5e959656", "rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -259,11 +261,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1738256342, "lastModified": 1739457098,
"narHash": "sha256-P3t/QQgBUqmnjAQXds3qfKbcn5vULJXbx4eezlYF9Zs=", "narHash": "sha256-a4zUQTpHagz1Kb3kLxcflsiF05FsHlrzXEuCjbzjAOM=",
"owner": "helix-editor", "owner": "helix-editor",
"repo": "helix", "repo": "helix",
"rev": "d285a8a9e5e2e9c0576c21a7bdc5e439b80a636c", "rev": "7275b7f85014aad7e15d4987ec4f2249572eecfb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -280,11 +282,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1735344290, "lastModified": 1739570999,
"narHash": "sha256-oJDtWPH1oJT34RJK1FSWjwX4qcGOBRkcNQPD0EbSfNM=", "narHash": "sha256-eCc0/Q4bPpe4/AS+uzIrHLJcR6BxPQ69q2kD0/Qe6rU=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "613691f285dad87694c2ba1c9e6298d04736292d", "rev": "254d47082e23dbf72fdeca1da6fe1da420f478d8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -301,11 +303,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1736089250, "lastModified": 1739571712,
"narHash": "sha256-/LPWMiiJGPHGd7ZYEgmbE2da4zvBW0acmshUjYC3WG4=", "narHash": "sha256-0UdSDV/TBY+GuxXLbrLq3l2Fq02ciyKCIMy4qmnfJXQ=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "172b91bfb2b7f5c4a8c6ceac29fd53a01ef07196", "rev": "6d3163aea47fdb1fe19744e91306a2ea4f602292",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -446,11 +448,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1736064798, "lastModified": 1739262228,
"narHash": "sha256-xJRN0FmX9QJ6+w8eIIIxzBU1AyQcLKJ1M/Gp6lnSD20=", "narHash": "sha256-7JAGezJ0Dn5qIyA2+T4Dt/xQgAbhCglh6lzCekTVMeU=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "5dc08f9cc77f03b43aacffdfbc8316807773c930", "rev": "07af005bb7d60c7f118d9d9f5530485da5d1e975",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -494,18 +496,21 @@
"flake-compat": [ "flake-compat": [
"ghostty" "ghostty"
], ],
"flake-utils": "flake-utils", "flake-utils": [
"ghostty",
"flake-utils"
],
"nixpkgs": [ "nixpkgs": [
"ghostty", "ghostty",
"nixpkgs-stable" "nixpkgs-stable"
] ]
}, },
"locked": { "locked": {
"lastModified": 1717848532, "lastModified": 1738239110,
"narHash": "sha256-d+xIUvSTreHl8pAmU1fnmkfDTGQYCn2Rb/zOwByxS2M=", "narHash": "sha256-Y5i9mQ++dyIQr+zEPNy+KIbc5wjPmfllBrag3cHZgcE=",
"owner": "mitchellh", "owner": "mitchellh",
"repo": "zig-overlay", "repo": "zig-overlay",
"rev": "02fc5cc555fc14fda40c42d7c3250efa43812b43", "rev": "1a8fb6f3a04724519436355564b95fce5e272504",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -513,6 +518,32 @@
"repo": "zig-overlay", "repo": "zig-overlay",
"type": "github" "type": "github"
} }
},
"zig2nix": {
"inputs": {
"flake-utils": [
"ghostty",
"flake-utils"
],
"nixpkgs": [
"ghostty",
"nixpkgs-stable"
]
},
"locked": {
"lastModified": 1738263917,
"narHash": "sha256-j/3fwe2pEOquHabP/puljOKwAZFjIE9gXZqA91sC48M=",
"owner": "jcollie",
"repo": "zig2nix",
"rev": "c311d8e77a6ee0d995f40a6e10a89a3a4ab04f9a",
"type": "github"
},
"original": {
"owner": "jcollie",
"ref": "c311d8e77a6ee0d995f40a6e10a89a3a4ab04f9a",
"repo": "zig2nix",
"type": "github"
}
} }
}, },
"root": "root", "root": "root",

View file

@ -34,6 +34,8 @@ in
*/ */
]; ];
programs.zellij.enable = true;
programs.bat = { programs.bat = {
enable = true; enable = true;
config = { config = {
@ -206,11 +208,20 @@ in
desktop = desktop =
{ config, lib, ... }: { config, lib, ... }:
{ {
config = lib.mkIf config.lyte.desktop {
imports = with homeManagerModules; [ imports = with homeManagerModules; [
firefox firefox
ghostty ghostty
]; ];
options = {
lyte = {
desktop = {
enable = lib.mkEnableOption "Enable my default desktop configuration and applications";
};
};
};
config = lib.mkIf config.lyte.desktop.enable {
programs.firefox.enable = true;
programs.ghostty.enable = true;
}; };
}; };
@ -1247,6 +1258,9 @@ in
... ...
}: }:
{ {
# options = {
# };
config = lib.mkIf config.programs.ghostty.enable {
home.packages = with pkgs; [ home.packages = with pkgs; [
ghostty ghostty
]; ];
@ -1255,14 +1269,16 @@ in
source = config.lib.file.mkOutOfStoreSymlink /etc/nix/flake/modules/home-manager/ghostty; source = config.lib.file.mkOutOfStoreSymlink /etc/nix/flake/modules/home-manager/ghostty;
}; };
}; };
};
zellij = zellij =
{ lib, ... }: { config, lib, ... }:
{ {
config = lib.mkIf config.programs.zellij.enable {
# zellij does not support modern terminal keyboard input: # zellij does not support modern terminal keyboard input:
# https://github.com/zellij-org/zellij/issues/735 # https://github.com/zellij-org/zellij/issues/735
programs.zellij = { programs.zellij = {
enable = true; # enable = true;
# This causes fish to start zellij immediately # This causes fish to start zellij immediately
# enableFishIntegration = true; # enableFishIntegration = true;
@ -1764,6 +1780,7 @@ in
z = "zellij"; z = "zellij";
}; };
}; };
};
sshconfig = { sshconfig = {
programs.ssh = { programs.ssh = {

View file

@ -1,5 +1,11 @@
{ pkgs, ... }:
{ {
lib,
config,
pkgs,
...
}:
{
config = lib.mkIf config.programs.firefox.enable {
home = { home = {
sessionVariables = { sessionVariables = {
MOZ_ENABLE_WAYLAND = "1"; MOZ_ENABLE_WAYLAND = "1";
@ -7,7 +13,7 @@
}; };
programs.firefox = { programs.firefox = {
enable = true; # enable = true;
profileVersion = null; profileVersion = null;
package = pkgs.firefox.override { package = pkgs.firefox.override {
nativeMessagingHosts = with pkgs; [ bitwarden ]; nativeMessagingHosts = with pkgs; [ bitwarden ];
@ -15,6 +21,7 @@
/* /*
TODO: this should be able to work on macos, no? TODO: this should be able to work on macos, no?
TODO: enable color scheme/theme by default TODO: enable color scheme/theme by default
TODO: extensions and their config/sync?
*/ */
profiles = { profiles = {
daniel = { daniel = {
@ -59,4 +66,5 @@
}; };
}; };
}; };
};
} }

View file

@ -65,11 +65,6 @@ in
# TODO: modularize # TODO: modularize
{ pkgs, ... }: { pkgs, ... }:
{ {
imports = with nixosModules; [
family-users
wifi
];
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
acpi acpi
]; ];
@ -274,7 +269,7 @@ in
{ pkgs, ... }: { pkgs, ... }:
{ {
imports = with nixosModules; [ imports = with nixosModules; [
# lutris # use the flatpak lutris # TODO: use the flatpak?
steam # TODO: use the flatpak? steam # TODO: use the flatpak?
]; ];
@ -508,7 +503,7 @@ in
}; };
}; };
config = lib.mkIf cfg.enable { config = lib.mkIf cfg.enable {
services.xserver.desktopManager.gnome.enable = true; # services.xserver.desktopManager.gnome.enable = true;
xdg.portal.enable = true; xdg.portal.enable = true;

View file

@ -50,7 +50,6 @@ let
config = { config = {
lyte.shell.enable = lib.mkDefault true; lyte.shell.enable = lib.mkDefault true;
lyte.desktop.enable = lib.mkDefault false;
nixpkgs = { nixpkgs = {
config.allowUnfree = lib.mkDefault true; config.allowUnfree = lib.mkDefault true;
@ -71,22 +70,23 @@ let
config.lyte = config.lyte; config.lyte = config.lyte;
}; };
sharedModules = with self.outputs.homeManagerModules; [
common
linux
];
users = { users = {
# root = { root = {
# home.stateVersion = lib.mkDefault config.system.stateVersion; home.stateVersion = lib.mkDefault config.system.stateVersion;
# imports = with self.outputs.homeManagerModules; [ imports = with self.outputs.homeManagerModules; [
# common ];
# linux };
# ]; daniel = {
# }; home.stateVersion = lib.mkDefault config.system.stateVersion;
# daniel = { imports = with self.outputs.homeManagerModules; [
# home.stateVersion = lib.mkDefault config.system.stateVersion; daniel
# imports = with self.outputs.homeManagerModules; [ ];
# common };
# linux
# daniel
# ];
# };
}; };
}; };

View file

@ -6,11 +6,9 @@
... ...
}: }:
{ {
# nix boilerplate
system.stateVersion = "24.11"; system.stateVersion = "24.11";
networking.hostName = "dragon"; networking.hostName = "dragon";
# kernel and bootloader configuration
boot = { boot = {
kernelPackages = pkgs.linuxPackages_latest; kernelPackages = pkgs.linuxPackages_latest;
loader.efi.canTouchEfiVariables = true; loader.efi.canTouchEfiVariables = true;
@ -25,7 +23,6 @@
supportedFilesystems = [ "ntfs" ]; supportedFilesystems = [ "ntfs" ];
}; };
# hardware configuration
imports = with hardware; [ imports = with hardware; [
(diskoConfigurations.unencrypted { disk = "/dev/nvme0n1"; }) (diskoConfigurations.unencrypted { disk = "/dev/nvme0n1"; })
common-cpu-amd common-cpu-amd
@ -36,8 +33,6 @@
networking.wifi.enable = true; networking.wifi.enable = true;
powerManagement.cpuFreqGovernor = "performance"; powerManagement.cpuFreqGovernor = "performance";
# application and services configuration
lyte.desktop.enable = true; lyte.desktop.enable = true;
sops = { sops = {