Compare commits
No commits in common. "c52624db8f026314f4479f50590a5153d5c616c7" and "78ab704ca3f7caefefb590eb76ecb9dc029fd51b" have entirely different histories.
c52624db8f
...
78ab704ca3
9 changed files with 62 additions and 137 deletions
53
hosts/main.nix
Normal file
53
hosts/main.nix
Normal file
|
@ -0,0 +1,53 @@
|
|||
{ inputs, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../nix-os/core.nix
|
||||
../nix-os/core-desktop.nix
|
||||
../nix-os/nvidia.nix
|
||||
../nix-os/docker.nix
|
||||
../nix-os/razer.nix
|
||||
../nix-os/desktopManagers/gnome.nix
|
||||
../nix-os/displayManagers/gdm.nix
|
||||
#../nix-os/desktop/kde-plasma.nix
|
||||
../nix-os/shell.nix
|
||||
../nix-os/virtualization.nix
|
||||
../nix-os/polkit/disable-shutdown.nix
|
||||
../nix-os/locale.nix
|
||||
../nix-os/adb.nix
|
||||
../nix-os/account.nix
|
||||
../nix-os/xdg-default-apps.nix
|
||||
../nix-os/services/nix-binary-cache.nix
|
||||
../nix-os/udev.nix
|
||||
../nix-os/gnupg.nix
|
||||
|
||||
"${inputs.nixos-vscode-server}"
|
||||
];
|
||||
|
||||
config = {
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
networking.hostName = "wroclaw-main";
|
||||
|
||||
services.xrdp.enable = true;
|
||||
users.groups."tsusers".members = [ "wroclaw" ];
|
||||
|
||||
services.printing.drivers = with pkgs; [
|
||||
hplip
|
||||
];
|
||||
|
||||
# nixos-vscode-server module needs this
|
||||
programs.nix-ld.enable = true;
|
||||
services.vscode-server = {
|
||||
enable = true;
|
||||
extraRuntimeDependencies = with pkgs; [
|
||||
docker
|
||||
];
|
||||
};
|
||||
|
||||
services.printing.startWhenNeeded = false;
|
||||
|
||||
system.stateVersion = "23.05";
|
||||
};
|
||||
}
|
|
@ -1,64 +0,0 @@
|
|||
{ inputs, pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
../../nix-os/core.nix
|
||||
../../nix-os/core-desktop.nix
|
||||
../../nix-os/nvidia.nix
|
||||
../../nix-os/docker.nix
|
||||
../../nix-os/razer.nix
|
||||
../../nix-os/desktopManagers/gnome.nix
|
||||
../../nix-os/displayManagers/gdm.nix
|
||||
../../nix-os/shell.nix
|
||||
../../nix-os/virtualization.nix
|
||||
../../nix-os/polkit/disable-shutdown.nix
|
||||
../../nix-os/locale.nix
|
||||
../../nix-os/adb.nix
|
||||
../../nix-os/account.nix
|
||||
../../nix-os/xdg-default-apps.nix
|
||||
../../nix-os/services/nix-binary-cache.nix
|
||||
../../nix-os/udev.nix
|
||||
../../nix-os/gnupg.nix
|
||||
|
||||
"${inputs.nixos-vscode-server}"
|
||||
];
|
||||
|
||||
config = {
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
networking.hostName = "wroclaw-main";
|
||||
|
||||
services.xrdp.enable = true;
|
||||
users.groups."tsusers".members = [ "wroclaw" ];
|
||||
|
||||
services.printing.drivers = with pkgs; [
|
||||
hplip
|
||||
];
|
||||
|
||||
# nixos-vscode-server module needs this
|
||||
programs.nix-ld.enable = true;
|
||||
services.vscode-server = {
|
||||
enable = true;
|
||||
extraRuntimeDependencies = with pkgs; [
|
||||
docker
|
||||
];
|
||||
};
|
||||
|
||||
services.pipewire.wireplumber.configPackages = [(
|
||||
pkgs.stdenvNoCC.mkDerivation {
|
||||
name = "wireplumber-config";
|
||||
src = ./wireplumber;
|
||||
phases = [ "installPhase" ];
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/wireplumber/wireplumber.conf.d
|
||||
cp -r $src/* $out/share/wireplumber/wireplumber.conf.d
|
||||
'';
|
||||
}
|
||||
)];
|
||||
|
||||
services.printing.startWhenNeeded = false;
|
||||
|
||||
system.stateVersion = "23.05";
|
||||
};
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
monitor.alsa.rules = [{
|
||||
matches = [{
|
||||
node.name = "alsa_output.pci-0000_00_1f.3.iec958-stereo"
|
||||
}]
|
||||
actions = {
|
||||
update-props = {
|
||||
node.description = "Digital Output"
|
||||
}
|
||||
}
|
||||
}]
|
|
@ -1,10 +0,0 @@
|
|||
monitor.alsa.rules = [{
|
||||
matches = [{
|
||||
node.name = "alsa_output.pci-0000_01_00.1.hdmi-stereo"
|
||||
}]
|
||||
actions = {
|
||||
update-props = {
|
||||
node.description = "Monitor speakers"
|
||||
}
|
||||
}
|
||||
}]
|
|
@ -1,11 +0,0 @@
|
|||
monitor.alsa.rules = [{
|
||||
matches = [{
|
||||
device.name = "alsa_card.usb-Razer_Razer_USB_Audio_Controller_000000000000000000000000-00"
|
||||
}]
|
||||
actions = {
|
||||
update-props = {
|
||||
device.description = "Headphones"
|
||||
device.profile = "Pro Audio"
|
||||
}
|
||||
}
|
||||
}]
|
|
@ -1,10 +0,0 @@
|
|||
monitor.alsa.rules = [{
|
||||
matches = [{
|
||||
node.name = "alsa_input.usb-Razer_Razer_USB_Audio_Controller_000000000000000000000000-00.pro-input-0"
|
||||
}]
|
||||
actions = {
|
||||
update-props = {
|
||||
node.description = "Headphones"
|
||||
}
|
||||
}
|
||||
}]
|
|
@ -1,22 +0,0 @@
|
|||
monitor.alsa.rules = [
|
||||
{
|
||||
matches = [{
|
||||
node.name = "alsa_output.usb-Razer_Razer_USB_Audio_Controller_000000000000000000000000-00.pro-output-0"
|
||||
}]
|
||||
actions = {
|
||||
update-props = {
|
||||
node.description = "Headphones (Chat)"
|
||||
}
|
||||
}
|
||||
}
|
||||
{
|
||||
matches = [{
|
||||
node.name = "alsa_output.usb-Razer_Razer_USB_Audio_Controller_000000000000000000000000-00.pro-output-1"
|
||||
}]
|
||||
actions = {
|
||||
update-props = {
|
||||
node.description = "Headphones (Game)"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
4
lock.nix
4
lock.nix
|
@ -4,7 +4,7 @@
|
|||
sha256 = "1rq8mrlmbzpcbv9ys0x88alw30ks70jlmvnfr2j8v830yy5wvw7h";
|
||||
};
|
||||
nixpkgs = {
|
||||
revision = "05405724efa137a0b899cce5ab4dde463b4fd30b";
|
||||
sha256 = "06490pn22x9xl4chfx12iwdgx7nlbn14v8x05rnv2y1nancljisl";
|
||||
revision = "0c53b6b8c2a3e46c68e04417e247bba660689c9d";
|
||||
sha256 = "02ag4j9v48h861bakxf7nvcz85wl6dv8wvfj0v1r7v7j8jpwp8vg";
|
||||
};
|
||||
}
|
||||
|
|
15
outputs.nix
15
outputs.nix
|
@ -22,22 +22,22 @@ self = {
|
|||
filePaths = lib.pipe ./hosts [
|
||||
builtins.readDir
|
||||
( lib.filterAttrs (name: type:
|
||||
( # regular .nix files
|
||||
(type == "regular" && lib.hasSuffix ".nix" name)
|
||||
|| # directories that contain a default.nix file
|
||||
(type == "directory" && builtins.pathExists "${./hosts}/${name}/default.nix")
|
||||
)
|
||||
# filter out non-nix files
|
||||
type == "regular"
|
||||
# filter out files that don't end in .nix
|
||||
&& lib.hasSuffix ".nix" name
|
||||
# filter out files that start with .
|
||||
&& !lib.hasPrefix "." name
|
||||
))
|
||||
(lib.mapAttrsToList (name: _: name))
|
||||
];
|
||||
nixosSystem = import "${inputs.nixpkgs}/nixos/lib/eval-config.nix";
|
||||
in
|
||||
# mapped list of nix file paths to attrSet with initialized NixOS configurations,
|
||||
# whose names are derived from file names
|
||||
lib.pipe filePaths [
|
||||
(builtins.mapAttrs (name: type: {
|
||||
name = if type == "directory" then name else builtins.substring 0 (builtins.stringLength name - 4) name;
|
||||
(builtins.map (name: {
|
||||
name = builtins.substring 0 (builtins.stringLength name - 4) name;
|
||||
value = nixosSystem {
|
||||
inherit lib;
|
||||
modules = [
|
||||
|
@ -53,7 +53,6 @@ self = {
|
|||
specialArgs = { inherit self inputs; };
|
||||
};
|
||||
}))
|
||||
builtins.attrValues
|
||||
builtins.listToAttrs
|
||||
];
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue