1
0
Fork 0

add spectacle config, add spotify, fix cinny video playback with gstreamer

refactor some stuff to look nicer and have more structure too
This commit is contained in:
Philipp 2025-04-10 19:19:37 +02:00
parent 56a64c1e0e
commit dc99f3d24d
Signed by: Philipp
GPG key ID: 9EBD8439AFBAB750
15 changed files with 283 additions and 145 deletions

174
flake.lock generated
View file

@ -2,18 +2,17 @@
"nodes": { "nodes": {
"firefox-addons": { "firefox-addons": {
"inputs": { "inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"dir": "pkgs/firefox-addons", "dir": "pkgs/firefox-addons",
"lastModified": 1741462124, "lastModified": 1744224429,
"narHash": "sha256-CPAkFMLGN9nFtHvWbfEdAM1KFCshr0raxhcWmjzh5Ek=", "narHash": "sha256-ZkRLtzh3KCt0Ve2SYNbo5K6qG01I3aSiTlbrEgE2H08=",
"owner": "rycee", "owner": "rycee",
"repo": "nur-expressions", "repo": "nur-expressions",
"rev": "0bbd4266c08de042ecf51e5fb356be915e839f10", "rev": "706977dba99156d3bcb4a1f097653e8c1ac58cd4",
"type": "gitlab" "type": "gitlab"
}, },
"original": { "original": {
@ -44,11 +43,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1738453229, "lastModified": 1741352980,
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -58,40 +57,6 @@
} }
}, },
"flake-utils": { "flake-utils": {
"locked": {
"lastModified": 1629284811,
"narHash": "sha256-JHgasjPR0/J1J3DRm4KxM4zTyAj4IOJY8vIl75v/kPI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c5d161cc0af116a2e17f54316f0bf43f0819785c",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils-plus": {
"inputs": {
"flake-utils": "flake-utils_3"
},
"locked": {
"lastModified": 1715533576,
"narHash": "sha256-fT4ppWeCJ0uR300EH3i7kmgRZnAVxrH+XtK09jQWihk=",
"owner": "gytis-ivaskevicius",
"repo": "flake-utils-plus",
"rev": "3542fe9126dc492e53ddd252bb0260fe035f2c0f",
"type": "github"
},
"original": {
"owner": "gytis-ivaskevicius",
"repo": "flake-utils-plus",
"rev": "3542fe9126dc492e53ddd252bb0260fe035f2c0f",
"type": "github"
}
},
"flake-utils_2": {
"inputs": { "inputs": {
"systems": "systems" "systems": "systems"
}, },
@ -109,7 +74,26 @@
"type": "github" "type": "github"
} }
}, },
"flake-utils_3": { "flake-utils-plus": {
"inputs": {
"flake-utils": "flake-utils_2"
},
"locked": {
"lastModified": 1715533576,
"narHash": "sha256-fT4ppWeCJ0uR300EH3i7kmgRZnAVxrH+XtK09jQWihk=",
"owner": "gytis-ivaskevicius",
"repo": "flake-utils-plus",
"rev": "3542fe9126dc492e53ddd252bb0260fe035f2c0f",
"type": "github"
},
"original": {
"owner": "gytis-ivaskevicius",
"repo": "flake-utils-plus",
"rev": "3542fe9126dc492e53ddd252bb0260fe035f2c0f",
"type": "github"
}
},
"flake-utils_2": {
"inputs": { "inputs": {
"systems": "systems_3" "systems": "systems_3"
}, },
@ -134,11 +118,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1741461731, "lastModified": 1744223888,
"narHash": "sha256-BBQfGvO3GWOV+5tmqH14gNcZrRaQ7Q3tQx31Frzoip8=", "narHash": "sha256-reYpe0J1J+wH34JFs7KKp0G5nP7+XSQ5z0ZLFJcfJr8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "7f4c60a3d6e548dbc13666565c22cb3f8dcdad44", "rev": "79461936709b12e17adb9c91dd02d1c66d577f09",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -149,11 +133,11 @@
}, },
"mnw": { "mnw": {
"locked": { "locked": {
"lastModified": 1738852285, "lastModified": 1742255973,
"narHash": "sha256-8Y1uyE6gGHxdU0Vcx2CMg/dAmDSxJw19aAl3TKbbo54=", "narHash": "sha256-XfEGVKatTgEMMOVb4SNp1LYLQOSzzrFTDMVDTZFyMVE=",
"owner": "Gerg-L", "owner": "Gerg-L",
"repo": "mnw", "repo": "mnw",
"rev": "6ae73dc9cb72cea17bcc2e3d4670825f483e80e8", "rev": "b982dbd5e6d55d4438832b3567c09bc2a129649d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -175,11 +159,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1732053863, "lastModified": 1741118843,
"narHash": "sha256-DCIVdlb81Fct2uwzbtnawLBC/U03U2hqx8trqTJB7WA=", "narHash": "sha256-ggXU3RHv6NgWw+vc+HO4/9n0GPufhTIUjVuLci8Za8c=",
"owner": "oxalica", "owner": "oxalica",
"repo": "nil", "repo": "nil",
"rev": "2e24c9834e3bb5aa2a3701d3713b43a6fb106362", "rev": "577d160da311cc7f5042038456a0713e9863d09e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -190,11 +174,11 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1741325094, "lastModified": 1743420942,
"narHash": "sha256-RUAdT8dZ6k/486vnu3tiNRrNW6+Q8uSD2Mq7gTX4jlo=", "narHash": "sha256-b/exDDQSLmENZZgbAEI3qi9yHkuXAXCPbormD8CSJXo=",
"owner": "nixos", "owner": "nixos",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "b48cc4dab0f9711af296fc367b6108cf7b8ccb16", "rev": "de6fc5551121c59c01e2a3d45b277a6d05077bc4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -205,11 +189,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1741379970, "lastModified": 1744098102,
"narHash": "sha256-Wh7esNh7G24qYleLvgOSY/7HlDUzWaL/n4qzlBePpiw=", "narHash": "sha256-tzCdyIJj9AjysC3OuKA+tMD/kDEDAF9mICPDU7ix0JA=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "36fd87baa9083f34f7f5027900b62ee6d09b1f2f", "rev": "c8cd81426f45942bb2906d5ed2fe21d2f19d95b7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -221,23 +205,26 @@
}, },
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"lastModified": 1738452942, "lastModified": 1740877520,
"narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=", "narHash": "sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk=",
"type": "tarball", "owner": "nix-community",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" "repo": "nixpkgs.lib",
"rev": "147dee35aab2193b174e4c0868bd80ead5ce755c",
"type": "github"
}, },
"original": { "original": {
"type": "tarball", "owner": "nix-community",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" "repo": "nixpkgs.lib",
"type": "github"
} }
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1740303746, "lastModified": 1743076231,
"narHash": "sha256-XcdiWLEhjJkMxDLKQJ0CCivmYYCvA5MDxu9pMybM5kM=", "narHash": "sha256-yQugdVfi316qUfqzN8JMaA2vixl+45GxNm4oUfXlbgw=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "2d068ae5c6516b2d04562de50a58c682540de9bf", "rev": "6c5963357f3c1c840201eda129a99d455074db04",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -249,11 +236,11 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1731763621, "lastModified": 1743689281,
"narHash": "sha256-ddcX4lQL0X05AYkrkV2LMFgGdRvgap7Ho8kgon3iWZk=", "narHash": "sha256-y7Hg5lwWhEOgflEHRfzSH96BOt26LaYfrYWzZ+VoVdg=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c69a9bffbecde46b4b939465422ddc59493d3e4d", "rev": "2bfc080955153be0be56724be6fa5477b4eefabb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -263,38 +250,21 @@
"type": "github" "type": "github"
} }
}, },
"nmd": {
"flake": false,
"locked": {
"lastModified": 1705050560,
"narHash": "sha256-x3zzcdvhJpodsmdjqB4t5mkVW22V3wqHLOun0KRBzUI=",
"owner": "~rycee",
"repo": "nmd",
"rev": "66d9334933119c36f91a78d565c152a4fdc8d3d3",
"type": "sourcehut"
},
"original": {
"owner": "~rycee",
"repo": "nmd",
"type": "sourcehut"
}
},
"nvf": { "nvf": {
"inputs": { "inputs": {
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
"flake-utils": "flake-utils_2", "flake-utils": "flake-utils",
"mnw": "mnw", "mnw": "mnw",
"nil": "nil", "nil": "nil",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_2",
"nmd": "nmd",
"systems": "systems_2" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1741477095, "lastModified": 1744292872,
"narHash": "sha256-aiaCmDReL34ViSB7ArVq8vB2VdTDVft1+vKfWkWeyUo=", "narHash": "sha256-WcDmZL27AUiIEsgsrgz4K8+hVYMxRKF6q5UYxgIlmw0=",
"owner": "notashelf", "owner": "notashelf",
"repo": "nvf", "repo": "nvf",
"rev": "6576509cd559aec3da271d12fa911d04d44708ec", "rev": "a6f8df678549829a0dfcd6d7609ee098efeacb09",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -313,11 +283,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1740569341, "lastModified": 1742765550,
"narHash": "sha256-WV8nY2IOfWdzBF5syVgCcgOchg/qQtpYh6LECYS9XkY=", "narHash": "sha256-2vVIh2JrL6GAGfgCeY9e6iNKrBjs0Hw3bGQEAbwVs68=",
"owner": "nix-community", "owner": "nix-community",
"repo": "plasma-manager", "repo": "plasma-manager",
"rev": "5eeb0172fb74392053b66a8149e61b5e191b2845", "rev": "b70be387276e632fe51232887f9e04e2b6ef8c16",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -348,11 +318,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1731983527, "lastModified": 1741055476,
"narHash": "sha256-JECaBgC0pQ91Hq3W4unH6K9to8s2Zl2sPNu7bLOv4ek=", "narHash": "sha256-52vwEV0oS2lCnx3c/alOFGglujZTLmObit7K8VblnS8=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "71287228d96e9568e1e70c6bbfa3f992d145947b", "rev": "aefb7017d710f150970299685e8d8b549d653649",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -388,11 +358,11 @@
"nixpkgs": "nixpkgs_3" "nixpkgs": "nixpkgs_3"
}, },
"locked": { "locked": {
"lastModified": 1741043164, "lastModified": 1744103455,
"narHash": "sha256-9lfmSZLz6eq9Ygr6cCmvQiiBEaPb54pUBcjvbEMPORc=", "narHash": "sha256-SR6+qjkPjGQG+8eM4dCcVtss8r9bre/LAxFMPJpaZeU=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "3f2412536eeece783f0d0ad3861417f347219f4d", "rev": "69d5a5a4635c27dae5a742f36108beccc506c1ba",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -403,11 +373,11 @@
}, },
"stable": { "stable": {
"locked": { "locked": {
"lastModified": 1741332913, "lastModified": 1744168086,
"narHash": "sha256-ri1e8ZliWS3Jnp9yqpKApHaOo7KBN33W8ECAKA4teAQ=", "narHash": "sha256-S9M4HddBCxbbX1CKSyDYgZ8NCVyHcbKnBfoUXeRu2jQ=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "20755fa05115c84be00b04690630cb38f0a203ad", "rev": "60e405b241edb6f0573f3d9f944617fe33ac4a73",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -8,9 +8,7 @@
url = "github:nix-community/home-manager"; url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
sops-nix.url = "github:Mic92/sops-nix"; sops-nix.url = "github:Mic92/sops-nix";
snowfall-lib = { snowfall-lib = {
url = "github:snowfallorg/lib"; url = "github:snowfallorg/lib";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";

View file

@ -1,15 +1,19 @@
{ {
lib, lib,
pkgs,
namespace, namespace,
... ...
}: }:
with lib.${namespace}; with lib.${namespace};
{ {
home.activation.removeBrowserBackups = lib.hm.dag.entryAfter [ "checkLinkTargets" ] '' home.pointerCursor = {
if [ -d "/home/philipp/.librewolf/philipp" ]; then gtk.enable = true;
rm -f /home/philipp/.librewolf/philipp/search.json.mozlz4.backup x11.enable = true;
fi package = pkgs.rose-pine-cursor;
''; name = "BreezeX-RosePine-Linux";
size = 32;
};
awesome-flake = { awesome-flake = {
cli-apps = { cli-apps = {
fish = enabled; fish = enabled;
@ -27,6 +31,7 @@ with lib.${namespace};
chatterino = enabled; chatterino = enabled;
mpv = enabled; mpv = enabled;
cinny = enabled; cinny = enabled;
spotify = enabled;
obs = enabled; obs = enabled;
kitty = { kitty = {
enable = true; enable = true;
@ -41,6 +46,7 @@ with lib.${namespace};
desktop = { desktop = {
hotkeys = enabled; hotkeys = enabled;
panel = enabled; panel = enabled;
spectacle = enabled;
}; };
}; };
} }

View file

@ -35,7 +35,7 @@ let
engines = { engines = {
"SearXNG" = { "SearXNG" = {
urls = [ { template = "https://search.monapona.dev/search?q={searchTerms}"; } ]; urls = [ { template = "https://search.monapona.dev/search?q={searchTerms}"; } ];
iconUpdateURL = "https://search.monapona.dev/static/themes/simple/img/favicon.png"; icon = "https://search.monapona.dev/static/themes/simple/img/favicon.png";
definedAliases = [ "@s" ]; definedAliases = [ "@s" ];
}; };
@ -47,7 +47,7 @@ let
"NixOS Wiki" = { "NixOS Wiki" = {
urls = [ { template = "https://wiki.nixos.org/index.php?search={searchTerms}"; } ]; urls = [ { template = "https://wiki.nixos.org/index.php?search={searchTerms}"; } ];
iconUpdateURL = "https://wiki.nixos.org/favicon.ico"; icon = "https://wiki.nixos.org/favicon.ico";
updateInterval = 24 * 60 * 60 * 1000; updateInterval = 24 * 60 * 60 * 1000;
definedAliases = [ "@nw" ]; definedAliases = [ "@nw" ];
}; };

View file

@ -0,0 +1,25 @@
{
config,
lib,
pkgs,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.apps.spotify;
in
{
options.${namespace}.apps.spotify = with types; {
enable = mkBoolOpt false "Whether or not to enable spotify.";
};
config = mkIf cfg.enable {
home.packages = with pkgs; [
librespot
spotify-qt
];
};
}

View file

@ -0,0 +1,24 @@
{
config,
lib,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.desktop.spectacle;
in
{
options.${namespace}.desktop.spectacle = with types; {
enable = mkBoolOpt false "Whether or not to enable spectacle config.";
};
config = mkIf cfg.enable {
programs.plasma = {
enable = true;
spectacle.shortcuts.captureRectangularRegion = "Meta+Shift+S";
};
};
}

View file

@ -1,9 +1,9 @@
{ {
lib, lib,
osConfig ? { }, osConfig ? { },
namespace,
... ...
}: }:
{ {
home.stateVersion = lib.mkDefault (osConfig.system.stateVersion or "24.11"); home.stateVersion = lib.mkDefault (osConfig.system.stateVersion or "24.11");
} }

View file

@ -22,6 +22,9 @@ in
hardware.steam-hardware.enable = true; hardware.steam-hardware.enable = true;
environment.systemPackages = with pkgs; [ steam ]; environment.systemPackages = with pkgs; [
steamtinkerlaunch
steam
];
}; };
} }

View file

@ -0,0 +1,23 @@
{
config,
lib,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.cli.wireguard;
in
{
options.${namespace}.cli.wireguard = with types; {
enable = mkBoolOpt false "Whether or not to use wiguard-tools.";
};
config = mkIf cfg.enable {
networking.wireguard = {
enable = true;
};
};
}

View file

@ -14,9 +14,6 @@ let
elisa elisa
krdp krdp
]; ];
default-attrs = mapAttrs (key: mkDefault);
nested-default-attrs = mapAttrs (key: default-attrs);
in in
{ {
options.${namespace}.desktop.plasma = with types; { options.${namespace}.desktop.plasma = with types; {
@ -42,9 +39,7 @@ in
}; };
}; };
environment.plasma6.excludePackages = environment.plasma6.excludePackages = [ ] ++ excludePackages ++ cfg.extraExcludePackages;
with pkgs.kdePackages;
[ ] ++ excludePackages ++ cfg.extraExcludePackages;
networking.networkmanager.enable = true; networking.networkmanager.enable = true;

View file

@ -0,0 +1,29 @@
{
lib,
pkgs,
config,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.services.gns3;
in
{
options.${namespace}.services.gns3 = {
enable = mkBoolOpt false "GNS3";
};
config = mkIf cfg.enable {
services.gns3-server.enable = true;
services.gns3-server.ubridge.enable = true;
services.gns3-server.dynamips.enable = true;
environment.systemPackages = with pkgs; [
dynamips
gns3-gui
];
};
}

View file

@ -1,8 +1,8 @@
{ {
lib, lib,
config, config,
namespace, namespace,
... ...
}: }:
with lib; with lib;
with lib.${namespace}; with lib.${namespace};
@ -13,7 +13,7 @@ let
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJqbT8AdnS++ZoL7TYg2skQUvfWx29Iq+mEYv2Ok2QHb arbeit" "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJqbT8AdnS++ZoL7TYg2skQUvfWx29Iq+mEYv2Ok2QHb arbeit"
]; ];
in in
{ {
options.${namespace}.services.ssh = { options.${namespace}.services.ssh = {
enable = mkBoolOpt false "OpenSSH"; enable = mkBoolOpt false "OpenSSH";
keys = mkOption { keys = mkOption {
@ -27,9 +27,10 @@ in
# Enable the OpenSSH daemon. # Enable the OpenSSH daemon.
services.openssh = enabled; services.openssh = enabled;
users.users.philipp.openssh.authorizedKeys = { users.users.philipp.openssh.authorizedKeys = {
inherit (cfg) inherit (cfg)
keys; keys
;
}; };
}; };

View file

@ -0,0 +1,50 @@
{
config,
lib,
pkgs,
namespace,
...
}:
with lib;
with lib.${namespace};
let
cfg = config.${namespace}.system.gstreamer;
in
{
options.${namespace}.system.gstreamer = with types; {
enable = mkBoolOpt false "Whether or not to enable gstreamer support.";
};
config = mkIf cfg.enable {
environment.systemPackages = with pkgs; [
# Video/Audio data composition framework tools like "gst-inspect", "gst-launch" ...
gst_all_1.gstreamer
# Common plugins like "filesrc" to combine within e.g. gst-launch
gst_all_1.gst-plugins-base
# Specialized plugins separated by quality
gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-ugly
# Plugins to reuse ffmpeg to play almost every video format
gst_all_1.gst-libav
# Support the Video Audio (Hardware) Acceleration API
gst_all_1.gst-vaapi
];
environment.sessionVariables.GST_PLUGIN_SYSTEM_PATH_1_0 =
lib.makeSearchPathOutput "lib" "lib/gstreamer-1.0"
(
with pkgs.gst_all_1;
[
gstreamer
gst-plugins-base
gst-plugins-good
gst-plugins-bad
gst-plugins-ugly
gst-libav
gst-vaapi
]
);
};
}

View file

@ -14,9 +14,10 @@ with lib.${namespace};
]; ];
# Use the extlinux boot loader. (NixOS wants to enable GRUB by default) # Use the extlinux boot loader. (NixOS wants to enable GRUB by default)
boot.loader.grub.enable = false; boot.loader = {
# Enables the generation of /boot/extlinux/extlinux.conf grub.enable = false;
boot.loader.generic-extlinux-compatible.enable = true; generic-extlinux-compatible.enable = true;
};
nix.settings.experimental-features = [ nix.settings.experimental-features = [
"nix-command" "nix-command"
@ -32,14 +33,6 @@ with lib.${namespace};
# Select internationalisation properties. # Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";
snowfallorg.users.philipp = {
create = true;
admin = true;
home = {
enable = true;
};
};
users.users.philipp = { users.users.philipp = {
isNormalUser = true; isNormalUser = true;
description = "Philipp Böhm"; description = "Philipp Böhm";
@ -47,12 +40,15 @@ with lib.${namespace};
"wheel" "wheel"
"caddy" "caddy"
]; ];
openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDwUGxdwTgjc61VNh7QNfrrZwz5yHkJ6AGsRsgoDV3a4 philipp-mobile"
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJqbT8AdnS++ZoL7TYg2skQUvfWx29Iq+mEYv2Ok2QHb arbeit"
];
}; };
snowfallorg.users.philipp = {
create = true;
admin = true;
home = {
enable = true;
};
};
awesome-flake = { awesome-flake = {
services = { services = {

View file

@ -9,10 +9,16 @@ with lib.${namespace};
./hardware-configuration.nix ./hardware-configuration.nix
]; ];
boot.loader.systemd-boot.enable = true; boot = {
boot.loader.systemd-boot.consoleMode = "max"; binfmt.emulatedSystems = [ "aarch64-linux" ];
boot.loader.efi.canTouchEfiVariables = true; loader = {
boot.binfmt.emulatedSystems = [ "aarch64-linux" ]; efi.canTouchEfiVariables = true;
systemd-boot = {
enable = true;
consoleMode = "max";
};
};
};
virtualisation.libvirtd.enable = true; virtualisation.libvirtd.enable = true;
@ -25,6 +31,15 @@ with lib.${namespace};
networking.hostName = "bodenheizung"; networking.hostName = "bodenheizung";
users.users.philipp = {
isNormalUser = true;
description = "Philipp Böhm";
extraGroups = [
"wheel"
"caddy"
];
};
snowfallorg.users.philipp = { snowfallorg.users.philipp = {
create = true; create = true;
admin = true; admin = true;
@ -38,6 +53,7 @@ with lib.${namespace};
neovim = enabled; neovim = enabled;
eza = enabled; eza = enabled;
nh = enabled; nh = enabled;
wireguard = enabled;
}; };
apps = { apps = {
@ -49,6 +65,7 @@ with lib.${namespace};
services = { services = {
btrfs = enabled; btrfs = enabled;
gns3 = enabled;
}; };
system = { system = {
@ -56,6 +73,7 @@ with lib.${namespace};
enable = true; enable = true;
emoji = true; emoji = true;
}; };
gstreamer = enabled;
gnupg = enabled; gnupg = enabled;
}; };
}; };