WIP share configuraton between nixos / homemanager

This commit is contained in:
Leon Schwarzäugl 2025-07-16 18:23:00 +02:00
parent 641a0cd84d
commit a1617e71bd
Signed by: swarsel
GPG key ID: 26A54C31F2A4FD84
165 changed files with 994 additions and 1032 deletions

View file

@ -7,10 +7,6 @@ let
isBtrfs = true;
isLinux = true;
sharescreen = "eDP-1";
profiles = {
reduced = lib.mkIf (!minimal) true;
minimal = lib.mkIf minimal true;
};
};
in
{
@ -23,6 +19,11 @@ in
];
swarselprofiles = {
reduced = lib.mkIf (!minimal) true;
minimal = lib.mkIf minimal true;
btrfs = true;
};
swarselsystems = lib.recursiveUpdate
{
@ -38,13 +39,14 @@ in
rootDisk = "/dev/nvme0n1";
swapSize = "4G";
hostName = config.node.name;
profiles = {
btrfs = true;
};
}
sharedOptions;
home-manager.users."${primaryUser}" = {
swarselprofiles = {
reduced = lib.mkIf (!minimal) true;
minimal = lib.mkIf minimal true;
};
# home.stateVersion = lib.mkForce "23.05";
swarselsystems = lib.recursiveUpdate
{

View file

@ -6,10 +6,6 @@ let
isBtrfs = false;
isLinux = true;
isPublic = true;
profiles = {
chaostheatre = lib.mkIf (!minimal) true;
minimal = lib.mkIf minimal true;
};
};
in
{
@ -39,6 +35,11 @@ in
firewall.enable = true;
};
swarselprofiles = {
chaostheatre = lib.mkIf (!minimal) true;
minimal = lib.mkIf minimal true;
btrfs = true;
};
swarselsystems = lib.recursiveUpdate
{
info = "~SwarselSystems~ demo host";
@ -49,7 +50,6 @@ in
isSwap = true;
swapSize = "4G";
rootDisk = "/dev/vda";
profiles.btrfs = true;
}
sharedOptions;

View file

@ -6,9 +6,6 @@ let
isLinux = true;
isNixos = true;
};
profiles = {
minimal = lib.mkIf minimal true;
};
in
{
imports = [
@ -32,6 +29,10 @@ in
enableAllFirmware = lib.mkForce false;
};
swarselprofiles = {
minimal = lib.mkIf minimal true;
server.syncserver = true;
};
swarselsystems = lib.recursiveUpdate
{
info = "VM.Standard.E2.1.Micro";
@ -41,9 +42,6 @@ in
isSwap = true;
rootDisk = "/dev/sda";
swapSize = "4G";
profiles = {
server.syncserver = true;
};
}
sharedOptions;

View file

@ -209,6 +209,9 @@ in
};
};
swarselprofiles = {
server.moonside = true;
};
swarselsystems = lib.recursiveUpdate
{
info = "VM.Standard.A1.Flex, 4 OCPUs, 24GB RAM";
@ -217,9 +220,6 @@ in
isCrypted = false;
isSwap = false;
rootDisk = "/dev/sda";
profiles = {
server.moonside = true;
};
}
sharedOptions;

View file

@ -1,19 +1,6 @@
{ self, config, inputs, lib, minimal, ... }:
let
primaryUser = config.swarselsystems.mainUser;
sharedOptions = {
isLaptop = true;
isNixos = true;
isBtrfs = true;
isLinux = true;
sharescreen = "eDP-2";
profiles = {
personal = lib.mkIf (!minimal) true;
minimal = lib.mkIf minimal true;
work = lib.mkIf (!minimal) true;
framework = lib.mkIf (!minimal) true;
};
};
in
{
@ -26,53 +13,64 @@ in
];
swarselsystems = lib.recursiveUpdate
{
info = "Framework Laptop 16, 7940HS, RX7700S, 64GB RAM";
firewall = lib.mkForce true;
wallpaper = self + /files/wallpaper/lenovowp.png;
hasBluetooth = true;
hasFingerprint = true;
isImpermanence = false;
isSecureBoot = true;
isCrypted = true;
inherit (config.repo.secrets.local) hostName;
inherit (config.repo.secrets.local) fqdn;
hibernation.offset = 533760;
profiles = {
amdcpu = true;
amdgpu = true;
hibernation = true;
btrfs = true;
};
}
sharedOptions;
swarselprofiles = {
personal = lib.mkIf (!minimal) true;
minimal = lib.mkIf minimal true;
work = lib.mkIf (!minimal) true;
framework = lib.mkIf (!minimal) true;
amdcpu = true;
amdgpu = true;
hibernation = true;
btrfs = true;
};
swarselsystems = {
isLaptop = true;
isNixos = true;
isBtrfs = true;
isLinux = true;
sharescreen = "eDP-2";
info = "Framework Laptop 16, 7940HS, RX7700S, 64GB RAM";
firewall = lib.mkForce true;
wallpaper = self + /files/wallpaper/lenovowp.png;
hasBluetooth = true;
hasFingerprint = true;
isImpermanence = false;
isSecureBoot = true;
isCrypted = true;
inherit (config.repo.secrets.local) hostName;
inherit (config.repo.secrets.local) fqdn;
hibernation.offset = 533760;
};
home-manager.users."${primaryUser}" = {
# home.stateVersion = lib.mkForce "23.05";
swarselsystems = lib.recursiveUpdate
{
isSecondaryGpu = true;
SecondaryGpuCard = "pci-0000_03_00_0";
cpuCount = 16;
temperatureHwmon = {
isAbsolutePath = true;
path = "/sys/devices/virtual/thermal/thermal_zone0/";
input-filename = "temp4_input";
swarselprofiles = {
personal = lib.mkIf (!minimal) true;
minimal = lib.mkIf minimal true;
work = lib.mkIf (!minimal) true;
framework = lib.mkIf (!minimal) true;
};
swarselsystems = {
isSecondaryGpu = true;
SecondaryGpuCard = "pci-0000_03_00_0";
cpuCount = 16;
temperatureHwmon = {
isAbsolutePath = true;
path = "/sys/devices/virtual/thermal/thermal_zone0/";
input-filename = "temp4_input";
};
lowResolution = "1280x800";
highResolution = "2560x1600";
monitors = {
main = {
name = "BOE 0x0BC9 Unknown";
mode = "2560x1600"; # TEMPLATE
scale = "1";
position = "2560,0";
workspace = "15:L";
output = "eDP-2";
};
lowResolution = "1280x800";
highResolution = "2560x1600";
monitors = {
main = {
name = "BOE 0x0BC9 Unknown";
mode = "2560x1600"; # TEMPLATE
scale = "1";
position = "2560,0";
workspace = "15:L";
output = "eDP-2";
};
};
}
sharedOptions;
};
};
};
}

View file

@ -4,10 +4,6 @@ let
sharedOptions = {
isBtrfs = true;
isLinux = true;
profiles = {
toto = lib.mkIf (!minimal) true;
minimal = lib.mkIf minimal true;
};
};
in
{
@ -24,6 +20,11 @@ in
firewall.enable = false;
};
swarselprofiles = {
toto = lib.mkIf (!minimal) true;
minimal = lib.mkIf minimal true;
btrfs = true;
};
swarselsystems = lib.recursiveUpdate
{
info = "~SwarselSystems~ remote install helper";
@ -35,7 +36,6 @@ in
swapSize = "2G";
# rootDisk = "/dev/nvme0n1";
rootDisk = "/dev/vda";
profiles.btrfs = true;
# rootDisk = "/dev/vda";
}
sharedOptions;

View file

@ -5,9 +5,6 @@ let
isBtrfs = false;
isLinux = true;
isNixos = true;
profiles = {
server.local = true;
};
};
in
{
@ -30,6 +27,9 @@ in
};
swarselprofiles = {
server.local = true;
};
swarselsystems = lib.recursiveUpdate
{
info = "ASRock J4105-ITX, 32GB RAM";