From 4baa329a4af319fdbf29325128caac54a1c11629 Mon Sep 17 00:00:00 2001 From: Daniel Meiburg Date: Sat, 19 Oct 2024 15:33:34 +0200 Subject: [PATCH] update --- flake.lock | 22 ++++++------ flake.nix | 4 +-- hosts/dmeiburg/configuration.nix | 1 + hosts/home-workstations.nix | 22 +++++++++--- hosts/p14s/configuration.nix | 3 +- hosts/p14s/hardware-configuration.nix | 4 ++- hosts/p14s/hardware-configuration.nix.back | 41 ++++++++++++++++++++++ hosts/workstation.nix | 35 +++++++++++++++--- 8 files changed, 108 insertions(+), 24 deletions(-) create mode 100644 hosts/p14s/hardware-configuration.nix.back diff --git a/flake.lock b/flake.lock index 39c5b06..4aabb0e 100644 --- a/flake.lock +++ b/flake.lock @@ -7,27 +7,27 @@ ] }, "locked": { - "lastModified": 1715381426, - "narHash": "sha256-wPuqrAQGdv3ISs74nJfGb+Yprm23U/rFpcHFFNWgM94=", + "lastModified": 1726989464, + "narHash": "sha256-Vl+WVTJwutXkimwGprnEtXc/s/s8sMuXzqXaspIGlwM=", "owner": "nix-community", "repo": "home-manager", - "rev": "ab5542e9dbd13d0100f8baae2bc2d68af901f4b4", + "rev": "2f23fa308a7c067e52dfcc30a0758f47043ec176", "type": "github" }, "original": { "owner": "nix-community", - "ref": "release-23.11", + "ref": "release-24.05", "repo": "home-manager", "type": "github" } }, "nixos-hardware": { "locked": { - "lastModified": 1716034089, - "narHash": "sha256-QBfab6V4TeQ6Y4NiXVrEATdQuhCNFNaXt/L1K/Zw+zc=", + "lastModified": 1728729581, + "narHash": "sha256-oazkQ/z7r43YkDLLQdMg8oIB3CwWNb+2ZrYOxtLEWTQ=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "b55712de78725c8fcde422ee0a0fe682046e73c3", + "rev": "a8dd1b21995964b115b1e3ec639dd6ce24ab9806", "type": "github" }, "original": { @@ -38,16 +38,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1715948915, - "narHash": "sha256-dxMrggEogQuJQr6f02VAFtsSNtjEPkgxczeiyW7WOQc=", + "lastModified": 1729044727, + "narHash": "sha256-GKJjtPY+SXfLF/yTN7M2cAnQB6RERFKnQhD8UvPSf3M=", "owner": "nixos", "repo": "nixpkgs", - "rev": "bacb8503d3a51d9e9b52e52a1ba45e2c380ad07d", + "rev": "dc2e0028d274394f73653c7c90cc63edbb696be1", "type": "github" }, "original": { "owner": "nixos", - "ref": "nixos-23.11", + "ref": "nixos-24.05", "repo": "nixpkgs", "type": "github" } diff --git a/flake.nix b/flake.nix index e9f8821..3bc4a11 100644 --- a/flake.nix +++ b/flake.nix @@ -2,10 +2,10 @@ description = "System config"; inputs = { - nixpkgs.url = github:nixos/nixpkgs/nixos-23.11; + nixpkgs.url = github:nixos/nixpkgs/nixos-24.05; nixos-hardware.url = github:NixOS/nixos-hardware; home-manager = { - url = "github:nix-community/home-manager/release-23.11"; + url = "github:nix-community/home-manager/release-24.05"; inputs.nixpkgs.follows = "nixpkgs"; }; }; diff --git a/hosts/dmeiburg/configuration.nix b/hosts/dmeiburg/configuration.nix index f9bc843..374d5f8 100644 --- a/hosts/dmeiburg/configuration.nix +++ b/hosts/dmeiburg/configuration.nix @@ -1,4 +1,5 @@ # Edit this configuration file to define what should be installed on + # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). diff --git a/hosts/home-workstations.nix b/hosts/home-workstations.nix index 62b1eb4..44f8352 100644 --- a/hosts/home-workstations.nix +++ b/hosts/home-workstations.nix @@ -1,11 +1,12 @@ { config, pkgs, ...}: { home.packages = with pkgs; [ + anki calc clang-tools - conda - dig + # conda + # dig ffmpeg - firefox-wayland + #firefox-wayland fuzzel fzf gcc @@ -13,25 +14,34 @@ gnumake gnupg gthumb + # gnuradio + # gnuradioPackages.osmosdr + # hackrf htop + # influxdb2-cli kanshi kitty libnotify # for mako libreoffice megatools mpv + git-lfs networkmanagerapplet nodejs # copilot requirement obsidian openconnect - owncloud-client + #owncloud-client pass pavucontrol pinentry-qt polkit_gnome pulseaudio pynitrokey - rpi-imager + #protonvpn-cli + protonmail-desktop + #rclone + #rpi-imager + rawtherapee sshfs swaybg thunderbird @@ -40,6 +50,8 @@ unzip waybar wdisplays + wf-recorder + #wireshark wl-clipboard xdg-utils zathura diff --git a/hosts/p14s/configuration.nix b/hosts/p14s/configuration.nix index 1192d2d..ffee640 100644 --- a/hosts/p14s/configuration.nix +++ b/hosts/p14s/configuration.nix @@ -1,6 +1,7 @@ { config, pkgs, ... }: { + boot.kernelPackages = pkgs.linuxPackages_6_6; # Bootloader. boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; @@ -24,7 +25,7 @@ # Enable WireGuard networking.wireguard.interfaces = { wg0 = { - ips = [ "10.100.0.3/24" ]; + ips = [ "10.100.0.2/24" ]; listenPort = 51820; privateKeyFile = "/home/dm/.wireguard/p14s"; diff --git a/hosts/p14s/hardware-configuration.nix b/hosts/p14s/hardware-configuration.nix index 7fe1e98..01a752b 100644 --- a/hosts/p14s/hardware-configuration.nix +++ b/hosts/p14s/hardware-configuration.nix @@ -8,7 +8,7 @@ [ (modulesPath + "/installer/scan/not-detected.nix") ]; - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "sd_mod" "sdhci_pci" ]; + boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "sdhci_pci" ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [ ]; @@ -23,6 +23,7 @@ fileSystems."/boot" = { device = "/dev/disk/by-uuid/963E-FF34"; fsType = "vfat"; + options = [ "fmask=0022" "dmask=0022" ]; }; swapDevices = [ ]; @@ -34,6 +35,7 @@ networking.useDHCP = lib.mkDefault true; # networking.interfaces.enp2s0f0.useDHCP = lib.mkDefault true; # networking.interfaces.enp5s0.useDHCP = lib.mkDefault true; + # networking.interfaces.wg0.useDHCP = lib.mkDefault true; # networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; diff --git a/hosts/p14s/hardware-configuration.nix.back b/hosts/p14s/hardware-configuration.nix.back new file mode 100644 index 0000000..7fe1e98 --- /dev/null +++ b/hosts/p14s/hardware-configuration.nix.back @@ -0,0 +1,41 @@ +# 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 + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "sd_mod" "sdhci_pci" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/3f61976b-b99f-4d7f-b950-05dbe42df017"; + fsType = "ext4"; + }; + + boot.initrd.luks.devices."luks-dd6baa94-e503-4586-bf11-2b74a699e22c".device = "/dev/disk/by-uuid/dd6baa94-e503-4586-bf11-2b74a699e22c"; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/963E-FF34"; + fsType = "vfat"; + }; + + swapDevices = [ ]; + + # 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.enp2s0f0.useDHCP = lib.mkDefault true; + # networking.interfaces.enp5s0.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/hosts/workstation.nix b/hosts/workstation.nix index 3aaa3c2..936e7db 100644 --- a/hosts/workstation.nix +++ b/hosts/workstation.nix @@ -12,9 +12,12 @@ }; nix.settings.experimental-features = [ "nix-command" "flakes" ]; - boot.kernelPackages = pkgs.linuxPackages_latest; - hardware.opengl.enable = true; + hardware.opengl = { + enable = true; + driSupport = true; + driSupport32Bit = true; + }; fonts.packages = with pkgs; [ noto-fonts @@ -37,6 +40,20 @@ pulse.enable = true; }; + xdg = { + portal = { + config.common = { + default = "*"; + }; + enable = true; + extraPortals = with pkgs; [ + xdg-desktop-portal-wlr + xdg-desktop-portal-gtk + ]; + }; + }; + + security.pam.services.swaylock = {}; networking.networkmanager.enable = true; @@ -46,13 +63,19 @@ ssh.startAgent = false; gnupg.agent = { enable = true; - pinentryFlavor = "qt"; + pinentryPackage = pkgs.pinentry-qt; enableSSHSupport = true; }; }; - environment.systemPackages = with pkgs; [ + environment.systemPackages = [ + (pkgs.wrapFirefox (pkgs.firefox-unwrapped.override { pipewireSupport = true;}) {}) + pkgs.chromium ]; + environment.sessionVariables = { + # only needed for Sway + XDG_CURRENT_DESKTOP = "sway"; + }; services.getty.autologinUser = "dm"; programs.dconf.enable = true; @@ -70,4 +93,8 @@ services.gvfs.enable = true; services.udisks2.enable = true; services.devmon.enable = true; + + virtualisation.docker.enable = true; + networking.firewall.trustedInterfaces = [ "docker0" ]; + users.users.dm.extraGroups = [ "docker" ]; }