This commit is contained in:
Daniel Meiburg 2024-10-19 15:33:34 +02:00
parent 38a6ef2fb9
commit 4baa329a4a
Signed by: dm
GPG Key ID: E5827ECFFE0AA4F2
8 changed files with 108 additions and 24 deletions

View File

@ -7,27 +7,27 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1715381426, "lastModified": 1726989464,
"narHash": "sha256-wPuqrAQGdv3ISs74nJfGb+Yprm23U/rFpcHFFNWgM94=", "narHash": "sha256-Vl+WVTJwutXkimwGprnEtXc/s/s8sMuXzqXaspIGlwM=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "ab5542e9dbd13d0100f8baae2bc2d68af901f4b4", "rev": "2f23fa308a7c067e52dfcc30a0758f47043ec176",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "nix-community",
"ref": "release-23.11", "ref": "release-24.05",
"repo": "home-manager", "repo": "home-manager",
"type": "github" "type": "github"
} }
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1716034089, "lastModified": 1728729581,
"narHash": "sha256-QBfab6V4TeQ6Y4NiXVrEATdQuhCNFNaXt/L1K/Zw+zc=", "narHash": "sha256-oazkQ/z7r43YkDLLQdMg8oIB3CwWNb+2ZrYOxtLEWTQ=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "b55712de78725c8fcde422ee0a0fe682046e73c3", "rev": "a8dd1b21995964b115b1e3ec639dd6ce24ab9806",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -38,16 +38,16 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1715948915, "lastModified": 1729044727,
"narHash": "sha256-dxMrggEogQuJQr6f02VAFtsSNtjEPkgxczeiyW7WOQc=", "narHash": "sha256-GKJjtPY+SXfLF/yTN7M2cAnQB6RERFKnQhD8UvPSf3M=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "bacb8503d3a51d9e9b52e52a1ba45e2c380ad07d", "rev": "dc2e0028d274394f73653c7c90cc63edbb696be1",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nixos", "owner": "nixos",
"ref": "nixos-23.11", "ref": "nixos-24.05",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }

View File

@ -2,10 +2,10 @@
description = "System config"; description = "System config";
inputs = { inputs = {
nixpkgs.url = github:nixos/nixpkgs/nixos-23.11; nixpkgs.url = github:nixos/nixpkgs/nixos-24.05;
nixos-hardware.url = github:NixOS/nixos-hardware; nixos-hardware.url = github:NixOS/nixos-hardware;
home-manager = { home-manager = {
url = "github:nix-community/home-manager/release-23.11"; url = "github:nix-community/home-manager/release-24.05";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
}; };

View File

@ -1,4 +1,5 @@
# Edit this configuration file to define what should be installed on # Edit this configuration file to define what should be installed on
# your system. Help is available in the configuration.nix(5) man page # your system. Help is available in the configuration.nix(5) man page
# and in the NixOS manual (accessible by running nixos-help). # and in the NixOS manual (accessible by running nixos-help).

View File

@ -1,11 +1,12 @@
{ config, pkgs, ...}: { config, pkgs, ...}:
{ home.packages = with pkgs; [ { home.packages = with pkgs; [
anki
calc calc
clang-tools clang-tools
conda # conda
dig # dig
ffmpeg ffmpeg
firefox-wayland #firefox-wayland
fuzzel fuzzel
fzf fzf
gcc gcc
@ -13,25 +14,34 @@
gnumake gnumake
gnupg gnupg
gthumb gthumb
# gnuradio
# gnuradioPackages.osmosdr
# hackrf
htop htop
# influxdb2-cli
kanshi kanshi
kitty kitty
libnotify # for mako libnotify # for mako
libreoffice libreoffice
megatools megatools
mpv mpv
git-lfs
networkmanagerapplet networkmanagerapplet
nodejs # copilot requirement nodejs # copilot requirement
obsidian obsidian
openconnect openconnect
owncloud-client #owncloud-client
pass pass
pavucontrol pavucontrol
pinentry-qt pinentry-qt
polkit_gnome polkit_gnome
pulseaudio pulseaudio
pynitrokey pynitrokey
rpi-imager #protonvpn-cli
protonmail-desktop
#rclone
#rpi-imager
rawtherapee
sshfs sshfs
swaybg swaybg
thunderbird thunderbird
@ -40,6 +50,8 @@
unzip unzip
waybar waybar
wdisplays wdisplays
wf-recorder
#wireshark
wl-clipboard wl-clipboard
xdg-utils xdg-utils
zathura zathura

View File

@ -1,6 +1,7 @@
{ config, pkgs, ... }: { config, pkgs, ... }:
{ {
boot.kernelPackages = pkgs.linuxPackages_6_6;
# Bootloader. # Bootloader.
boot.loader.systemd-boot.enable = true; boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.canTouchEfiVariables = true;
@ -24,7 +25,7 @@
# Enable WireGuard # Enable WireGuard
networking.wireguard.interfaces = { networking.wireguard.interfaces = {
wg0 = { wg0 = {
ips = [ "10.100.0.3/24" ]; ips = [ "10.100.0.2/24" ];
listenPort = 51820; listenPort = 51820;
privateKeyFile = "/home/dm/.wireguard/p14s"; privateKeyFile = "/home/dm/.wireguard/p14s";

View File

@ -8,7 +8,7 @@
[ (modulesPath + "/installer/scan/not-detected.nix") [ (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.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-amd" ]; boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ]; boot.extraModulePackages = [ ];
@ -23,6 +23,7 @@
fileSystems."/boot" = fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/963E-FF34"; { device = "/dev/disk/by-uuid/963E-FF34";
fsType = "vfat"; fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ];
}; };
swapDevices = [ ]; swapDevices = [ ];
@ -34,6 +35,7 @@
networking.useDHCP = lib.mkDefault true; networking.useDHCP = lib.mkDefault true;
# networking.interfaces.enp2s0f0.useDHCP = lib.mkDefault true; # networking.interfaces.enp2s0f0.useDHCP = lib.mkDefault true;
# networking.interfaces.enp5s0.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; # networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";

View File

@ -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.<interface>.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;
}

View File

@ -12,9 +12,12 @@
}; };
nix.settings.experimental-features = [ "nix-command" "flakes" ]; 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; [ fonts.packages = with pkgs; [
noto-fonts noto-fonts
@ -37,6 +40,20 @@
pulse.enable = true; 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 = {}; security.pam.services.swaylock = {};
networking.networkmanager.enable = true; networking.networkmanager.enable = true;
@ -46,13 +63,19 @@
ssh.startAgent = false; ssh.startAgent = false;
gnupg.agent = { gnupg.agent = {
enable = true; enable = true;
pinentryFlavor = "qt"; pinentryPackage = pkgs.pinentry-qt;
enableSSHSupport = true; 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"; services.getty.autologinUser = "dm";
programs.dconf.enable = true; programs.dconf.enable = true;
@ -70,4 +93,8 @@
services.gvfs.enable = true; services.gvfs.enable = true;
services.udisks2.enable = true; services.udisks2.enable = true;
services.devmon.enable = true; services.devmon.enable = true;
virtualisation.docker.enable = true;
networking.firewall.trustedInterfaces = [ "docker0" ];
users.users.dm.extraGroups = [ "docker" ];
} }