Compare commits
4 commits
bad19362f0
...
f1216bc9ad
Author | SHA1 | Date | |
---|---|---|---|
f1216bc9ad | |||
13e52cb27e | |||
7c04159aa9 | |||
ccf29ce98f |
4 changed files with 55 additions and 17 deletions
38
flake.lock
generated
38
flake.lock
generated
|
@ -192,6 +192,22 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs_4": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1751741127,
|
||||||
|
"narHash": "sha256-t75Shs76NgxjZSgvvZZ9qOmz5zuBE8buUaYD28BMTxg=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "29e290002bfff26af1db6f64d070698019460302",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-25.05",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"pre-commit-hooks-nix": {
|
"pre-commit-hooks-nix": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": [
|
"flake-compat": [
|
||||||
|
@ -226,7 +242,8 @@
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"secrets": "secrets",
|
"secrets": "secrets",
|
||||||
"sops-nix": "sops-nix"
|
"sops-nix": "sops-nix",
|
||||||
|
"webone": "webone"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"rust-overlay": {
|
"rust-overlay": {
|
||||||
|
@ -284,6 +301,25 @@
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"webone": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs_4"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1752022159,
|
||||||
|
"narHash": "sha256-WFkQ1WA+BRLuwfmh6uMym3IoUSXOu2sSM5XzalsLeUQ=",
|
||||||
|
"owner": "firewalkwithm3",
|
||||||
|
"repo": "webone",
|
||||||
|
"rev": "256f5e115ceffb71fd2d61e0c7cb9b6b55c7571a",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "firewalkwithm3",
|
||||||
|
"repo": "webone",
|
||||||
|
"rev": "256f5e115ceffb71fd2d61e0c7cb9b6b55c7571a",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": "root",
|
"root": "root",
|
||||||
|
|
23
flake.nix
23
flake.nix
|
@ -12,9 +12,10 @@
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
# Updated packages.
|
# Packages.
|
||||||
fluffychat2.url = "github:NixOS/nixpkgs?ref=pull/419632/head"; # FluffyChat 2.0.0
|
fluffychat2.url = "github:NixOS/nixpkgs?ref=pull/419632/head"; # FluffyChat 2.0.0
|
||||||
feishin0_17.url = "github:NixOS/nixpkgs?ref=pull/414929/head"; # Feishin 0.17.0
|
feishin0_17.url = "github:NixOS/nixpkgs?ref=pull/414929/head"; # Feishin 0.17.0
|
||||||
|
webone.url = "github:firewalkwithm3/webone?rev=256f5e115ceffb71fd2d61e0c7cb9b6b55c7571a"; # WebOne HTTP proxy.
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs =
|
outputs =
|
||||||
|
@ -34,7 +35,7 @@
|
||||||
{
|
{
|
||||||
hostname,
|
hostname,
|
||||||
suite,
|
suite,
|
||||||
platform,
|
platform ? "x86_64-linux",
|
||||||
user ? "fern",
|
user ? "fern",
|
||||||
extraModules ? [ ],
|
extraModules ? [ ],
|
||||||
}:
|
}:
|
||||||
|
@ -42,17 +43,20 @@
|
||||||
system = platform;
|
system = platform;
|
||||||
|
|
||||||
specialArgs = {
|
specialArgs = {
|
||||||
inherit user;
|
inherit hostname suite platform user; # Inherit variables.
|
||||||
secrets = builtins.toString inputs.secrets;
|
secrets = builtins.toString inputs.secrets; # Secrets directory.
|
||||||
fluffychat2 = import fluffychat2 { inherit system; };
|
# Packages
|
||||||
feishin0_17 = import feishin0_17 { inherit system; };
|
userPkgs = {
|
||||||
|
fluffychat = fluffychat2.legacyPackages.${system}.fluffychat;
|
||||||
|
feishin = feishin0_17.legacyPackages.${system}.feishin;
|
||||||
|
webone = webone.packages.${system}.default;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
modules = [
|
modules = [
|
||||||
./suites/common.nix
|
./suites/common.nix
|
||||||
./suites/${suite}.nix
|
./suites/${suite}.nix
|
||||||
./hosts/${suite}/${hostname}.nix
|
./hosts/${suite}/${hostname}.nix
|
||||||
{ networking.hostName = hostname; }
|
|
||||||
] ++ extraModules;
|
] ++ extraModules;
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
|
@ -62,7 +66,6 @@
|
||||||
muskduck = mkHost {
|
muskduck = mkHost {
|
||||||
hostname = "muskduck";
|
hostname = "muskduck";
|
||||||
suite = "laptop";
|
suite = "laptop";
|
||||||
platform = "x86_64-linux";
|
|
||||||
extraModules = [
|
extraModules = [
|
||||||
lanzaboote.nixosModules.lanzaboote
|
lanzaboote.nixosModules.lanzaboote
|
||||||
nixos-hardware.nixosModules.lenovo-thinkpad-t480
|
nixos-hardware.nixosModules.lenovo-thinkpad-t480
|
||||||
|
@ -85,27 +88,23 @@
|
||||||
hostname = "docker";
|
hostname = "docker";
|
||||||
suite = "vm";
|
suite = "vm";
|
||||||
user = "docker";
|
user = "docker";
|
||||||
platform = "x86_64-linux";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
vm-minecraft = mkHost {
|
vm-minecraft = mkHost {
|
||||||
hostname = "minecraft";
|
hostname = "minecraft";
|
||||||
suite = "vm";
|
suite = "vm";
|
||||||
user = "docker";
|
user = "docker";
|
||||||
platform = "x86_64-linux";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# LXC containers.
|
# LXC containers.
|
||||||
lxc-technitium = mkHost {
|
lxc-technitium = mkHost {
|
||||||
hostname = "technitium";
|
hostname = "technitium";
|
||||||
suite = "lxc";
|
suite = "lxc";
|
||||||
platform = "x86_64-linux";
|
|
||||||
};
|
};
|
||||||
|
|
||||||
lxc-firefox-syncserver = mkHost {
|
lxc-firefox-syncserver = mkHost {
|
||||||
hostname = "firefox-syncserver";
|
hostname = "firefox-syncserver";
|
||||||
suite = "lxc";
|
suite = "lxc";
|
||||||
platform = "x86_64-linux";
|
|
||||||
extraModules = [
|
extraModules = [
|
||||||
sops-nix.nixosModules.sops
|
sops-nix.nixosModules.sops
|
||||||
];
|
];
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
lib,
|
lib,
|
||||||
|
hostname,
|
||||||
user,
|
user,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
|
@ -48,6 +49,9 @@ with lib;
|
||||||
# Enable networking.
|
# Enable networking.
|
||||||
networking.networkmanager.enable = true;
|
networking.networkmanager.enable = true;
|
||||||
|
|
||||||
|
# Set hostname
|
||||||
|
networking.hostName = hostname;
|
||||||
|
|
||||||
# Define a user account.
|
# Define a user account.
|
||||||
users.users.${user} = {
|
users.users.${user} = {
|
||||||
isNormalUser = true;
|
isNormalUser = true;
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
|
userPkgs,
|
||||||
lib,
|
lib,
|
||||||
feishin0_17,
|
|
||||||
fluffychat2,
|
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib;
|
with lib;
|
||||||
|
@ -110,7 +109,7 @@ with lib;
|
||||||
caligula
|
caligula
|
||||||
celluloid
|
celluloid
|
||||||
discord
|
discord
|
||||||
feishin0_17.feishin
|
userPkgs.feishin
|
||||||
ghostty
|
ghostty
|
||||||
gimp3
|
gimp3
|
||||||
glabels-qt
|
glabels-qt
|
||||||
|
@ -138,7 +137,7 @@ with lib;
|
||||||
})
|
})
|
||||||
|
|
||||||
# FluffyChat 2.0.0 with fixed desktop item.
|
# FluffyChat 2.0.0 with fixed desktop item.
|
||||||
(fluffychat2.fluffychat.overrideAttrs (
|
(userPkgs.fluffychat.overrideAttrs (
|
||||||
finalAttrs: previousAttrs: {
|
finalAttrs: previousAttrs: {
|
||||||
desktopItems = [
|
desktopItems = [
|
||||||
((builtins.elemAt previousAttrs.desktopItems 0).override { startupWMClass = "fluffychat"; })
|
((builtins.elemAt previousAttrs.desktopItems 0).override { startupWMClass = "fluffychat"; })
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue