mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-06-15 09:35:12 -05:00
feat: changed naming convention for devices
This commit is contained in:
parent
cc77a50fc1
commit
a0e5ffb3d4
57 changed files with 351 additions and 341 deletions
46
flake.nix
46
flake.nix
|
@ -74,14 +74,14 @@
|
|||
{ config, ... }:
|
||||
{
|
||||
nixosConfigurations = {
|
||||
desktop = inputs.self.lib.mkLinuxSystem [
|
||||
./systems/desktop
|
||||
jupiter = inputs.self.lib.mkLinuxSystem [
|
||||
./systems/jupiter
|
||||
./profiles/user0
|
||||
./profiles/user1
|
||||
config.nixosModules.desktop
|
||||
config.nixosModules.jupiter
|
||||
config.nixosModules.core
|
||||
config.nixosModules.sops
|
||||
config.nixosModules.system
|
||||
config.nixosModules.mantle
|
||||
config.nixosModules.crust
|
||||
inputs.nixos-cosmic.nixosModules.default
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
inputs.lix-module.nixosModules.default
|
||||
|
@ -89,45 +89,45 @@
|
|||
inputs.sops-nix.nixosModules.sops
|
||||
inputs.nixvim.nixosModules.nixvim
|
||||
];
|
||||
fallaryn = inputs.self.lib.mkLinuxSystem [
|
||||
./systems/fallaryn
|
||||
saturn = inputs.self.lib.mkLinuxSystem [
|
||||
./systems/saturn
|
||||
./profiles/user2
|
||||
config.nixosModules.fallaryn
|
||||
config.nixosModules.saturn
|
||||
config.nixosModules.core
|
||||
config.nixosModules.sops
|
||||
config.nixosModules.system
|
||||
config.nixosModules.mantle
|
||||
config.nixosModules.crust
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
inputs.lix-module.nixosModules.default
|
||||
inputs.sops-nix.nixosModules.sops
|
||||
];
|
||||
laptop = inputs.self.lib.mkLinuxSystem [
|
||||
./systems/laptop
|
||||
ganymede = inputs.self.lib.mkLinuxSystem [
|
||||
./systems/ganymede
|
||||
./profiles/user0
|
||||
./profiles/user1
|
||||
config.nixosModules.laptop
|
||||
config.nixosModules.ganymede
|
||||
config.nixosModules.core
|
||||
config.nixosModules.sops
|
||||
config.nixosModules.system
|
||||
config.nixosModules.mantle
|
||||
config.nixosModules.crust
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
inputs.lix-module.nixosModules.default
|
||||
inputs.nur.modules.nixos.default
|
||||
inputs.sops-nix.nixosModules.sops
|
||||
];
|
||||
bartholomew = inputs.self.lib.mkLinuxSystem [
|
||||
./systems/bartholomew
|
||||
callisto = inputs.self.lib.mkLinuxSystem [
|
||||
./systems/callisto
|
||||
./profiles/user1
|
||||
config.nixosModules.laptop
|
||||
config.nixosModules.callisto
|
||||
config.nixosModules.core
|
||||
config.nixosModules.system
|
||||
config.nixosModules.crust
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
inputs.lix-module.nixosModules.default
|
||||
];
|
||||
server = inputs.self.lib.mkLinuxSystem [
|
||||
./systems/server
|
||||
ceres = inputs.self.lib.mkLinuxSystem [
|
||||
./systems/ceres
|
||||
./profiles/user0
|
||||
config.nixosModules.server
|
||||
config.nixosModules.ceres
|
||||
config.nixosModules.core
|
||||
config.nixosModules.sops
|
||||
config.nixosModules.mantle
|
||||
inputs.home-manager.nixosModules.home-manager
|
||||
inputs.lix-module.nixosModules.default
|
||||
inputs.ngipkgs.nixosModules."services.peertube"
|
||||
|
|
|
@ -5,8 +5,8 @@ let
|
|||
;
|
||||
in
|
||||
{
|
||||
label = "Bartholomew";
|
||||
name = "bartholomew";
|
||||
label = "Callisto";
|
||||
name = "callisto";
|
||||
sync = {
|
||||
address0 = "";
|
||||
};
|
|
@ -7,30 +7,30 @@ let
|
|||
sambaPermissions
|
||||
userIdForUser0
|
||||
;
|
||||
serverName = "server";
|
||||
serverIP = "192.168.50.140";
|
||||
serverStorageDriveName = "NAS1";
|
||||
ceresName = "ceres";
|
||||
ceresIP = "192.168.50.140";
|
||||
ceresStorageDriveName = "NAS1";
|
||||
in
|
||||
{
|
||||
label = "Server";
|
||||
name = serverName;
|
||||
label = "Ceres";
|
||||
name = ceresName;
|
||||
sync = {
|
||||
address0 = "";
|
||||
};
|
||||
ip = {
|
||||
address0 = serverIP;
|
||||
address0 = ceresIP;
|
||||
};
|
||||
boot = {
|
||||
options = ownerExclusiveReadWriteMask;
|
||||
};
|
||||
storage0 = {
|
||||
mount = "/mnt/media/${serverStorageDriveName}";
|
||||
device = "/dev/disk/by-label/${serverStorageDriveName}";
|
||||
mount = "/mnt/media/${ceresStorageDriveName}";
|
||||
device = "/dev/disk/by-label/${ceresStorageDriveName}";
|
||||
options = readWritePermissions;
|
||||
};
|
||||
samba0 = {
|
||||
mount = "/mnt/media/${serverName}";
|
||||
device = "//${serverIP}";
|
||||
mount = "/mnt/media/${ceresName}";
|
||||
device = "//${ceresIP}";
|
||||
options = sambaPermissions ++ fileModeAndDirMode ++ userIdForUser0;
|
||||
};
|
||||
}
|
|
@ -5,8 +5,8 @@ let
|
|||
;
|
||||
in
|
||||
{
|
||||
label = "Laptop";
|
||||
name = "laptop";
|
||||
label = "Ganymede";
|
||||
name = "ganymede";
|
||||
sync = {
|
||||
address0 = "";
|
||||
};
|
|
@ -6,8 +6,8 @@ let
|
|||
;
|
||||
in
|
||||
{
|
||||
label = "Desktop";
|
||||
name = "desktop";
|
||||
label = "Jupiter";
|
||||
name = "jupiter";
|
||||
sync = {
|
||||
address0 = "";
|
||||
};
|
|
@ -8,8 +8,8 @@ let
|
|||
|
||||
in
|
||||
{
|
||||
label = "Fallaryn";
|
||||
name = "fallaryn";
|
||||
label = "Saturn";
|
||||
name = "saturn";
|
||||
ip = {
|
||||
address0 = "192.168.58.104";
|
||||
};
|
|
@ -7,16 +7,16 @@ in
|
|||
flake.homeModules =
|
||||
let
|
||||
inherit (config.machines.devices)
|
||||
bartholomew
|
||||
desktop
|
||||
fallaryn
|
||||
laptop
|
||||
server
|
||||
callisto
|
||||
jupiter
|
||||
saturn
|
||||
ganymede
|
||||
ceres
|
||||
;
|
||||
inherit (config.people) user0 user1 user2;
|
||||
in
|
||||
{
|
||||
"${desktop.name}-${user0}" = {
|
||||
"${jupiter.name}-${user0}" = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
cli
|
||||
|
@ -55,7 +55,7 @@ in
|
|||
;
|
||||
};
|
||||
};
|
||||
"${desktop.name}-${user1}" = {
|
||||
"${jupiter.name}-${user1}" = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
cli
|
||||
|
@ -76,7 +76,7 @@ in
|
|||
;
|
||||
};
|
||||
};
|
||||
"${fallaryn.name}-${user2}" = {
|
||||
"${saturn.name}-${user2}" = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
cli
|
||||
|
@ -106,7 +106,7 @@ in
|
|||
;
|
||||
};
|
||||
};
|
||||
"${laptop.name}-${user0}" = {
|
||||
"${ganymede.name}-${user0}" = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
cli
|
||||
|
@ -123,7 +123,7 @@ in
|
|||
;
|
||||
};
|
||||
};
|
||||
"${laptop.name}-${user1}" = {
|
||||
"${ganymede.name}-${user1}" = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
cli
|
||||
|
@ -144,7 +144,7 @@ in
|
|||
;
|
||||
};
|
||||
};
|
||||
"${bartholomew.name}-${user1}" = {
|
||||
"${callisto.name}-${user1}" = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
cli
|
||||
|
@ -168,7 +168,7 @@ in
|
|||
;
|
||||
};
|
||||
};
|
||||
"${server.name}-${user0}" = {
|
||||
"${ceres.name}-${user0}" = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
cli
|
||||
|
|
|
@ -8,7 +8,7 @@ let
|
|||
;
|
||||
inherit (flake.config.machines.devices)
|
||||
synology
|
||||
server
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services)
|
||||
instances
|
||||
|
@ -82,7 +82,7 @@ in
|
|||
}
|
||||
{
|
||||
name = "${instances.jellyfin.label} (Local)";
|
||||
url = "http://${server.ip.address0}:${toString instances.jellyfin.ports.port1}";
|
||||
url = "http://${ceres.ip.address0}:${toString instances.jellyfin.ports.port1}";
|
||||
tags = jellyfinTags;
|
||||
keyword = instances.jellyfin.label;
|
||||
}
|
||||
|
@ -141,7 +141,7 @@ in
|
|||
}
|
||||
# {
|
||||
# name = "${instances.owncast.label} (Admin)";
|
||||
# url = "http://${server.ip.address0}:${toString instances.owncast.ports.port0}/admin";
|
||||
# url = "http://${ceres.ip.address0}:${toString instances.owncast.ports.port0}/admin";
|
||||
# tags = owncastTags;
|
||||
# keyword = instances.owncast.label;
|
||||
# }
|
||||
|
|
|
@ -8,7 +8,7 @@ let
|
|||
;
|
||||
inherit (flake.config.machines.devices)
|
||||
synology
|
||||
server
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services)
|
||||
instances
|
||||
|
@ -82,7 +82,7 @@ in
|
|||
}
|
||||
{
|
||||
name = "${instances.jellyfin.label} (Local)";
|
||||
url = "http://${server.ip.address0}:${toString instances.jellyfin.ports.port1}";
|
||||
url = "http://${ceres.ip.address0}:${toString instances.jellyfin.ports.port1}";
|
||||
tags = jellyfinTags;
|
||||
keyword = instances.jellyfin.label;
|
||||
}
|
||||
|
@ -141,7 +141,7 @@ in
|
|||
}
|
||||
# {
|
||||
# name = "${instances.owncast.label} (Admin)";
|
||||
# url = "http://${server.ip.address0}:${toString instances.owncast.ports.port0}/admin";
|
||||
# url = "http://${ceres.ip.address0}:${toString instances.owncast.ports.port0}/admin";
|
||||
# tags = owncastTags;
|
||||
# keyword = instances.owncast.label;
|
||||
# }
|
||||
|
|
|
@ -9,10 +9,10 @@ let
|
|||
devices
|
||||
;
|
||||
hostname = config.networking.hostName;
|
||||
desktop = devices.desktop.name;
|
||||
server = devices.server.name;
|
||||
fallaryn = devices.fallaryn.name;
|
||||
bartholomew = devices.bartholomew.name;
|
||||
jupiter = devices.jupiter.name;
|
||||
ceres = devices.ceres.name;
|
||||
saturn = devices.saturn.names;
|
||||
callisto = devices.callisto.name;
|
||||
in
|
||||
{
|
||||
security = {
|
||||
|
@ -24,13 +24,13 @@ in
|
|||
noPass = true;
|
||||
users = [
|
||||
(
|
||||
if hostname == desktop then
|
||||
if hostname == jupiter then
|
||||
user0
|
||||
else if hostname == server then
|
||||
else if hostname == ceres then
|
||||
user0
|
||||
else if hostname == bartholomew then
|
||||
else if hostname == callisto then
|
||||
user1
|
||||
else if hostname == fallaryn then
|
||||
else if hostname == saturn then
|
||||
user2
|
||||
else
|
||||
""
|
||||
|
|
|
@ -16,24 +16,24 @@ let
|
|||
devices
|
||||
;
|
||||
hostname = config.networking.hostName;
|
||||
desktop = devices.desktop.name;
|
||||
server = devices.server.name;
|
||||
fallaryn = devices.fallaryn.name;
|
||||
bartholomew = devices.bartholomew.name;
|
||||
jupiter = devices.jupiter.name;
|
||||
ceres = devices.ceres.name;
|
||||
saturn = devices.saturn.name;
|
||||
callisto = devices.callisto.name;
|
||||
|
||||
userLogic =
|
||||
if hostname == desktop then
|
||||
if hostname == jupiter then
|
||||
user0
|
||||
else if hostname == server then
|
||||
else if hostname == ceres then
|
||||
user0
|
||||
else if hostname == fallaryn then
|
||||
else if hostname == saturn then
|
||||
user2
|
||||
else
|
||||
"";
|
||||
in
|
||||
{
|
||||
users.users =
|
||||
if hostname == bartholomew then
|
||||
if hostname == callisto then
|
||||
{ }
|
||||
else
|
||||
{
|
||||
|
|
|
@ -4,7 +4,7 @@ let
|
|||
in
|
||||
{
|
||||
flake.nixosModules = {
|
||||
desktop = {
|
||||
jupiter = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
mullvad
|
||||
|
@ -17,7 +17,7 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
fallaryn = {
|
||||
saturn = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
plasma
|
||||
|
@ -27,7 +27,7 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
laptop = {
|
||||
ganymede = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
gnome
|
||||
|
@ -36,7 +36,7 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
server = {
|
||||
ceres = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
acme
|
||||
|
@ -51,11 +51,13 @@ in
|
|||
samba
|
||||
vaultwarden
|
||||
forgejo
|
||||
wayland
|
||||
xserver
|
||||
;
|
||||
};
|
||||
};
|
||||
|
||||
sops = {
|
||||
mantle = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
sops
|
||||
|
@ -63,7 +65,7 @@ in
|
|||
};
|
||||
};
|
||||
|
||||
system = {
|
||||
crust = {
|
||||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
hardware
|
||||
|
@ -76,8 +78,6 @@ in
|
|||
imports = builtins.attrValues {
|
||||
inherit (modules)
|
||||
core
|
||||
wayland
|
||||
xserver
|
||||
;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices)
|
||||
server
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services.instances) smtp forgejo web;
|
||||
service = forgejo;
|
||||
|
@ -96,7 +96,7 @@ in
|
|||
"bind"
|
||||
];
|
||||
depends = [
|
||||
server.storage0.mount
|
||||
ceres.storage0.mount
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices)
|
||||
server
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services.instances)
|
||||
hledger
|
||||
|
@ -54,7 +54,7 @@ in
|
|||
"bind"
|
||||
];
|
||||
depends = [
|
||||
server.storage0.mount
|
||||
ceres.storage0.mount
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
@ -4,7 +4,7 @@ let
|
|||
user0
|
||||
;
|
||||
inherit (flake.config.machines.devices)
|
||||
server
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services.instances)
|
||||
jellyfin
|
||||
|
@ -49,7 +49,7 @@ in
|
|||
"bind"
|
||||
];
|
||||
depends = [
|
||||
server.storage0.mount
|
||||
ceres.storage0.mount
|
||||
];
|
||||
};
|
||||
in
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices)
|
||||
server
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services.instances) smtp mastodon web;
|
||||
service = mastodon;
|
||||
|
@ -192,7 +192,7 @@ in
|
|||
"bind"
|
||||
];
|
||||
depends = [
|
||||
server.storage0.mount
|
||||
ceres.storage0.mount
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices)
|
||||
server
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services.instances)
|
||||
minecraft
|
||||
|
@ -83,7 +83,7 @@ in
|
|||
"bind"
|
||||
];
|
||||
depends = [
|
||||
server.storage0.mount
|
||||
ceres.storage0.mount
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ let
|
|||
name
|
||||
;
|
||||
inherit (flake.config.machines.devices)
|
||||
server
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services.instances)
|
||||
nextcloud
|
||||
|
@ -113,7 +113,7 @@ in
|
|||
"bind"
|
||||
];
|
||||
depends = [
|
||||
server.storage0.mount
|
||||
ceres.storage0.mount
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
@ -6,8 +6,8 @@
|
|||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices)
|
||||
desktop
|
||||
server
|
||||
jupiter
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services.instances)
|
||||
ollama
|
||||
|
@ -19,7 +19,7 @@ let
|
|||
host = "${service.subdomain}.${web.domains.url0}";
|
||||
|
||||
caddyLogic =
|
||||
if hostname == server.name then
|
||||
if hostname == ceres.name then
|
||||
{
|
||||
caddy = {
|
||||
virtualHosts = {
|
||||
|
@ -37,7 +37,7 @@ let
|
|||
{ };
|
||||
|
||||
mountLogic =
|
||||
if hostname == server.name then
|
||||
if hostname == ceres.name then
|
||||
{
|
||||
"/var/lib/${service.name}" = {
|
||||
device = service.paths.path0;
|
||||
|
@ -46,7 +46,7 @@ let
|
|||
"bind"
|
||||
];
|
||||
depends = [
|
||||
server.storage0.mount
|
||||
ceres.storage0.mount
|
||||
];
|
||||
};
|
||||
}
|
||||
|
@ -63,7 +63,7 @@ in
|
|||
user = service.name;
|
||||
}
|
||||
// (
|
||||
if hostname == desktop.name then
|
||||
if hostname == jupiter.name then
|
||||
{
|
||||
models = service.paths.path1;
|
||||
acceleration = "rocm";
|
||||
|
@ -98,7 +98,7 @@ in
|
|||
|
||||
systemd.tmpfiles.rules = [
|
||||
(
|
||||
if hostname == desktop.name then
|
||||
if hostname == jupiter.name then
|
||||
"Z ${service.paths.path1} 0777 ${service.name} ${service.name} -"
|
||||
else
|
||||
"Z ${service.paths.path0} 0755 ${service.name} ${service.name} -"
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices)
|
||||
server
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services.instances)
|
||||
caddy
|
||||
|
@ -123,7 +123,7 @@ in
|
|||
"bind"
|
||||
];
|
||||
depends = [
|
||||
server.storage0.mount
|
||||
ceres.storage0.mount
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{ flake, ... }:
|
||||
let
|
||||
inherit (flake.config.machines.devices)
|
||||
server
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services.instances)
|
||||
postgresql
|
||||
|
@ -40,7 +40,7 @@ in
|
|||
"bind"
|
||||
];
|
||||
depends = [
|
||||
server.storage0.mount
|
||||
ceres.storage0.mount
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
@ -8,17 +8,17 @@ let
|
|||
devices
|
||||
;
|
||||
hostname = config.networking.hostName;
|
||||
desktop = devices.desktop.name;
|
||||
server = devices.server.name;
|
||||
fallaryn = devices.fallaryn.name;
|
||||
bartholomew = devices.bartholomew.name;
|
||||
jupiter = devices.jupiter.name;
|
||||
ceres = devices.ceres.name;
|
||||
saturn = devices.saturn.name;
|
||||
callisto = devices.callisto.name;
|
||||
|
||||
userLogic =
|
||||
if hostname == desktop then
|
||||
if hostname == jupiter then
|
||||
user0
|
||||
else if hostname == server then
|
||||
else if hostname == ceres then
|
||||
user0
|
||||
else if hostname == fallaryn then
|
||||
else if hostname == saturn then
|
||||
user2
|
||||
else
|
||||
"";
|
||||
|
@ -32,7 +32,7 @@ in
|
|||
generateKey = false;
|
||||
};
|
||||
secrets =
|
||||
if hostname == bartholomew then
|
||||
if hostname == callisto then
|
||||
{ }
|
||||
else
|
||||
{
|
||||
|
|
|
@ -5,7 +5,7 @@ vpnoff:
|
|||
sudo protonvpn d
|
||||
|
||||
rebuild:
|
||||
nixos-rebuild switch --use-remote-sudo --flake ~/Files/Projects/dotfiles#desktop --show-trace
|
||||
nixos-rebuild switch --use-remote-sudo --flake ~/Files/Projects/dotfiles#jupiter --show-trace
|
||||
|
||||
elm:
|
||||
cd ~/Files/Projects/website/frontend; elm-land server
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
}:
|
||||
let
|
||||
inherit (flake.config.people) user1;
|
||||
inherit (flake.config.machines.devices) bartholomew;
|
||||
inherit (flake.config.machines.devices) callisto;
|
||||
in
|
||||
{
|
||||
fileSystems = {
|
||||
|
@ -16,7 +16,7 @@ in
|
|||
"/boot" = {
|
||||
device = "/dev/disk/by-uuid/1703-D452";
|
||||
fsType = "vfat";
|
||||
options = bartholomew.boot.options;
|
||||
options = callisto.boot.options;
|
||||
};
|
||||
};
|
||||
|
|
@ -5,12 +5,12 @@
|
|||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices)
|
||||
bartholomew
|
||||
callisto
|
||||
;
|
||||
in
|
||||
{
|
||||
networking = {
|
||||
hostName = bartholomew.name;
|
||||
hostName = callisto.name;
|
||||
networkmanager.enable = true;
|
||||
nftables.enable = true;
|
||||
useDHCP = lib.mkDefault true;
|
|
@ -2,7 +2,8 @@
|
|||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
}:
|
||||
{
|
||||
boot = {
|
||||
extraModulePackages = [
|
||||
config.boot.kernelPackages.v4l2loopback.out
|
|
@ -2,30 +2,31 @@
|
|||
flake,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
inherit
|
||||
(flake.config.people)
|
||||
}:
|
||||
let
|
||||
inherit (flake.config.people)
|
||||
user0
|
||||
;
|
||||
inherit
|
||||
(flake.config.machines.devices)
|
||||
server
|
||||
inherit (flake.config.machines.devices)
|
||||
ceres
|
||||
;
|
||||
in {
|
||||
fileSystems = let
|
||||
storageDrives = [
|
||||
"storage0"
|
||||
];
|
||||
in
|
||||
{
|
||||
fileSystems =
|
||||
let
|
||||
storageDrives = [
|
||||
"storage0"
|
||||
];
|
||||
|
||||
storageMounts = storage: {
|
||||
name = "${server.${storage}.mount}";
|
||||
value = {
|
||||
device = server.${storage}.device;
|
||||
fsType = "ext4";
|
||||
options = server.${storage}.options;
|
||||
storageMounts = storage: {
|
||||
name = "${ceres.${storage}.mount}";
|
||||
value = {
|
||||
device = ceres.${storage}.device;
|
||||
fsType = "ext4";
|
||||
options = ceres.${storage}.options;
|
||||
};
|
||||
};
|
||||
};
|
||||
in
|
||||
in
|
||||
{
|
||||
"/" = {
|
||||
device = "/dev/disk/by-uuid/de4e681b-0667-4bf8-8d6e-c50894aa41cd";
|
||||
|
@ -39,12 +40,12 @@ in {
|
|||
// (builtins.listToAttrs (map storageMounts storageDrives));
|
||||
|
||||
swapDevices = [
|
||||
{device = "/dev/disk/by-uuid/259fcc06-912c-4bd3-b781-8f77449e935a";}
|
||||
{ device = "/dev/disk/by-uuid/259fcc06-912c-4bd3-b781-8f77449e935a"; }
|
||||
];
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"Z ${config.home-manager.users.${user0}.home.homeDirectory} 0755 ${user0} users -"
|
||||
"Z ${server.storage0.mount} 2775 root root -"
|
||||
"Z ${ceres.storage0.mount} 2775 root root -"
|
||||
];
|
||||
|
||||
services.udisks2.enable = true;
|
|
@ -1,20 +1,18 @@
|
|||
{pkgs, ...}: {
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
hardware = {
|
||||
graphics = {
|
||||
enable = true;
|
||||
extraPackages = builtins.attrValues {
|
||||
inherit
|
||||
(pkgs)
|
||||
inherit (pkgs)
|
||||
amdvlk
|
||||
;
|
||||
inherit
|
||||
(pkgs.rocmPackages.clr)
|
||||
inherit (pkgs.rocmPackages.clr)
|
||||
icd
|
||||
;
|
||||
};
|
||||
extraPackages32 = builtins.attrValues {
|
||||
inherit
|
||||
(pkgs.driversi686Linux)
|
||||
inherit (pkgs.driversi686Linux)
|
||||
amdvlk
|
||||
;
|
||||
};
|
|
@ -3,7 +3,8 @@
|
|||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
}:
|
||||
{
|
||||
hardware = {
|
||||
firmware = [
|
||||
pkgs.rtl8761b-firmware
|
|
@ -4,11 +4,11 @@
|
|||
...
|
||||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices) server;
|
||||
inherit (flake.config.machines.devices) ceres;
|
||||
in
|
||||
{
|
||||
networking = {
|
||||
hostName = server.name;
|
||||
hostName = ceres.name;
|
||||
networkmanager.enable = true;
|
||||
nftables.enable = true;
|
||||
useDHCP = lib.mkDefault true;
|
|
@ -1,9 +1,10 @@
|
|||
{flake, ...}: let
|
||||
inherit
|
||||
(flake.config.people)
|
||||
{ flake, ... }:
|
||||
let
|
||||
inherit (flake.config.people)
|
||||
user0
|
||||
;
|
||||
in {
|
||||
in
|
||||
{
|
||||
sops = {
|
||||
secrets = {
|
||||
"discord-token" = {
|
17
systems/ceres/default.nix
Executable file
17
systems/ceres/default.nix
Executable file
|
@ -0,0 +1,17 @@
|
|||
{ lib, ... }:
|
||||
let
|
||||
configPath = ./config;
|
||||
|
||||
ceresImports =
|
||||
let
|
||||
files = builtins.attrNames (builtins.readDir configPath);
|
||||
in
|
||||
map (name: configPath + "/${name}") (
|
||||
builtins.filter (name: builtins.match ".*\\.nix$" name != null) files
|
||||
);
|
||||
in
|
||||
{
|
||||
imports = ceresImports;
|
||||
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
||||
system.stateVersion = lib.mkForce "24.05";
|
||||
}
|
|
@ -1,14 +0,0 @@
|
|||
{lib, ...}: let
|
||||
configPath = ./config;
|
||||
|
||||
desktopImports = let
|
||||
files = builtins.attrNames (builtins.readDir configPath);
|
||||
in
|
||||
map
|
||||
(name: configPath + "/${name}")
|
||||
(builtins.filter (name: builtins.match ".*\\.nix$" name != null) files);
|
||||
in {
|
||||
imports = desktopImports;
|
||||
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
||||
system.stateVersion = lib.mkForce "24.05";
|
||||
}
|
|
@ -5,7 +5,7 @@
|
|||
}:
|
||||
let
|
||||
inherit (flake.config.people) user2;
|
||||
inherit (flake.config.machines.devices) fallaryn;
|
||||
inherit (flake.config.machines.devices) saturn;
|
||||
in
|
||||
{
|
||||
imports = [ ];
|
||||
|
@ -18,11 +18,11 @@ in
|
|||
];
|
||||
|
||||
storageMounts = storage: {
|
||||
name = "${fallaryn.${storage}.mount}";
|
||||
name = "${saturn.${storage}.mount}";
|
||||
value = {
|
||||
device = fallaryn.${storage}.device;
|
||||
device = saturn.${storage}.device;
|
||||
fsType = "ext4";
|
||||
options = fallaryn.${storage}.options;
|
||||
options = saturn.${storage}.options;
|
||||
};
|
||||
};
|
||||
in
|
||||
|
@ -34,7 +34,7 @@ in
|
|||
"/boot" = {
|
||||
device = "/dev/disk/by-uuid/22BD-5A25";
|
||||
fsType = "vfat";
|
||||
options = fallaryn.boot.options;
|
||||
options = saturn.boot.options;
|
||||
};
|
||||
}
|
||||
// (builtins.listToAttrs (map storageMounts storageDrives));
|
||||
|
@ -45,8 +45,8 @@ in
|
|||
|
||||
systemd.tmpfiles.rules = [
|
||||
"Z ${config.home-manager.users.${user2}.home.homeDirectory} 0755 ${user2} users -"
|
||||
"Z ${fallaryn.storage0.mount} 0755 ${user2} users -"
|
||||
"Z ${fallaryn.storage1.mount} 0755 ${user2} users -"
|
||||
"Z ${saturn.storage0.mount} 0755 ${user2} users -"
|
||||
"Z ${saturn.storage1.mount} 0755 ${user2} users -"
|
||||
];
|
||||
|
||||
services.udisks2.enable = true;
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
...
|
||||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices) fallaryn;
|
||||
inherit (flake.config.machines.devices) saturn;
|
||||
in
|
||||
{
|
||||
networking = {
|
||||
hostName = fallaryn.name;
|
||||
hostName = saturn.name;
|
||||
networkmanager.enable = true;
|
||||
useDHCP = lib.mkDefault true;
|
||||
firewall = {
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
let
|
||||
configPath = ./config;
|
||||
|
||||
fallarynImports =
|
||||
saturnImports =
|
||||
let
|
||||
files = builtins.attrNames (builtins.readDir configPath);
|
||||
in
|
||||
|
@ -14,7 +14,7 @@ let
|
|||
);
|
||||
in
|
||||
{
|
||||
imports = fallarynImports;
|
||||
imports = saturnImports;
|
||||
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
||||
system.stateVersion = lib.mkForce "24.05";
|
||||
}
|
||||
|
|
|
@ -2,7 +2,8 @@
|
|||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
}:
|
||||
{
|
||||
boot = {
|
||||
extraModulePackages = [
|
||||
config.boot.kernelPackages.v4l2loopback.out
|
82
systems/ganymede/config/filesystem.nix
Executable file
82
systems/ganymede/config/filesystem.nix
Executable file
|
@ -0,0 +1,82 @@
|
|||
{
|
||||
flake,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
let
|
||||
inherit (flake.config.people)
|
||||
user0
|
||||
user1
|
||||
;
|
||||
inherit (flake.config.machines.devices)
|
||||
ganymede
|
||||
synology
|
||||
ceres
|
||||
;
|
||||
inherit (flake.config.services.instances)
|
||||
samba
|
||||
;
|
||||
|
||||
synologySecrets = config.sops.secrets."network/synology".path;
|
||||
ceresSecrets = config.sops.secrets."network/server".path;
|
||||
in
|
||||
{
|
||||
fileSystems =
|
||||
let
|
||||
synologyDrives = [
|
||||
"folder0"
|
||||
"folder1"
|
||||
"folder2"
|
||||
];
|
||||
|
||||
sambaDrives = [
|
||||
"samba0"
|
||||
];
|
||||
|
||||
synologyMounts = synologyDrive: {
|
||||
name = "${synology.${synologyDrive}.mount}";
|
||||
value = {
|
||||
device = synology.${synologyDrive}.device;
|
||||
fsType = "cifs";
|
||||
options = synology.${synologyDrive}.options ++ [
|
||||
"credentials=${synologySecrets}"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
sambaMounts = sambaDrive: {
|
||||
name = "${ceres.${sambaDrive}.mount}/${samba.paths.path1}";
|
||||
value = {
|
||||
device = "${ceres.${sambaDrive}.device}/${samba.paths.path1}";
|
||||
fsType = "cifs";
|
||||
options = ceres.${sambaDrive}.options ++ [
|
||||
"credentials=${ceresSecrets}"
|
||||
];
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
"/" = {
|
||||
device = "/dev/disk/by-uuid/aae33e00-125e-4f1c-b9aa-9fc512335b7f";
|
||||
fsType = "ext4";
|
||||
};
|
||||
"/boot" = {
|
||||
device = "/dev/disk/by-uuid/C506-9E18";
|
||||
fsType = "vfat";
|
||||
options = ganymede.boot.options;
|
||||
};
|
||||
}
|
||||
// (builtins.listToAttrs (map synologyMounts synologyDrives))
|
||||
// (builtins.listToAttrs (map sambaMounts sambaDrives));
|
||||
|
||||
swapDevices = [
|
||||
{ device = "/dev/disk/by-uuid/68d6072a-e21b-4d11-88fd-22c5b9932a50"; }
|
||||
];
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"Z ${config.home-manager.users.${user0}.home.homeDirectory} 0755 ${user0} users -"
|
||||
"Z ${config.home-manager.users.${user1}.home.homeDirectory} 0755 ${user1} users -"
|
||||
];
|
||||
|
||||
services.udisks2.enable = true;
|
||||
}
|
|
@ -1,20 +1,18 @@
|
|||
{pkgs, ...}: {
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
hardware = {
|
||||
graphics = {
|
||||
enable = true;
|
||||
extraPackages = builtins.attrValues {
|
||||
inherit
|
||||
(pkgs)
|
||||
inherit (pkgs)
|
||||
amdvlk
|
||||
;
|
||||
inherit
|
||||
(pkgs.rocmPackages.clr)
|
||||
inherit (pkgs.rocmPackages.clr)
|
||||
icd
|
||||
;
|
||||
};
|
||||
extraPackages32 = builtins.attrValues {
|
||||
inherit
|
||||
(pkgs.driversi686Linux)
|
||||
inherit (pkgs.driversi686Linux)
|
||||
amdvlk
|
||||
;
|
||||
};
|
|
@ -3,7 +3,8 @@
|
|||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
}:
|
||||
{
|
||||
hardware = {
|
||||
firmware = [
|
||||
pkgs.rtl8761b-firmware
|
|
@ -2,14 +2,15 @@
|
|||
lib,
|
||||
flake,
|
||||
...
|
||||
}: let
|
||||
inherit
|
||||
(flake.config.machines.devices)
|
||||
laptop
|
||||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices)
|
||||
ganymede
|
||||
;
|
||||
in {
|
||||
in
|
||||
{
|
||||
networking = {
|
||||
hostName = laptop.name;
|
||||
hostName = ganymede.name;
|
||||
networkmanager.enable = true;
|
||||
nftables.enable = true;
|
||||
useDHCP = lib.mkDefault true;
|
|
@ -1,9 +1,10 @@
|
|||
{flake, ...}: let
|
||||
inherit
|
||||
(flake.config.people)
|
||||
{ flake, ... }:
|
||||
let
|
||||
inherit (flake.config.people)
|
||||
user1
|
||||
;
|
||||
in {
|
||||
in
|
||||
{
|
||||
sops = {
|
||||
secrets = {
|
||||
"network/synology" = {
|
17
systems/ganymede/default.nix
Executable file
17
systems/ganymede/default.nix
Executable file
|
@ -0,0 +1,17 @@
|
|||
{ lib, ... }:
|
||||
let
|
||||
configPath = ./config;
|
||||
|
||||
ganymedeImports =
|
||||
let
|
||||
files = builtins.attrNames (builtins.readDir configPath);
|
||||
in
|
||||
map (name: configPath + "/${name}") (
|
||||
builtins.filter (name: builtins.match ".*\\.nix$" name != null) files
|
||||
);
|
||||
in
|
||||
{
|
||||
imports = ganymedeImports;
|
||||
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
||||
system.stateVersion = lib.mkForce "24.05";
|
||||
}
|
|
@ -9,8 +9,8 @@ let
|
|||
user1
|
||||
;
|
||||
inherit (flake.config.machines.devices)
|
||||
desktop
|
||||
server
|
||||
jupiter
|
||||
ceres
|
||||
synology
|
||||
;
|
||||
inherit (flake.config.services.instances)
|
||||
|
@ -18,7 +18,7 @@ let
|
|||
;
|
||||
|
||||
synologySecrets = config.sops.secrets."network/synology".path;
|
||||
serverSecrets = config.sops.secrets."network/server".path;
|
||||
ceresSecrets = config.sops.secrets."network/server".path;
|
||||
in
|
||||
{
|
||||
fileSystems =
|
||||
|
@ -50,21 +50,21 @@ in
|
|||
};
|
||||
|
||||
storageMounts = storageDrive: {
|
||||
name = "${desktop.${storageDrive}.mount}";
|
||||
name = "${jupiter.${storageDrive}.mount}";
|
||||
value = {
|
||||
device = desktop.${storageDrive}.device;
|
||||
device = jupiter.${storageDrive}.device;
|
||||
fsType = "ext4";
|
||||
options = desktop.${storageDrive}.options;
|
||||
options = jupiter.${storageDrive}.options;
|
||||
};
|
||||
};
|
||||
|
||||
sambaMounts = sambaDrive: {
|
||||
name = "${server.${sambaDrive}.mount}/${samba.paths.path1}";
|
||||
name = "${ceres.${sambaDrive}.mount}/${samba.paths.path1}";
|
||||
value = {
|
||||
device = "${server.${sambaDrive}.device}/${samba.paths.path1}";
|
||||
device = "${ceres.${sambaDrive}.device}/${samba.paths.path1}";
|
||||
fsType = "cifs";
|
||||
options = server.${sambaDrive}.options ++ [
|
||||
"credentials=${serverSecrets}"
|
||||
options = ceres.${sambaDrive}.options ++ [
|
||||
"credentials=${ceresSecrets}"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
@ -77,7 +77,7 @@ in
|
|||
"/boot" = {
|
||||
device = "/dev/disk/by-uuid/73E2-4DC1";
|
||||
fsType = "vfat";
|
||||
options = desktop.boot.options;
|
||||
options = jupiter.boot.options;
|
||||
};
|
||||
}
|
||||
// (builtins.listToAttrs (map synologyMounts synologyDrives))
|
||||
|
@ -91,8 +91,8 @@ in
|
|||
systemd.tmpfiles.rules = [
|
||||
"Z ${config.home-manager.users.${user0}.home.homeDirectory} 0755 ${user0} users -"
|
||||
"Z ${config.home-manager.users.${user1}.home.homeDirectory} 0755 ${user1} users -"
|
||||
"Z ${desktop.storage0.mount} 0755 ${user0} users -"
|
||||
"Z ${desktop.storage1.mount} 0755 ${user0} users -"
|
||||
"Z ${jupiter.storage0.mount} 0755 ${user0} users -"
|
||||
"Z ${jupiter.storage1.mount} 0755 ${user0} users -"
|
||||
];
|
||||
|
||||
services.udisks2.enable = true;
|
|
@ -3,11 +3,11 @@
|
|||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
}:
|
||||
{
|
||||
hardware = {
|
||||
firmware = builtins.attrValues {
|
||||
inherit
|
||||
(pkgs)
|
||||
inherit (pkgs)
|
||||
rtl8761b-firmware
|
||||
;
|
||||
};
|
|
@ -2,14 +2,15 @@
|
|||
lib,
|
||||
flake,
|
||||
...
|
||||
}: let
|
||||
inherit
|
||||
(flake.config.machines.devices)
|
||||
desktop
|
||||
}:
|
||||
let
|
||||
inherit (flake.config.machines.devices)
|
||||
jupiter
|
||||
;
|
||||
in {
|
||||
in
|
||||
{
|
||||
networking = {
|
||||
hostName = desktop.name;
|
||||
hostName = jupiter.name;
|
||||
networkmanager.enable = true;
|
||||
nftables.enable = true;
|
||||
useDHCP = lib.mkDefault true;
|
|
@ -1,13 +1,13 @@
|
|||
{flake, ...}: let
|
||||
inherit
|
||||
(flake.config.people)
|
||||
{ flake, ... }:
|
||||
let
|
||||
inherit (flake.config.people)
|
||||
user0
|
||||
;
|
||||
inherit
|
||||
(flake.config.people.users.${user0})
|
||||
inherit (flake.config.people.users.${user0})
|
||||
paths
|
||||
;
|
||||
in {
|
||||
in
|
||||
{
|
||||
sops = {
|
||||
secrets = {
|
||||
"network/synology" = {
|
17
systems/jupiter/default.nix
Executable file
17
systems/jupiter/default.nix
Executable file
|
@ -0,0 +1,17 @@
|
|||
{ lib, ... }:
|
||||
let
|
||||
configPath = ./config;
|
||||
|
||||
jupiterImports =
|
||||
let
|
||||
files = builtins.attrNames (builtins.readDir configPath);
|
||||
in
|
||||
map (name: configPath + "/${name}") (
|
||||
builtins.filter (name: builtins.match ".*\\.nix$" name != null) files
|
||||
);
|
||||
in
|
||||
{
|
||||
imports = jupiterImports;
|
||||
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
||||
system.stateVersion = lib.mkForce "24.05";
|
||||
}
|
|
@ -1,86 +0,0 @@
|
|||
{
|
||||
flake,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
inherit
|
||||
(flake.config.people)
|
||||
user0
|
||||
user1
|
||||
;
|
||||
inherit
|
||||
(flake.config.machines.devices)
|
||||
laptop
|
||||
synology
|
||||
server
|
||||
;
|
||||
inherit
|
||||
(flake.config.services.instances)
|
||||
samba
|
||||
;
|
||||
|
||||
synologySecrets = config.sops.secrets."network/synology".path;
|
||||
serverSecrets = config.sops.secrets."network/server".path;
|
||||
in {
|
||||
fileSystems = let
|
||||
synologyDrives = [
|
||||
"folder0"
|
||||
"folder1"
|
||||
"folder2"
|
||||
];
|
||||
|
||||
sambaDrives = [
|
||||
"samba0"
|
||||
];
|
||||
|
||||
synologyMounts = synologyDrive: {
|
||||
name = "${synology.${synologyDrive}.mount}";
|
||||
value = {
|
||||
device = synology.${synologyDrive}.device;
|
||||
fsType = "cifs";
|
||||
options =
|
||||
synology.${synologyDrive}.options
|
||||
++ [
|
||||
"credentials=${synologySecrets}"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
sambaMounts = sambaDrive: {
|
||||
name = "${server.${sambaDrive}.mount}/${samba.paths.path1}";
|
||||
value = {
|
||||
device = "${server.${sambaDrive}.device}/${samba.paths.path1}";
|
||||
fsType = "cifs";
|
||||
options =
|
||||
server.${sambaDrive}.options
|
||||
++ [
|
||||
"credentials=${serverSecrets}"
|
||||
];
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
"/" = {
|
||||
device = "/dev/disk/by-uuid/aae33e00-125e-4f1c-b9aa-9fc512335b7f";
|
||||
fsType = "ext4";
|
||||
};
|
||||
"/boot" = {
|
||||
device = "/dev/disk/by-uuid/C506-9E18";
|
||||
fsType = "vfat";
|
||||
options = laptop.boot.options;
|
||||
};
|
||||
}
|
||||
// (builtins.listToAttrs (map synologyMounts synologyDrives))
|
||||
// (builtins.listToAttrs (map sambaMounts sambaDrives));
|
||||
|
||||
swapDevices = [
|
||||
{device = "/dev/disk/by-uuid/68d6072a-e21b-4d11-88fd-22c5b9932a50";}
|
||||
];
|
||||
|
||||
systemd.tmpfiles.rules = [
|
||||
"Z ${config.home-manager.users.${user0}.home.homeDirectory} 0755 ${user0} users -"
|
||||
"Z ${config.home-manager.users.${user1}.home.homeDirectory} 0755 ${user1} users -"
|
||||
];
|
||||
|
||||
services.udisks2.enable = true;
|
||||
}
|
|
@ -1,14 +0,0 @@
|
|||
{lib, ...}: let
|
||||
configPath = ./config;
|
||||
|
||||
laptopImports = let
|
||||
files = builtins.attrNames (builtins.readDir configPath);
|
||||
in
|
||||
map
|
||||
(name: configPath + "/${name}")
|
||||
(builtins.filter (name: builtins.match ".*\\.nix$" name != null) files);
|
||||
in {
|
||||
imports = laptopImports;
|
||||
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
||||
system.stateVersion = lib.mkForce "24.05";
|
||||
}
|
|
@ -1,14 +0,0 @@
|
|||
{lib, ...}: let
|
||||
configPath = ./config;
|
||||
|
||||
serverImports = let
|
||||
files = builtins.attrNames (builtins.readDir configPath);
|
||||
in
|
||||
map
|
||||
(name: configPath + "/${name}")
|
||||
(builtins.filter (name: builtins.match ".*\\.nix$" name != null) files);
|
||||
in {
|
||||
imports = serverImports;
|
||||
nixpkgs.hostPlatform = lib.mkForce "x86_64-linux";
|
||||
system.stateVersion = lib.mkForce "24.05";
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue