From a08c2d0be95e0bddd05abc75ad3b5b475837ca1c Mon Sep 17 00:00:00 2001 From: Paul Zinselmeyer Date: Tue, 3 Sep 2024 12:59:04 +0200 Subject: [PATCH] first try deployment --- flake.lock | 8 +++--- hardware-configuration.nix | 59 ++++++++++++++++++++++++++++++++++++++ stube-pc/home-manager.nix | 20 ++++++++----- stube-pc/system.nix | 3 +- 4 files changed, 78 insertions(+), 12 deletions(-) create mode 100644 hardware-configuration.nix diff --git a/flake.lock b/flake.lock index 1f7d989..f602920 100644 --- a/flake.lock +++ b/flake.lock @@ -165,11 +165,11 @@ ] }, "locked": { - "lastModified": 1724879978, - "narHash": "sha256-xVyj6l5b7XG0ZFaBuB84SJZWtvxguXH8gkwNN46MvnY=", + "lastModified": 1724925796, + "narHash": "sha256-MglMNrWupMl9GqlRVQ1sHCvSTdg6Q3Ku2++PKsuSZ0I=", "ref": "refs/heads/master", - "rev": "500ef0ed5ae071daa719c2de7bb3464af61dab80", - "revCount": 4, + "rev": "d82c13cdf6db31e697e6eb807e500e5d9c575892", + "revCount": 5, "type": "git", "url": "https://git.pfzetto.de/ffmh/thekenlicht" }, diff --git a/hardware-configuration.nix b/hardware-configuration.nix new file mode 100644 index 0000000..38fb3a4 --- /dev/null +++ b/hardware-configuration.nix @@ -0,0 +1,59 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/profiles/qemu-guest.nix") + ]; + + boot.initrd.availableKernelModules = [ "ahci" "xhci_pci" "ehci_pci" "usb_storage" "usbhid" "sd_mod" "sr_mod" "sdhci_pci" ]; + boot.initrd.kernelModules = [ "amdgpu" ]; + boot.kernelModules = [ "kvm-amd" "radeon.cik_support=0" "amdgpu.cik_support=1" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "none"; + fsType = "tmpfs"; + options = [ "defaults" "size=2G" "mode=755" ]; + }; + + fileSystems."/nix" = + { device = "/dev/disk/by-uuid/a1872869-9d8d-4ef2-9fce-16cb0a562e6c"; + fsType = "btrfs"; + options = [ "subvol=nix" ]; + }; + + fileSystems."/persist" = + { device = "/dev/disk/by-uuid/a1872869-9d8d-4ef2-9fce-16cb0a562e6c"; + fsType = "btrfs"; + options = [ "subvol=persist" ]; + neededForBoot = true; + }; + + fileSystems."/swap" = + { device = "/dev/disk/by-uuid/a1872869-9d8d-4ef2-9fce-16cb0a562e6c"; + fsType = "btrfs"; + options = [ "subvol=swap" ]; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/3b635ee4-a134-4d2b-af7d-36e3930314d9"; + fsType = "ext4"; + }; + + swapDevices = [ { device = "/swap/swapfile"; } ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.enp2s0.useDHCP = lib.mkDefault true; + + hardware.enableRedistributableFirmware = true; + hardware.cpu.amd.updateMicrocode = true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; +} diff --git a/stube-pc/home-manager.nix b/stube-pc/home-manager.nix index 8622583..7757433 100644 --- a/stube-pc/home-manager.nix +++ b/stube-pc/home-manager.nix @@ -305,17 +305,23 @@ in "panels/panel-2/plugin-ids" = [ 200 201 210 211 212 213 220 221 ]; }; xfce4-desktop = { - # right monitor (no background image to save displaylink bandwidth) - "backdrop/screen0/monitorDP-1/workspace0/image-style" = 0; - "backdrop/screen0/monitorDP-1/workspace0/color-style" = 0; - "backdrop/screen0/monitorDP-1/workspace0/rgba1" = [0.369 0.361 0.392 1]; - # left monitor - "backdrop/screen0/monitorVGA-1/workspace0/image-style" = 5; - "backdrop/screen0/monitorVGA-1/workspace0/last-image" = "${./background.jpg}"; + "backdrop/screen0/monitorDP-1/workspace0/image-style" = 5; + "backdrop/screen0/monitorDP-1/workspace0/color-style" = 0; + "backdrop/screen0/monitorDP-1/workspace0/last-image" = "${./background.jpg}"; + + # right monitor (no background image to save displaylink bandwidth) + "backdrop/screen0/monitorVGA-1/workspace0/image-style" = 0; + "backdrop/screen0/monitorVGA-1/workspace0/color-style" = 0; + "backdrop/screen0/monitorVGA-1/workspace0/rgba1" = [0.369 0.361 0.392 1]; + + "backdrop/screen0/monitorVGA-1-1/workspace0/image-style" = 0; + "backdrop/screen0/monitorVGA-1-1/workspace0/color-style" = 0; + "backdrop/screen0/monitorVGA-1-1/workspace0/rgba1" = [0.369 0.361 0.392 1]; # beamer "backdrop/screen0/monitorHDMI-1/workspace0/image-style" = 5; + "backdrop/screen0/monitorHDMI-1/workspace0/color-style" = 0; "backdrop/screen0/monitorHDMI-1/workspace0/last-image" = "${./background.jpg}"; # virtual machine screen diff --git a/stube-pc/system.nix b/stube-pc/system.nix index a718c6c..6cf3d8a 100644 --- a/stube-pc/system.nix +++ b/stube-pc/system.nix @@ -16,6 +16,7 @@ networking.hostName = "stube-pc"; networking.networkmanager.enable = true; networking.firewall.enable = true; + networking.interfaces.lo.ipv4.addresses = [ { address="127.0.0.3"; prefixLength=8; }]; # timezone time.timeZone = "Europe/Berlin"; @@ -69,7 +70,7 @@ services.thekenlicht-daemon = { enable = true; - serialPort = "/dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0"; + serialPort = "/dev/serial/by-id/usb-Arduino__www.arduino.cc__Arduino_Uno_856333434393513111C0-if00"; }; # enable gpu support