re-split direcories #1
11 changed files with 113 additions and 101 deletions
29
flake.nix
29
flake.nix
|
@ -92,7 +92,8 @@
|
||||||
importDir =
|
importDir =
|
||||||
dir:
|
dir:
|
||||||
(lib.attrsets.mapAttrs' (
|
(lib.attrsets.mapAttrs' (
|
||||||
m: _: lib.attrsets.nameValuePair (lib.strings.removeSuffix ".nix" m) (import "${dir}/${m}")
|
m: _:
|
||||||
|
lib.attrsets.nameValuePair (lib.strings.removeSuffix ".nix" m) { imports = [ "${dir}/${m}" ]; }
|
||||||
) (builtins.readDir dir));
|
) (builtins.readDir dir));
|
||||||
in
|
in
|
||||||
rec {
|
rec {
|
||||||
|
@ -113,6 +114,16 @@
|
||||||
stateVersion = "22.11";
|
stateVersion = "22.11";
|
||||||
autoUpgrade.flake = "git+https://git.berlin.ccc.de/vinzenz/nixos-configuration.git";
|
autoUpgrade.flake = "git+https://git.berlin.ccc.de/vinzenz/nixos-configuration.git";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nixpkgs.overlays = [
|
||||||
|
overlays.unstable-packages
|
||||||
|
overlays.zerforschen
|
||||||
|
];
|
||||||
|
|
||||||
|
nix.settings.experimental-features = [
|
||||||
|
"nix-command"
|
||||||
|
"flakes"
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
./hosts/${device}/hardware.nix
|
./hosts/${device}/hardware.nix
|
||||||
|
@ -124,27 +135,25 @@
|
||||||
self.nixosModules.autoupdate
|
self.nixosModules.autoupdate
|
||||||
self.nixosModules.openssh
|
self.nixosModules.openssh
|
||||||
self.nixosModules.tailscale
|
self.nixosModules.tailscale
|
||||||
|
self.nixosModules.allowed-unfree-list
|
||||||
|
self.nixosModules.extra-caches
|
||||||
./modules/nixpkgs.nix
|
./modules/nixpkgs.nix
|
||||||
|
|
||||||
{
|
|
||||||
nixpkgs.overlays = [
|
|
||||||
overlays.unstable-packages
|
|
||||||
overlays.zerforschen
|
|
||||||
];
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
++ (nixpkgs.lib.optionals (builtins.elem device homeDevices) [
|
++ (nixpkgs.lib.optionals (builtins.elem device homeDevices) [
|
||||||
{
|
{
|
||||||
home-manager.extraSpecialArgs = specialArgs;
|
home-manager.extraSpecialArgs = specialArgs;
|
||||||
|
|
||||||
time.timeZone = "Europe/Berlin";
|
time.timeZone = "Europe/Berlin";
|
||||||
|
|
||||||
|
home-manager.sharedModules = [
|
||||||
|
self.homeModules.adwaita
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
self.nixosModules.pkgs-unstable
|
self.nixosModules.pkgs-unstable
|
||||||
self.nixosModules.niri
|
self.nixosModules.niri
|
||||||
self.nixosModules.kdeconnect
|
self.nixosModules.kdeconnect
|
||||||
self.nixosModules.en-de
|
self.nixosModules.en-de
|
||||||
self.nixosModules.adwaita
|
|
||||||
self.nixosModules.gnome
|
self.nixosModules.gnome
|
||||||
./modules/home-manager.nix
|
./modules/home-manager.nix
|
||||||
|
|
||||||
|
@ -178,6 +187,8 @@
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
homeModules = importDir ./homeModules;
|
||||||
|
|
||||||
formatter = forAllSystems ({ pkgs, ... }: pkgs.nixfmt-tree);
|
formatter = forAllSystems ({ pkgs, ... }: pkgs.nixfmt-tree);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
|
{ nixosModules, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
../../modules/gnome.nix
|
../../modules/gnome.nix
|
||||||
../../modules/gaming.nix
|
../../modules/gaming.nix
|
||||||
|
nixosModules.steam
|
||||||
../../modules/desktop-environment.nix
|
../../modules/desktop-environment.nix
|
||||||
../../modules/desktop-hardware.nix
|
../../modules/desktop-hardware.nix
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
../../modules/gnome.nix
|
../../modules/gnome.nix
|
||||||
../../modules/gaming.nix
|
../../modules/gaming.nix
|
||||||
|
nixosModules.steam
|
||||||
nixosModules.printing
|
nixosModules.printing
|
||||||
nixosModules.podman
|
nixosModules.podman
|
||||||
../../modules/desktop-environment.nix
|
../../modules/desktop-environment.nix
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
imports = [
|
imports = [
|
||||||
../../modules/gnome.nix
|
../../modules/gnome.nix
|
||||||
../../modules/gaming.nix
|
../../modules/gaming.nix
|
||||||
|
nixosModules.steam
|
||||||
nixosModules.printing
|
nixosModules.printing
|
||||||
nixosModules.podman
|
nixosModules.podman
|
||||||
#../../modules/niri.nix
|
#../../modules/niri.nix
|
||||||
|
|
|
@ -56,6 +56,7 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
binfmt = true;
|
binfmt = true;
|
||||||
};
|
};
|
||||||
|
xwayland.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
systemd = {
|
systemd = {
|
||||||
|
|
|
@ -8,7 +8,6 @@
|
||||||
extraPackages32 = with pkgs; [ mangohud ];
|
extraPackages32 = with pkgs; [ mangohud ];
|
||||||
};
|
};
|
||||||
|
|
||||||
steam-hardware.enable = true;
|
|
||||||
xpadneo.enable = true;
|
xpadneo.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -23,59 +22,9 @@
|
||||||
lutris
|
lutris
|
||||||
];
|
];
|
||||||
|
|
||||||
programs = {
|
networking.firewall.allowedUDPPorts = [
|
||||||
xwayland.enable = true;
|
# Factorio
|
||||||
steam = {
|
34197
|
||||||
enable = true;
|
|
||||||
remotePlay.openFirewall = true;
|
|
||||||
dedicatedServer.openFirewall = true;
|
|
||||||
localNetworkGameTransfers.openFirewall = true;
|
|
||||||
gamescopeSession.enable = false;
|
|
||||||
};
|
|
||||||
gamemode.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
networking.firewall = {
|
|
||||||
allowedUDPPorts = [
|
|
||||||
# Factorio
|
|
||||||
34197
|
|
||||||
|
|
||||||
# steam network transfer
|
|
||||||
3478
|
|
||||||
];
|
|
||||||
|
|
||||||
allowedTCPPorts = [
|
|
||||||
# steam network transfer
|
|
||||||
24070
|
|
||||||
];
|
|
||||||
|
|
||||||
allowedTCPPortRanges = [
|
|
||||||
# steam network transfer
|
|
||||||
{
|
|
||||||
from = 27015;
|
|
||||||
to = 27050;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
|
|
||||||
allowedUDPPortRanges = [
|
|
||||||
# steam network transfer
|
|
||||||
{
|
|
||||||
from = 4379;
|
|
||||||
to = 4380;
|
|
||||||
}
|
|
||||||
{
|
|
||||||
from = 27000;
|
|
||||||
to = 27100;
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
allowedUnfreePackages = [
|
|
||||||
"steam"
|
|
||||||
"steam-original"
|
|
||||||
"steam-run"
|
|
||||||
"steam-unwrapped"
|
|
||||||
"ut1999"
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,41 +1,9 @@
|
||||||
{ config, lib, ... }:
|
|
||||||
{
|
{
|
||||||
options.allowedUnfreePackages = lib.mkOption {
|
documentation = {
|
||||||
type = lib.types.listOf lib.types.str;
|
enable = true; # documentation of packages
|
||||||
default = [ ];
|
nixos.enable = false; # nixos documentation
|
||||||
example = [ "steam" ];
|
man.enable = true; # manual pages and the man command
|
||||||
};
|
info.enable = false; # info pages and the info command
|
||||||
config = {
|
doc.enable = false; # documentation distributed in packages' /share/doc
|
||||||
nixpkgs.config = {
|
|
||||||
# https://github.com/NixOS/nixpkgs/issues/197325#issuecomment-1579420085
|
|
||||||
allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) config.allowedUnfreePackages;
|
|
||||||
};
|
|
||||||
|
|
||||||
nix.settings = {
|
|
||||||
substituters = [
|
|
||||||
"https://cache.nixos.org/"
|
|
||||||
"https://nix-community.cachix.org"
|
|
||||||
"https://cache.lix.systems"
|
|
||||||
"https://niri.cachix.org"
|
|
||||||
];
|
|
||||||
trusted-public-keys = [
|
|
||||||
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
|
||||||
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
|
||||||
"cache.lix.systems:aBnZUw8zA7H35Cz2RyKFVs3H4PlGTLawyY5KRbvJR8o="
|
|
||||||
"niri.cachix.org-1:Wv0OmO7PsuocRKzfDoJ3mulSl7Z6oezYhGhR+3W2964="
|
|
||||||
];
|
|
||||||
experimental-features = [
|
|
||||||
"nix-command"
|
|
||||||
"flakes"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
documentation = {
|
|
||||||
enable = true; # documentation of packages
|
|
||||||
nixos.enable = false; # nixos documentation
|
|
||||||
man.enable = true; # manual pages and the man command
|
|
||||||
info.enable = false; # info pages and the info command
|
|
||||||
doc.enable = false; # documentation distributed in packages' /share/doc
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
15
nixosModules/allowed-unfree-list.nix
Normal file
15
nixosModules/allowed-unfree-list.nix
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
{ lib, config, ... }:
|
||||||
|
{
|
||||||
|
options.allowedUnfreePackages = lib.mkOption {
|
||||||
|
type = lib.types.listOf lib.types.str;
|
||||||
|
default = [ ];
|
||||||
|
example = [ "steam" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
config = {
|
||||||
|
nixpkgs.config = {
|
||||||
|
# https://github.com/NixOS/nixpkgs/issues/197325#issuecomment-1579420085
|
||||||
|
allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) config.allowedUnfreePackages;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
16
nixosModules/extra-caches.nix
Normal file
16
nixosModules/extra-caches.nix
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
{
|
||||||
|
nix.settings = {
|
||||||
|
substituters = [
|
||||||
|
"https://cache.nixos.org/"
|
||||||
|
"https://nix-community.cachix.org"
|
||||||
|
"https://cache.lix.systems"
|
||||||
|
"https://niri.cachix.org"
|
||||||
|
];
|
||||||
|
trusted-public-keys = [
|
||||||
|
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
|
||||||
|
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
|
||||||
|
"cache.lix.systems:aBnZUw8zA7H35Cz2RyKFVs3H4PlGTLawyY5KRbvJR8o="
|
||||||
|
"niri.cachix.org-1:Wv0OmO7PsuocRKzfDoJ3mulSl7Z6oezYhGhR+3W2964="
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
48
nixosModules/steam.nix
Normal file
48
nixosModules/steam.nix
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
{ nixosModules, ... }:
|
||||||
|
{
|
||||||
|
imports = [ nixosModules.allowed-unfree-list ];
|
||||||
|
|
||||||
|
hardware.steam-hardware.enable = true;
|
||||||
|
|
||||||
|
programs = {
|
||||||
|
steam = {
|
||||||
|
enable = true;
|
||||||
|
remotePlay.openFirewall = true;
|
||||||
|
dedicatedServer.openFirewall = true;
|
||||||
|
localNetworkGameTransfers.openFirewall = true;
|
||||||
|
gamescopeSession.enable = false;
|
||||||
|
};
|
||||||
|
gamemode.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
# steam network transfer
|
||||||
|
networking.firewall = {
|
||||||
|
allowedUDPPorts = [ 3478 ];
|
||||||
|
allowedTCPPorts = [ 24070 ];
|
||||||
|
|
||||||
|
allowedTCPPortRanges = [
|
||||||
|
{
|
||||||
|
from = 27015;
|
||||||
|
to = 27050;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
allowedUDPPortRanges = [
|
||||||
|
{
|
||||||
|
from = 4379;
|
||||||
|
to = 4380;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
from = 27000;
|
||||||
|
to = 27100;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
allowedUnfreePackages = [
|
||||||
|
"steam"
|
||||||
|
"steam-original"
|
||||||
|
"steam-run"
|
||||||
|
"steam-unwrapped"
|
||||||
|
];
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue