From 3a335817cbbc20957f31e0d2fe03abce7b46d959 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 29 Aug 2020 16:49:58 +0200 Subject: [PATCH 001/227] use latest linux kernel (for new amd cpus) --- configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/configuration.nix b/configuration.nix index c3aa043..4d60bf5 100644 --- a/configuration.nix +++ b/configuration.nix @@ -23,6 +23,7 @@ boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; + boot.kernelPackages = pkgs.linuxPackages_latest; networking.hostName = "raven"; networking.hostId = "e3a397c5"; From f434cfa3e059079adebfbdb08633099634d4d7e7 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 29 Aug 2020 16:51:01 +0200 Subject: [PATCH 002/227] adapt for new hardware --- configuration.nix | 7 ++----- dotfiles/sway/status.toml | 13 +++++-------- hardware-configuration.nix | 29 +++++++++++------------------ 3 files changed, 18 insertions(+), 31 deletions(-) diff --git a/configuration.nix b/configuration.nix index 4d60bf5..eae589f 100644 --- a/configuration.nix +++ b/configuration.nix @@ -7,9 +7,6 @@ { imports = [ - - - # Include the results of the hardware scan. ./hardware-configuration.nix @@ -29,8 +26,8 @@ networking.hostId = "e3a397c5"; networking.useDHCP = false; - networking.interfaces.enp0s25.useDHCP = true; - networking.interfaces.wlp3s0.useDHCP = true; + networking.interfaces.wlo1.useDHCP = true; + networking.resolvconf.useLocalResolver = true; i18n.defaultLocale = "en_US.UTF-8"; time.timeZone = "Europe/Berlin"; diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index e0a3a6a..40b527a 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -54,7 +54,7 @@ hide_missing = true [[block]] block = "net" -device = "wlp3s0" +device = "wlo1" ip = true ssid = true speed_up = false @@ -63,11 +63,8 @@ hide_inactive = true hide_missing = true [[block]] -block = "temperature" -collapsed = false -interval = 10 -chip = "coretemp-isa-0000" -format = "{min}..{max}°" +block = "custom" +command = '''echo " $(cat /sys/class/thermal/thermal_zone0/temp | head -c 2) °C"''' [[block]] block = "disk_space" @@ -99,9 +96,9 @@ block = "backlight" [[block]] block = "battery" -device = "BAT0" +device = "BAT1" interval = 10 -format = "{percentage}%" +format = "{percentage}% {time}" [[block]] block = "time" diff --git a/hardware-configuration.nix b/hardware-configuration.nix index e9bda5f..1eeab35 100644 --- a/hardware-configuration.nix +++ b/hardware-configuration.nix @@ -4,21 +4,17 @@ { config, lib, pkgs, ... }: { - imports = - [ - ]; + imports = [ + + + + + ]; - boot.initrd.availableKernelModules = [ "ehci_pci" "ahci" "usb_storage" "sd_mod" "sdhci_pci" ]; + boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [ ]; - boot.kernelModules = [ "kvm-intel" ]; - - boot.initrd.luks.devices = { - swap = { - device = "/dev/disk/by-uuid/fe87a31c-7d0b-4073-98fc-fa825de77181"; - allowDiscards = true; - }; - }; fileSystems."/" = { device = "tank/root/nixos"; @@ -31,14 +27,11 @@ }; fileSystems."/boot" = - { device = "/dev/disk/by-uuid/0C2D-2799"; + { device = "/dev/disk/by-uuid/B048-FBC8"; fsType = "vfat"; }; - swapDevices = - [ { device = "/dev/disk/by-uuid/2ac33f61-0db5-4f94-8148-93f2166b2f29"; } - ]; + swapDevices = [ ]; - nix.maxJobs = lib.mkDefault 4; - powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; + nix.maxJobs = lib.mkDefault 8; } From 527948d8458070f1e57a38a2f1a786579611dec0 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 29 Aug 2020 16:51:24 +0200 Subject: [PATCH 003/227] background and keyboard config --- dotfiles/sway/config | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 3944eb2..9425048 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -7,8 +7,10 @@ set $right l set $term alacritty set $menu bemenu-run -output * bg /home/stefan/Sync/wall/nasa-yZygONrUBe8-unsplash.jpg fill -output eDP-1 scale 1.3 +input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de + +output * bg /home/stefan/Downloads/bg.jpg fill +#output * bg /home/stefan/Sync/wall/nasa-yZygONrUBe8-unsplash.jpg fill output DP-1 res 5120x1440 # user keybinds From f4984704f9067ef5e3a307a75c9297c94df5b9f0 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 29 Aug 2020 16:51:58 +0200 Subject: [PATCH 004/227] direnv --- roles/base.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/roles/base.nix b/roles/base.nix index 835d042..29779da 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -7,6 +7,7 @@ in { bash bat emacs-nox + direnv fd fzf git @@ -64,6 +65,7 @@ precmd_user_func = "title" . "$(fzf-share)/key-bindings.bash" . "$(fzf-share)/completion.bash" . <(z --init bash) + . <(direnv hook bash) ''; shellAliases = { @@ -87,4 +89,5 @@ precmd_user_func = "title" ''; services.resolved.enable = true; + services.lorri.enable = true; } From b1376304b711f1d2d45a33303e25264a5e9e3f23 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 29 Aug 2020 16:52:59 +0200 Subject: [PATCH 005/227] new software --- roles/base.nix | 1 - roles/desktop.nix | 10 +++++++++- roles/dev.nix | 1 + 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/roles/base.nix b/roles/base.nix index 29779da..3eccdfb 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -6,7 +6,6 @@ in { environment.systemPackages = with pkgs; [ bash bat - emacs-nox direnv fd fzf diff --git a/roles/desktop.nix b/roles/desktop.nix index 1219757..b5a63d8 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -17,6 +17,7 @@ in { slurp swayidle swaylock + xwayland ]; }; @@ -41,14 +42,21 @@ in { ]; environment.systemPackages = with pkgs; [ + librsvg + unstable.mypaint + unstable.mypaint-brushes + + hicolor-icon-theme + numix-icon-theme alacritty firefox mumble neofetch + inkscape pulseaudio pulsemixer - wl-clipboard unstable.keepassxc + wl-clipboard ( pkgs.writeTextFile { name = "startsway"; diff --git a/roles/dev.nix b/roles/dev.nix index a42a09a..c132318 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -9,6 +9,7 @@ let in { environment.systemPackages = with pkgs; [ + emacs go python37 python37Packages.pyls-black From 7984da51d3b9778aaafd34e57eb99dd5bd5f5e85 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 29 Aug 2020 16:53:14 +0200 Subject: [PATCH 006/227] firefox with video acceleration --- roles/desktop.nix | 34 ++++++++++++++++++++++++++-------- roles/dev.nix | 2 -- 2 files changed, 26 insertions(+), 10 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index b5a63d8..f4f8786 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -4,8 +4,9 @@ { config, lib, pkgs, ... }: let - unstable = import {}; + unstable = import { config.allowUnfree = true; }; in { + programs.sway = { enable = true; extraPackages = with pkgs; [ @@ -42,14 +43,26 @@ in { ]; environment.systemPackages = with pkgs; [ + # firefox also needs: + # + # gfx.webrenderer.enabled = true + # widget.wayland-dmabuf-vaapi.enabled = true + # + # check in `about:support` that + # * Composing -> Webrenderer + unstable.firefox-bin + libva + libva-utils + mesa + librsvg unstable.mypaint unstable.mypaint-brushes hicolor-icon-theme numix-icon-theme + alacritty - firefox mumble neofetch inkscape @@ -64,12 +77,13 @@ in { executable = true; text = '' #! ${pkgs.bash}/bin/bash - - export MOZ_ENABLE_WAYLAND=1 - export QT_QPA_PLATFORM=wayland-egl - export QT_WAYLAND_FORCE_DPI=physical - export SDL_VIDEODRIVER=wayland - export _JAVA_AWT_WM_NOREPARENTING=1 + + export _JAVA_AWT_WM_NOREPARENTING=1 + export MOZ_ENABLE_WAYLAND=1 + export QT_AUTO_SCREEN_SCALE_FACTOR=0 + export QT_WAYLAND_FORCE_DPI=96 + export QT_QPA_PLATFORM=wayland-egl + export SDL_VIDEODRIVER=wayland exec ${pkgs.dbus}/bin/dbus-run-session ${pkgs.sway}/bin/sway ''; } @@ -85,4 +99,8 @@ in { }; services.printing.enable = true; + + hardware.opengl = { + enable = true; + }; } diff --git a/roles/dev.nix b/roles/dev.nix index c132318..2710627 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -5,8 +5,6 @@ let unstable = import {}; - mozilla = import {}; - in { environment.systemPackages = with pkgs; [ emacs From 3a95b528642ea33dd438161fa36c699a3c96da19 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 29 Aug 2020 17:13:18 +0200 Subject: [PATCH 007/227] prettify mako --- dotfiles/sway/config | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 9425048..bd8f601 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -131,4 +131,6 @@ bar { include /etc/sway/config.d/* -exec mako +exec mako --border-color=#cc6666 \ + --background-color=#2d2a2eee +exec emacs --daemon From fc21e4193c5d2675e7c4f2fd297041cafe0af271 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sun, 30 Aug 2020 12:40:06 +0200 Subject: [PATCH 008/227] per hardware symlinks --- .gitignore | 1 + configuration.nix | 9 ------ .../x360-raven.nix | 32 ++++++++++++++++--- 3 files changed, 29 insertions(+), 13 deletions(-) rename hardware-configuration.nix => hardware/x360-raven.nix (51%) diff --git a/.gitignore b/.gitignore index 59d0e90..65d0dbf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /result /roles/wireless.nix +hardware-configuration.nix diff --git a/configuration.nix b/configuration.nix index eae589f..bb81af7 100644 --- a/configuration.nix +++ b/configuration.nix @@ -18,16 +18,7 @@ ./roles/vpn.nix ]; - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; - boot.kernelPackages = pkgs.linuxPackages_latest; - - networking.hostName = "raven"; - networking.hostId = "e3a397c5"; - networking.useDHCP = false; - networking.interfaces.wlo1.useDHCP = true; - networking.resolvconf.useLocalResolver = true; i18n.defaultLocale = "en_US.UTF-8"; time.timeZone = "Europe/Berlin"; diff --git a/hardware-configuration.nix b/hardware/x360-raven.nix similarity index 51% rename from hardware-configuration.nix rename to hardware/x360-raven.nix index 1eeab35..d621f08 100644 --- a/hardware-configuration.nix +++ b/hardware/x360-raven.nix @@ -7,14 +7,38 @@ imports = [ - - + + ]; - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; + services.tlp.enable = true; + systemd.tmpfiles.rules = [ + "w /sys/class/drm/card0/device/power_dpm_force_performance_level - - - - low" + ]; + + boot.initrd.availableKernelModules = [ + "nvme" + "xhci_pci" + "ahci" + "usb_storage" + "sd_mod" + "rtsx_pci_sdmmc" + ]; boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.kernelParams = [ "amdgpu.dpm=1" ]; + boot.kernelPackages = pkgs.linuxPackages_latest; + + + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + networking.hostName = "raven"; + networking.hostId = "e3a397c5"; + + networking.interfaces.wlo1.useDHCP = true; + networking.resolvconf.useLocalResolver = true; fileSystems."/" = { device = "tank/root/nixos"; From 02b8f43efc8c0ff6e313394fcbcceaafbdf90df8 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sun, 30 Aug 2020 12:40:39 +0200 Subject: [PATCH 009/227] cleanup --- roles/base.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/base.nix b/roles/base.nix index 3eccdfb..a8867a6 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -7,7 +7,7 @@ in { bash bat direnv - fd + fd fzf git gnupg From 0c231f7a87332be2e9221158df42ca1347db4472 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sun, 30 Aug 2020 12:41:06 +0200 Subject: [PATCH 010/227] autostart sway on first console --- roles/base.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/roles/base.nix b/roles/base.nix index a8867a6..a847708 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -60,11 +60,15 @@ precmd_user_func = "title" return 1 fi } - + . "$(fzf-share)/key-bindings.bash" . "$(fzf-share)/completion.bash" . <(z --init bash) . <(direnv hook bash) + + if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then + exec startsway + fi ''; shellAliases = { From 94dd34bd5beeb13dbb9a8c790f27101896a78e0a Mon Sep 17 00:00:00 2001 From: foosinn Date: Sun, 30 Aug 2020 14:12:39 +0200 Subject: [PATCH 011/227] pretty bmenu --- dotfiles/sway/config | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index bd8f601..57a4292 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -5,7 +5,19 @@ set $down j set $up k set $right l set $term alacritty -set $menu bemenu-run + +# echo -- bemenu -H 23 -b -p run --{ff,nf}=#eeeeeee --{tf,hf}=#78dce8 --{tb,fb,nb,hb,sb}=#2d2a2e + +set $menu bemenu-run -H 23 -b -p run \ + --ff=#eeeeeee \ + --nf=#eeeeeee \ + --tf=#78dce8 \ + --hf=#78dce8 \ + --tb=#2d2a2e \ + --fb=#2d2a2e \ + --nb=#2d2a2e \ + --hb=#2d2a2e \ + --sb=#2d2a2e input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de From f2fe419c194399cccb029a7c3680ba8390e07534 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sun, 30 Aug 2020 14:23:29 +0200 Subject: [PATCH 012/227] add brightnessctl --- roles/desktop.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index f4f8786..dd27306 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -11,6 +11,7 @@ in { enable = true; extraPackages = with pkgs; [ bemenu + brightnessctl grim i3status-rust kanshi From 300bccae6f378e0ebb5b315410b224f2a5e3b1c6 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 31 Aug 2020 18:05:58 +0200 Subject: [PATCH 013/227] sort config --- configuration.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configuration.nix b/configuration.nix index bb81af7..61f4364 100644 --- a/configuration.nix +++ b/configuration.nix @@ -11,11 +11,11 @@ ./hardware-configuration.nix ./roles/admin.nix - ./roles/dev.nix ./roles/base.nix ./roles/desktop.nix - ./roles/wireless.nix + ./roles/dev.nix ./roles/vpn.nix + ./roles/wireless.nix ]; networking.useDHCP = false; From 5a2363117094e79a67fd8e0737600d14d2ea9e75 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 31 Aug 2020 18:06:21 +0200 Subject: [PATCH 014/227] add libsecret for secret-tool --- roles/desktop.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index dd27306..50af02d 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -64,9 +64,10 @@ in { numix-icon-theme alacritty + inkscape + libsecret mumble neofetch - inkscape pulseaudio pulsemixer unstable.keepassxc From 8c6e6f6f2eac76f860071959075ecf52097d639e Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 31 Aug 2020 18:10:04 +0200 Subject: [PATCH 015/227] initial mail support --- configuration.nix | 1 + roles/mail.nix | 9 +++++++++ 2 files changed, 10 insertions(+) create mode 100644 roles/mail.nix diff --git a/configuration.nix b/configuration.nix index 61f4364..f8e17da 100644 --- a/configuration.nix +++ b/configuration.nix @@ -14,6 +14,7 @@ ./roles/base.nix ./roles/desktop.nix ./roles/dev.nix + ./roles/mail.nix ./roles/vpn.nix ./roles/wireless.nix ]; diff --git a/roles/mail.nix b/roles/mail.nix new file mode 100644 index 0000000..9aabab4 --- /dev/null +++ b/roles/mail.nix @@ -0,0 +1,9 @@ +{ config, lib, pkgs, ... }: + +{ + environment.systemPackages = with pkgs; [ + astroid + isync + notmuch + ]; +} From fafa2c6a11a18c5a5e6f38abf55e84fb8ebffa10 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 31 Aug 2020 23:56:29 +0200 Subject: [PATCH 016/227] printer drivers --- roles/desktop.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index 50af02d..a713746 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -101,6 +101,9 @@ in { }; services.printing.enable = true; + services.printing.drivers = [ + pkgs.gutenprint + ]; hardware.opengl = { enable = true; From 0cf27914325583912614c327b85fb769eaecdf66 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 8 Sep 2020 18:48:15 +0200 Subject: [PATCH 017/227] more powermanagement --- hardware/x360-raven.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/hardware/x360-raven.nix b/hardware/x360-raven.nix index d621f08..f13994a 100644 --- a/hardware/x360-raven.nix +++ b/hardware/x360-raven.nix @@ -12,6 +12,7 @@ ]; services.tlp.enable = true; + powerManagement.powertop.enable = true; systemd.tmpfiles.rules = [ "w /sys/class/drm/card0/device/power_dpm_force_performance_level - - - - low" ]; From e62ea973cbf16094371f65fb9556b8e2f6f48737 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 8 Sep 2020 18:48:32 +0200 Subject: [PATCH 018/227] tcpdump --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index a847708..6499705 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -16,6 +16,7 @@ in { ncdu openssl ripgrep + tcpdump tmux z-lua unstable.starship From fe0b28873b823e061d4a7ff80918ddd3192a8884 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 8 Sep 2020 18:48:57 +0200 Subject: [PATCH 019/227] openssl support for rust --- roles/dev.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/roles/dev.nix b/roles/dev.nix index 2710627..ebec090 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -7,16 +7,19 @@ let unstable = import {}; in { environment.systemPackages = with pkgs; [ - emacs go python37 python37Packages.pyls-black python37Packages.pyls-isort python37Packages.pyls-mypy rustup - sops - tig unstable.gopls unstable.rust-analyzer + + emacs + sops + tig + + openssl pkg-config nasm cmake zlib gcc binutils-unwrapped ]; } From b825d0dda36b1ed7e2c2f8395458e517f23274a9 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 8 Sep 2020 18:50:44 +0200 Subject: [PATCH 020/227] improve desktop environ --- roles/desktop.nix | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index a713746..fffafcc 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -57,21 +57,28 @@ in { mesa librsvg - unstable.mypaint - unstable.mypaint-brushes + mypaint + mypaint-brushes + capitaine-cursors + elementary-xfce-icon-theme hicolor-icon-theme - numix-icon-theme alacritty + imv inkscape + libreoffice libsecret + lxappearance + mumble mumble neofetch + pavucontrol pulseaudio pulsemixer unstable.keepassxc wl-clipboard + xfce.thunar ( pkgs.writeTextFile { name = "startsway"; @@ -92,6 +99,11 @@ in { ) ]; + services.gvfs = { + enable = true; + package = lib.mkForce pkgs.gnome3.gvfs; + }; + services.syncthing = { enable = true; openDefaultPorts = true; From ad427500ad040578da22a429ae84801603b8049e Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 28 Sep 2020 07:09:02 +0200 Subject: [PATCH 021/227] final hp commit --- dotfiles/sway/config | 9 ++++++++- hardware/x360-raven.nix | 8 ++++++-- roles/base.nix | 2 +- roles/desktop.nix | 19 +++++++++++++------ roles/dev.nix | 7 +++++++ 5 files changed, 35 insertions(+), 10 deletions(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 57a4292..5bbabee 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -33,7 +33,7 @@ floating_modifier $mod normal bindsym $mod+Shift+c reload bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit' bindsym $mod+Shift+p exec keepassxc -bindsym $mod+z exec swaylock -t +bindsym $mod+z exec swaylock -t -i /home/stefan/Downloads/bg.jpg bindsym $mod+Up exec light -A 5 bindsym $mod+Down exec light -U 5 bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png @@ -146,3 +146,10 @@ include /etc/sway/config.d/* exec mako --border-color=#cc6666 \ --background-color=#2d2a2eee exec emacs --daemon + +set $gnome-schema org.gnome.desktop.interface +exec_always { + gsettings set $gnome-schema gtk-theme 'Arc-Dark' + gsettings set $gnome-schema icon-theme 'elementary Xfce' + gsettings set $gnome-schema cursor-theme 'Capitaine Cursors - White' +} diff --git a/hardware/x360-raven.nix b/hardware/x360-raven.nix index f13994a..19cca78 100644 --- a/hardware/x360-raven.nix +++ b/hardware/x360-raven.nix @@ -3,7 +3,9 @@ # to /etc/nixos/configuration.nix instead. { config, lib, pkgs, ... }: -{ +let + unstable = import { config.allowUnfree = true; }; +in { imports = [ @@ -29,7 +31,9 @@ boot.extraModulePackages = [ ]; boot.kernelModules = [ "kvm-amd" ]; boot.kernelParams = [ "amdgpu.dpm=1" ]; - boot.kernelPackages = pkgs.linuxPackages_latest; + #boot.kernelPackages = pkgs.linuxPackages_latest; + boot.kernelPackages = unstable.linuxPackages_latest; + #boot.kernelPackages = unstable.linux_testing; boot.loader.systemd-boot.enable = true; diff --git a/roles/base.nix b/roles/base.nix index 6499705..2c36d0d 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -81,7 +81,7 @@ precmd_user_func = "title" }; users.users.stefan = { - extraGroups = [ "wheel" ]; + extraGroups = [ "wheel" "dialout" ]; home = "/home/stefan"; isNormalUser = true; uid = 1000; diff --git a/roles/desktop.nix b/roles/desktop.nix index fffafcc..1c77b8a 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -43,6 +43,7 @@ in { noto-fonts-emoji ]; + nixpkgs.config.allowUnfree = true; environment.systemPackages = with pkgs; [ # firefox also needs: # @@ -51,7 +52,7 @@ in { # # check in `about:support` that # * Composing -> Webrenderer - unstable.firefox-bin + firefox-bin libva libva-utils mesa @@ -60,9 +61,13 @@ in { mypaint mypaint-brushes + gsettings-desktop-schemas + glib # provides gsettings + arc-theme capitaine-cursors elementary-xfce-icon-theme hicolor-icon-theme + numix-icon-theme alacritty imv @@ -71,14 +76,14 @@ in { libsecret lxappearance mumble - mumble neofetch pavucontrol + pcmanfm pulseaudio pulsemixer unstable.keepassxc wl-clipboard - xfce.thunar + xdg_utils ( pkgs.writeTextFile { name = "startsway"; @@ -88,12 +93,12 @@ in { #! ${pkgs.bash}/bin/bash export _JAVA_AWT_WM_NOREPARENTING=1 - export MOZ_ENABLE_WAYLAND=1 - export QT_AUTO_SCREEN_SCALE_FACTOR=0 + export MOZ_ENABLE_WAYLAND=1 export QT_AUTO_SCREEN_SCALE_FACTOR=0 export QT_WAYLAND_FORCE_DPI=96 export QT_QPA_PLATFORM=wayland-egl export SDL_VIDEODRIVER=wayland - exec ${pkgs.dbus}/bin/dbus-run-session ${pkgs.sway}/bin/sway + + ${pkgs.dbus}/bin/dbus-run-session ${pkgs.sway}/bin/sway ''; } ) @@ -112,6 +117,8 @@ in { dataDir = "/home/stefan"; }; + services.avahi.enable = true; + services.printing.enable = true; services.printing.drivers = [ pkgs.gutenprint diff --git a/roles/dev.nix b/roles/dev.nix index ebec090..915bb95 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -7,6 +7,13 @@ let unstable = import {}; in { environment.systemPackages = with pkgs; [ + arduino + avrdude + pkgsCross.avr.avrlibc + pkgsCross.avr.libcCross + pkgsCross.avr.buildPackages.gcc8 + pkgsCross.avr.buildPackages.binutils + go python37 python37Packages.pyls-black From f8e261ad07a5777fac6f3dfd4869843fef0118ad Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Wed, 7 Oct 2020 23:23:16 +0200 Subject: [PATCH 022/227] 2 days of work --- .gitignore | 1 - configuration.nix | 8 +- dotfiles/alacritty.yml | 3 + dotfiles/certs/NetzmarktCA.crt | 44 +++++++++++ dotfiles/certs/vcenter.netzmarkt.lan.crt | 24 ++++++ dotfiles/sway/status.toml | 2 +- hardware/xps15-sphere.nix | 47 ++++++++++++ packages/cloudstation.nix | 97 ++++++++++++++++++++++++ packages/oc311.nix | 29 +++++++ packages/oc46.nix | 29 +++++++ packages/openshift-install-4.5.nix | 30 ++++++++ roles/admin.nix | 6 +- roles/base.nix | 30 ++++---- roles/desktop.nix | 2 +- roles/dev.nix | 13 +--- roles/embedded.nix | 14 ++++ roles/network.nix | 15 ++++ roles/work.nix | 29 +++++++ 18 files changed, 391 insertions(+), 32 deletions(-) create mode 100644 dotfiles/certs/NetzmarktCA.crt create mode 100644 dotfiles/certs/vcenter.netzmarkt.lan.crt create mode 100644 hardware/xps15-sphere.nix create mode 100644 packages/cloudstation.nix create mode 100644 packages/oc311.nix create mode 100644 packages/oc46.nix create mode 100644 packages/openshift-install-4.5.nix create mode 100644 roles/embedded.nix create mode 100644 roles/network.nix create mode 100644 roles/work.nix diff --git a/.gitignore b/.gitignore index 65d0dbf..457e126 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,2 @@ /result -/roles/wireless.nix hardware-configuration.nix diff --git a/configuration.nix b/configuration.nix index f8e17da..feebf21 100644 --- a/configuration.nix +++ b/configuration.nix @@ -16,7 +16,9 @@ ./roles/dev.nix ./roles/mail.nix ./roles/vpn.nix - ./roles/wireless.nix + ./roles/network.nix + ./roles/private.nix + ./roles/work.nix ]; networking.useDHCP = false; @@ -27,6 +29,10 @@ services.openssh.enable = true; networking.firewall.enable = true; + nixpkgs.config.permittedInsecurePackages = [ + "openssl-1.0.2u" + ]; + system.stateVersion = "20.03"; # We can stay here } diff --git a/dotfiles/alacritty.yml b/dotfiles/alacritty.yml index 98f5b2f..b0ff6de 100644 --- a/dotfiles/alacritty.yml +++ b/dotfiles/alacritty.yml @@ -35,3 +35,6 @@ window: env: TERM: xterm-256color + +key_bindings: + - { key: Escape, mods: Control, action: ToggleViMode } diff --git a/dotfiles/certs/NetzmarktCA.crt b/dotfiles/certs/NetzmarktCA.crt new file mode 100644 index 0000000..1f5d38e --- /dev/null +++ b/dotfiles/certs/NetzmarktCA.crt @@ -0,0 +1,44 @@ +-----BEGIN CERTIFICATE----- +MIIHrjCCBZagAwIBAgIJAJwE8QiSIPupMA0GCSqGSIb3DQEBCwUAMIHpMQswCQYD +VQQGEwJERTEPMA0GA1UECBMGQmF5ZXJuMREwDwYDVQQHEwhFcmxhbmdlbjEwMC4G +A1UEChQnTmV0em1hcmt0IEludGVybmV0c2VydmljZSBHbWJIICYgQ28uIEtHMRAw +DgYDVQQLEwdUZWNobmlrMTMwMQYDVQQDFCpOZXR6bWFya3QgSW50ZXJuZXRzZXJ2 +aWNlIEdtYkggJiBDby4gS0cgQ0ExFTATBgNVBCkTDE5ldHptYXJrdCBDQTEmMCQG +CSqGSIb3DQEJARYXaG9zdG1hc3RlckBuZXR6bWFya3QuZGUwHhcNMTUxMTIwMTIy +NTAwWhcNMjUxMTE3MTIyNTAwWjCB6TELMAkGA1UEBhMCREUxDzANBgNVBAgTBkJh +eWVybjERMA8GA1UEBxMIRXJsYW5nZW4xMDAuBgNVBAoUJ05ldHptYXJrdCBJbnRl +cm5ldHNlcnZpY2UgR21iSCAmIENvLiBLRzEQMA4GA1UECxMHVGVjaG5pazEzMDEG +A1UEAxQqTmV0em1hcmt0IEludGVybmV0c2VydmljZSBHbWJIICYgQ28uIEtHIENB +MRUwEwYDVQQpEwxOZXR6bWFya3QgQ0ExJjAkBgkqhkiG9w0BCQEWF2hvc3RtYXN0 +ZXJAbmV0em1hcmt0LmRlMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA +yPeH1i0beXEdMvyNATA9zc4CLCajROCVgypJ3+7sZ6wuNWxUbdSFQMm8v94h7BEL +bCPJ6TT1B96GA4nfC0yOz1RhiUdLDJ8jv9Y1NEIBujBU2tvL2/93+dkMT/xZ2APj +IPcYfdTUuWuK3y/WC+/OZ7ZKgCkQdXjy+tJagHBiYnYSIugSlwe7ToAg8gy/PmkO +f7af5jtIVkRWyTtYI6paYzXmcgjafFptWPcb8bJX9MnCycB5/Af4VwHZszKf4Gmw +Om/KvlzUHClBpCYUa/rLTmd8AyjAYJMpQ3yd4JBlsf5ao1ZeWFvCJjQHPiJYvLVD +vApcUaXkbkWbGODC8YS8d4r5pwoEWeUwxomNVDElIIoQOM3Agi6ms0Hfp9/S+lK/ +i9IgQXNOXTtjkLZRImUmjDk//QOoNjBh9z+g62YGaThDTgxlf4J7RD/HqTmLSKjE +UwlWGduVTsUQR5uKs/tD5hsc5dpE3UI+n1J8PWlXcKfJnEjfgYPJ7jTDpBB6Oozj +JtH7DkdOhHPZkZQzIuOLNtxqlgNSYHv7VNSmr3LvRTQto9x5NnGgMgliyKuI1aBt +p+gSnOezGMSQobRBH0cvXVk7dWm+BeZtTmU03SsAFIfhVAnAisWfbHWD6GDUQ/9m +F1SWMMJgCT/xSL43Md1riQV5/0mciHlhUxl0xKMBcTECAwEAAaOCAVUwggFRMB0G +A1UdDgQWBBT1WEHH26TJcfvJRGFcGaWzrbKS6DCCASAGA1UdIwSCARcwggETgBT1 +WEHH26TJcfvJRGFcGaWzrbKS6KGB76SB7DCB6TELMAkGA1UEBhMCREUxDzANBgNV +BAgTBkJheWVybjERMA8GA1UEBxMIRXJsYW5nZW4xMDAuBgNVBAoUJ05ldHptYXJr +dCBJbnRlcm5ldHNlcnZpY2UgR21iSCAmIENvLiBLRzEQMA4GA1UECxMHVGVjaG5p +azEzMDEGA1UEAxQqTmV0em1hcmt0IEludGVybmV0c2VydmljZSBHbWJIICYgQ28u +IEtHIENBMRUwEwYDVQQpEwxOZXR6bWFya3QgQ0ExJjAkBgkqhkiG9w0BCQEWF2hv +c3RtYXN0ZXJAbmV0em1hcmt0LmRlggkAnATxCJIg+6kwDAYDVR0TBAUwAwEB/zAN +BgkqhkiG9w0BAQsFAAOCAgEAgALHwsIX7HgBysOPlkdmY+Bl9OvXpjJWrIiowl8U +6YBwWDhA7CBsnkgpPfzdT3yWpzBFLKh+8DcnWOJ7G9AH4/Ypx2YgoQSxH/XQSqgd +ojrP9YrzIo1If2+5uLIP8k4OyBOsR7ZG0zWCLMrvI+xkoirx/FKhiwR5ircmjvLG +GYrkJVdreTx9duNHvSSIocOmf5BYa+FcElyit5EipPajupeDJLOb2MUpLES6YJX4 +q7jVcNLQpE/8L0BrT9SLwRce+mxYHu5PJ9uZDtYAgTOxVoh6xAcjC+llPo52PPse +DGtCwDRrMqAJWzljZCDq7juU1BG/3C46rZV0T1sDaxscSFhUNdptQYt5prCKdvoY +vg8G8ADldbJqnp5JlHkzsgcSP6Tj5h1ZAs99w3u7AtZfaX1no1/qTqObkyjZhMn9 +OVsYDTGLBCdEvS74YzPgZfSQt5jinR4THnybb0qm4Iluy8C3QHylHvTNbzksEpwp +UdJL1pIAX6TD66B/KAXRg3fyn9mZnCilhCezbIx6NS5ZuZw6aQAUiOTV/eoQX/4V +jH0v9cA6Yk/4pCoeQlHRJfIdBUsBvnTrzI6yszqKi56me113mD8SbS3f6AAiyiHf +LNs/3aF+4/CmK7BsuelDgZASSx1Lol1UMqcKIbiTHr024V4LPUlQQQhwWVTCVxba +k00= +-----END CERTIFICATE----- diff --git a/dotfiles/certs/vcenter.netzmarkt.lan.crt b/dotfiles/certs/vcenter.netzmarkt.lan.crt new file mode 100644 index 0000000..f6d0b6f --- /dev/null +++ b/dotfiles/certs/vcenter.netzmarkt.lan.crt @@ -0,0 +1,24 @@ +-----BEGIN CERTIFICATE----- +MIIEDTCCAvWgAwIBAgIJAMjDX/Mpgd+WMA0GCSqGSIb3DQEBCwUAMIGRMQswCQYD +VQQDDAJDQTESMBAGCgmSJomT8ixkARkWAm5tMRMwEQYKCZImiZPyLGQBGRYDbGFu +MQswCQYDVQQGEwJVUzETMBEGA1UECAwKQ2FsaWZvcm5pYTEaMBgGA1UECgwRdm0w +MjAuaHYubW5ldC5sYW4xGzAZBgNVBAsMElZNd2FyZSBFbmdpbmVlcmluZzAeFw0x +NzA0MTgwODAxMDRaFw0yNzA0MTYwODAxMDRaMIGRMQswCQYDVQQDDAJDQTESMBAG +CgmSJomT8ixkARkWAm5tMRMwEQYKCZImiZPyLGQBGRYDbGFuMQswCQYDVQQGEwJV +UzETMBEGA1UECAwKQ2FsaWZvcm5pYTEaMBgGA1UECgwRdm0wMjAuaHYubW5ldC5s +YW4xGzAZBgNVBAsMElZNd2FyZSBFbmdpbmVlcmluZzCCASIwDQYJKoZIhvcNAQEB +BQADggEPADCCAQoCggEBALoAMLvSM2IwLF5FVTtulCzuFPARSlOpVQjcMZ7gP5XA +PdpsyNiL0C4K68tuN78ZxTU1p+/agW+PpU1oKlkUddUOoSaLbRAYW/xj3gBJ0uc7 +s0X6kuluw5f5B8RuTpnkhXTpQqVLBPsB1d02aS0OndRv4SNxZAVqwguGVw5UB2uv +r9SSp1RhYK9qyP+EGABLzrD+qjsIhpSxSs9I7Up+D3MDi3WethqlDFPVXlEfD32Q +NsNRLdAL6dd+GWFE3h82MaxfXhpUJHGcw5Wsz50/09I1Qfq6Hqkb7B6OLRAEz7gD +slocjv2sXPxMvLXIdJOZlEveattI16L7XqDVu6AlDF0CAwEAAaNmMGQwHQYDVR0O +BBYEFO8TgXPcRudSgtHFjCwHh0wPwqIrMB8GA1UdEQQYMBaBDmVtYWlsQGFjbWUu +Y29thwR/AAABMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMA0G +CSqGSIb3DQEBCwUAA4IBAQAIZkCrG1OB36JsLnyQG4WYbFIYkg9yu/fYpdwwThng +GGy1z0qMEsTvCidUaIb8eMf/IIy/5VmDFLNtoiuhJcvfMoCOUnqykHZi9NN3Rloz +laS7JIV06+bFHjBnlR/15xF/Jr0hx8qclUzsYgYE2RAB3ET6Z4GiWaCmuGX7Uwh8 +kt+bRz344bhEbdDrUioyk1qon3oaIhLc7jarr235JOfCnTZFLn/3kJzdcxHsTEIn +Q9MAQz5BO2G6NnEMuH1gAizVK9Xdfv4ePHCWVKkn+OKbKgVPOY/iJ4Ayk1Ya4Npq +B1hUaVxHPdq+PipXll4tShnmc6BM6tYyrJhOWBkiRSQS +-----END CERTIFICATE----- diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 40b527a..97cb93b 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -96,7 +96,7 @@ block = "backlight" [[block]] block = "battery" -device = "BAT1" +device = "BAT0" interval = 10 format = "{percentage}% {time}" diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix new file mode 100644 index 0000000..7be2449 --- /dev/null +++ b/hardware/xps15-sphere.nix @@ -0,0 +1,47 @@ +# 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, ... }: + +let + unstable = import { config.allowUnfree = true; }; +in { + imports = + [ + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "tank/work/nixos"; + fsType = "zfs"; + }; + + fileSystems."/home" = + { device = "tank/work/home"; + fsType = "zfs"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/DC7B-5E2D"; + fsType = "vfat"; + }; + + swapDevices = [ ]; + + nix.maxJobs = lib.mkDefault 12; + powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; + + # custom + boot.kernelPackages = unstable.linuxPackages_latest; + boot.loader.systemd-boot.enable = true; + networking.hostId = "eff291c4"; + networking.hostName = "sphere"; + networking.interfaces.enp0s20f0u1.useDHCP = true; + powerManagement.powertop.enable = true; + services.tlp.enable = true; + +} diff --git a/packages/cloudstation.nix b/packages/cloudstation.nix new file mode 100644 index 0000000..3148b34 --- /dev/null +++ b/packages/cloudstation.nix @@ -0,0 +1,97 @@ +{ stdenv +, autoPatchelfHook +, dbus_libs +, dpkg +, fetchurl +, fontconfig +, freetype +, glib +, libICE +, libSM +, xorg +, openssl_1_0_2 +, openssl +, libX11 +, makeWrapper +, sqlite +, wrapQtAppsHook +, xkeyboard_config +, zlib +, curl +}: + +stdenv.mkDerivation rec { + name = "cloudstation"; + version = "4.3.3"; + release = "4469"; + + src = fetchurl { + url = "https://global.download.synology.com/download/Tools/CloudStationDrive/${version}-${release}/Ubuntu/Installer/x86_64/synology-cloud-station-drive-${release}.x86_64.deb"; + sha256 = "0v84yb70knmmjzp7lyn6jgy5bnfsfd47wmqh29phybqg4zk3d47j"; + }; + + nativeBuildInputs = [ + dpkg + autoPatchelfHook + makeWrapper + wrapQtAppsHook + ]; + buildInputs = [ + dbus_libs + fontconfig + freetype + glib + libICE + libSM + libX11 + sqlite + stdenv.cc.cc.lib + zlib + openssl_1_0_2 + xorg.libxcb + curl + ]; + + ldpath = stdenv.lib.makeLibraryPath [ + dbus_libs + fontconfig + freetype + glib + libICE + libSM + libX11 + sqlite + stdenv.cc.cc.lib + zlib + openssl_1_0_2 + openssl + xorg.libxcb + curl + ]; + + unpackPhase = '' + dpkg-deb -x $src . + find + ''; + + installPhase = '' + mkdir -p $out/bin + cp -R opt $out + chmod +x $out/opt/Synology/CloudStation/lib/* + + #ln -s $out/opt/Synology/CloudStation/bin/launcher $out/bin/cloudstation + makeWrapper \ + $out/opt/Synology/CloudStation/bin/launcher \ + $out/bin/cloudstation \ + --set QT_PLUGIN_PATH $out/opt/Synology/CloudStationBackup/lib/plugins/platforms \ + --set QT_XKB_CONFIG_ROOT ${xkeyboard_config}/share/X11/xkb \ + --set LD_LIBRARY_PATH $out/opt/Synology/CloudStation/lib:${ldpath} + ''; + + meta = with stdenv.lib; { + homepage = "https://www.synology.com/de-de/support/download/RS815#utilities"; + description = "Synology Cloud Station Drive"; + platforms = platforms.linux; + maintainers = with maintainers; [ foosinn ]; + }; +} diff --git a/packages/oc311.nix b/packages/oc311.nix new file mode 100644 index 0000000..770bb27 --- /dev/null +++ b/packages/oc311.nix @@ -0,0 +1,29 @@ +with import {}; + +stdenv.mkDerivation { + name = "oc311"; + version = "3.11"; + src = fetchurl { + url = "https://artifacts-openshift-release-3-11.svc.ci.openshift.org/zips/openshift-origin-client-tools-v3.11.0-8aa4c38-492-linux-64bit.tar.gz"; + sha256 = "e8fde584995657e359ddaa5b25e70af2bde4cd494322c712a8cd46bfef00f07f"; + }; + + nativeBuildInputs = [ + autoPatchelfHook + ]; + + unpackPhase = '' + tar xvpzf $src --strip-components=1 + ''; + + installPhase = '' + install -m 755 -D oc $out/bin/oc3 + ''; + + meta = with stdenv.lib; { + homepage = "https://www.odk.io"; + description = "openshift311 client"; + platforms = platforms.linux; + maintainers = with maintainers; [ foosinn ]; + }; +} diff --git a/packages/oc46.nix b/packages/oc46.nix new file mode 100644 index 0000000..b24c8ee --- /dev/null +++ b/packages/oc46.nix @@ -0,0 +1,29 @@ +with import {}; + +stdenv.mkDerivation rec { + name = "oc46"; + version = "4.6"; + src = fetchurl { + url = "https://mirror.openshift.com/pub/openshift-v4/clients/oc/${version}/linux/oc.tar.gz"; + sha256 = "60de3dbb6cf085a201c5b9490a6d5066248bfd5d3c42486a8fd43abdbdb731e6"; + }; + + nativeBuildInputs = [ + autoPatchelfHook + ]; + + unpackPhase = '' + tar xvpzf $src + ''; + + installPhase = '' + install -m 755 -D oc $out/bin/oc + ''; + + meta = with stdenv.lib; { + homepage = "https://www.odk.io"; + description = "openshift 4.6 client"; + platforms = platforms.linux; + maintainers = with maintainers; [ foosinn ]; + }; +} diff --git a/packages/openshift-install-4.5.nix b/packages/openshift-install-4.5.nix new file mode 100644 index 0000000..4c59399 --- /dev/null +++ b/packages/openshift-install-4.5.nix @@ -0,0 +1,30 @@ +with import {}; + +stdenv.mkDerivation rec { + name = "openshift-install-4.5"; + version = "4.5.0-0"; + release = "2020-10-03-012432"; + src = fetchurl { + url = "https://github.com/openshift/okd/releases/download/${version}.okd-${release}/openshift-install-linux-${version}.okd-${release}.tar.gz"; + sha256 = "f497193e8918840a4fd3267839affdc91ec166c5fd2ae3fdc64f498b5fc56f55"; + }; + + nativeBuildInputs = [ + autoPatchelfHook + ]; + + unpackPhase = '' + tar xvpzf $src + ''; + + installPhase = '' + install -m 755 -D openshift-install $out/bin/openshift-install + ''; + + meta = with stdenv.lib; { + homepage = "https://www.odk.io"; + description = "openshift 4.5 installer"; + platforms = platforms.linux; + maintainers = with maintainers; [ foosinn ]; + }; +} diff --git a/roles/admin.nix b/roles/admin.nix index dfeb70d..7c976a9 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -1,8 +1,12 @@ { pkgs, options, ...}: -{ +let + unstable = import {}; +in { environment.systemPackages = with pkgs; [ kubectl + cryptsetup + unstable.kubernetes-helm # podman conmon diff --git a/roles/base.nix b/roles/base.nix index 2c36d0d..54a7eb5 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -5,6 +5,7 @@ let in { environment.systemPackages = with pkgs; [ bash + bash-completion bat direnv fd @@ -18,7 +19,9 @@ in { ripgrep tcpdump tmux + wget z-lua + unzip unstable.starship (import ../packages/neovim.nix) ]; @@ -46,28 +49,21 @@ in { } starship_precmd_user_func=set_win_title - pw() { - len=''${1:-$(( $RANDOM % 24 + 8 ))} - tr -dc a-zA-Z0-9 < /dev/urandom | head -c $len - echo - } - cdg() { - gitroot=$(until [ -d .git ]; do [ "$PWD" == "/" ] && exit 1; cd ..; done; echo $PWD) - if [ $? == 0 ]; then -precmd_user_func = "title" - cd $gitroot - else - echo "gitroot not found." - return 1 - fi - } - . "$(fzf-share)/key-bindings.bash" . "$(fzf-share)/completion.bash" . <(z --init bash) . <(direnv hook bash) + . ${pkgs.bash-completion}/etc/profile.d/bash_completion.sh - if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then + for script in "$HOME"/dotfiles/bashrc/*.sh; do + . "$script" + done + + if [[ -z $DISPLAY ]] \ + && [[ $(tty) = /dev/tty1 ]] \ + && [[ "$USER" = "stefan" ]] \ + && [[ -x /run/current-system/sw/bin/startsway ]] + then exec startsway fi ''; diff --git a/roles/desktop.nix b/roles/desktop.nix index 1c77b8a..74d4640 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -69,7 +69,7 @@ in { hicolor-icon-theme numix-icon-theme - alacritty + unstable.alacritty imv inkscape libreoffice diff --git a/roles/dev.nix b/roles/dev.nix index 915bb95..00f83ad 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -1,31 +1,24 @@ -# 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, ... }: let unstable = import {}; in { environment.systemPackages = with pkgs; [ - arduino - avrdude - pkgsCross.avr.avrlibc - pkgsCross.avr.libcCross - pkgsCross.avr.buildPackages.gcc8 - pkgsCross.avr.buildPackages.binutils - + gnumake go python37 python37Packages.pyls-black python37Packages.pyls-isort python37Packages.pyls-mypy rustup + unstable.golangci-lint unstable.gopls unstable.rust-analyzer emacs sops tig + ltrace openssl pkg-config nasm cmake zlib gcc binutils-unwrapped ]; diff --git a/roles/embedded.nix b/roles/embedded.nix new file mode 100644 index 0000000..f998876 --- /dev/null +++ b/roles/embedded.nix @@ -0,0 +1,14 @@ +{ config, lib, pkgs, ... }: + +let + unstable = import {}; +in { + environment.systemPackages = with pkgs; [ + arduino + avrdude + pkgsCross.avr.avrlibc + pkgsCross.avr.libcCross + pkgsCross.avr.buildPackages.gcc8 + pkgsCross.avr.buildPackages.binutils + ]; +} diff --git a/roles/network.nix b/roles/network.nix new file mode 100644 index 0000000..20dd4a5 --- /dev/null +++ b/roles/network.nix @@ -0,0 +1,15 @@ +{ config, lib, pkgs, ... }: + +let + unstable = import { config.allowUnfree = true; }; + cloudstation = pkgs.libsForQt5.callPackage (import ../packages/cloudstation.nix) {}; +in { + + networking.networkmanager.enable = true; + users.users.stefan.extraGroups = [ "networkmanager" ]; + + environment.systemPackages = with pkgs; [ + networkmanagerapplet + networkmanager-vpnc + ]; +} diff --git a/roles/work.nix b/roles/work.nix new file mode 100644 index 0000000..a0b64cb --- /dev/null +++ b/roles/work.nix @@ -0,0 +1,29 @@ +{ config, lib, pkgs, ... }: + +let + unstable = import { config.allowUnfree = true; }; + cloudstation = pkgs.libsForQt5.callPackage (import ../packages/cloudstation.nix) {}; +in { + + security.pki.certificateFiles = [ + ../dotfiles/certs/NetzmarktCA.crt + ../dotfiles/certs/vcenter.netzmarkt.lan.crt + ]; + + networking.extraHosts = '' + 35.234.109.94 fsi.thomann.de + ''; + + environment.systemPackages = with pkgs; [ + (import ../packages/oc311.nix) + (import ../packages/oc46.nix) + (import ../packages/openshift-install-4.5.nix) + astroid + cloudstation + drone-cli + nagstamon + python37Packages.pyqt5_with_qtmultimedia # required for nagstamon + unstable.slack + unstable.velero + ]; +} From b73eed39155316e9c5af5cc75cea371335ad3de9 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 8 Oct 2020 09:03:52 +0200 Subject: [PATCH 023/227] lsp support requires emacs 27+ --- roles/dev.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/dev.nix b/roles/dev.nix index 00f83ad..73b477e 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -15,10 +15,10 @@ in { unstable.gopls unstable.rust-analyzer - emacs sops tig ltrace + unstable.emacs openssl pkg-config nasm cmake zlib gcc binutils-unwrapped ]; From ecfef4074e5e0f81b67bbe58926c84dccaf80b93 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 8 Oct 2020 13:57:10 +0200 Subject: [PATCH 024/227] add nagstamon --- configuration.nix | 1 - packages/nagstamon.nix | 45 ++++++++++++++++++++++++++++++++++++++++++ roles/work.nix | 4 ++-- 3 files changed, 47 insertions(+), 3 deletions(-) create mode 100644 packages/nagstamon.nix diff --git a/configuration.nix b/configuration.nix index feebf21..c082346 100644 --- a/configuration.nix +++ b/configuration.nix @@ -17,7 +17,6 @@ ./roles/mail.nix ./roles/vpn.nix ./roles/network.nix - ./roles/private.nix ./roles/work.nix ]; diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix new file mode 100644 index 0000000..91ba888 --- /dev/null +++ b/packages/nagstamon.nix @@ -0,0 +1,45 @@ +{ stdenv, fetchFromGitHub, python37Packages, wrapQtAppsHook }: + +python37Packages.buildPythonApplication rec { + pname = "nagstamon"; + version = "3.4.1"; + + src = fetchFromGitHub { + owner = "foosinn"; + repo = "Nagstamon"; + rev = "nixos"; + sha256 = "0m2hlnz7brcvin451y09l73lghhdjs8zwd7wn7k2ahv3829lksfq"; + }; + + # Test assumes darwin + doCheck = false; + + nativeBuildInputs = [ wrapQtAppsHook ]; + dontWrapQtApps = true; + postFixup = '' + wrapQtApp $out/bin/nagstamon.py + ''; + + propagatedBuildInputs = with python37Packages; [ + beautifulsoup4 + configparser + dateutil + kerberos + keyring + lxml + psutil + pyqt5_with_qtmultimedia + requests + requests-kerberos + xlib + ]; + + meta = with stdenv.lib; { + description = "A status monitor for the desktop"; + homepage = "https://nagstamon.ifw-dresden.de/"; + license = licenses.gpl2; + maintainers = with maintainers; [ pSub ]; + inherit version; + }; +} + diff --git a/roles/work.nix b/roles/work.nix index a0b64cb..63f191c 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -3,6 +3,7 @@ let unstable = import { config.allowUnfree = true; }; cloudstation = pkgs.libsForQt5.callPackage (import ../packages/cloudstation.nix) {}; + bbnagstamon = pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) {}; in { security.pki.certificateFiles = [ @@ -21,8 +22,7 @@ in { astroid cloudstation drone-cli - nagstamon - python37Packages.pyqt5_with_qtmultimedia # required for nagstamon + bbnagstamon unstable.slack unstable.velero ]; From 1db3202ba637d218728501cb830954f82e8d3375 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 8 Oct 2020 22:12:22 +0200 Subject: [PATCH 025/227] update starship config --- dotfiles/starship.toml | 39 ++++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/dotfiles/starship.toml b/dotfiles/starship.toml index 3597f1f..383e9c7 100644 --- a/dotfiles/starship.toml +++ b/dotfiles/starship.toml @@ -1,28 +1,33 @@ add_newline = false -prompt_order = [ - "username", - "hostname", - "kubernetes", - "directory", - "git_branch", - "git_commit", - "git_state", - "git_status", - "nix_shell", - "cmd_duration", - "custom", - "line_break", - "jobs", - "battery", - "character", -] +format = """ +$username\ +$hostname\ +$kubernetes\ +$directory\ +$git_branch\ +$git_commit\ +$git_state\ +$git_status\ +$nix_shell\ +$cmd_duration\ +$custom\ +$line_break\ +$jobs\ +$battery\ +$character\ +""" [username] show_always = true +format = "[$user]($style)@" [hostname] ssh_only = false +format = "[$hostname]($style) " + +[git_branch] +format = "[$symbol$branch]($style)" [character] use_symbol_for_status = false From f8922c1cbd3626873b1cd5ad1ef5c84dfe19fa0e Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 8 Oct 2020 22:14:59 +0200 Subject: [PATCH 026/227] use unstable syncthing --- roles/desktop.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index 74d4640..6add57b 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -111,10 +111,11 @@ in { services.syncthing = { enable = true; + dataDir = "/home/stefan"; openDefaultPorts = true; + package = unstable.syncthing; user = "stefan"; group = "users"; - dataDir = "/home/stefan"; }; services.avahi.enable = true; From 3fb358bacca55e426cdbdbb3e8c2d1172fc9b7d6 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 8 Oct 2020 22:19:45 +0200 Subject: [PATCH 027/227] initial discovery configuration --- hardware/x220-discovery.nix | 46 +++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 hardware/x220-discovery.nix diff --git a/hardware/x220-discovery.nix b/hardware/x220-discovery.nix new file mode 100644 index 0000000..7082acf --- /dev/null +++ b/hardware/x220-discovery.nix @@ -0,0 +1,46 @@ +# 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, ... }: + +let + unstable = import { config.allowUnfree = true; }; +in { + imports = + [ + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "tank/root/nixos"; + fsType = "zfs"; + }; + + fileSystems."/home" = + { device = "tank/root/home"; + fsType = "zfs"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/1339-E59C"; + fsType = "vfat"; + }; + + swapDevices = [ ]; + + nix.maxJobs = lib.mkDefault 4; + powerManagement.cpuFreqGovernor = lib.mkDefault "performance"; + + # custom + boot.kernelPackages = unstable.linuxPackages_latest; + boot.loader.systemd-boot.enable = true; + networking.hostId = "ef3a5d57"; + networking.hostName = "discovery"; + powerManagement.powertop.enable = true; + services.tlp.enable = true; + +} From 9308bc4aba9141ff287516bd27e3c6bbafbae56b Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 9 Oct 2020 10:08:10 +0200 Subject: [PATCH 028/227] scale lockscreen --- dotfiles/sway/config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 5bbabee..fa5ea3b 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -33,7 +33,7 @@ floating_modifier $mod normal bindsym $mod+Shift+c reload bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit' bindsym $mod+Shift+p exec keepassxc -bindsym $mod+z exec swaylock -t -i /home/stefan/Downloads/bg.jpg +bindsym $mod+z exec swaylock -t -i /home/stefan/Downloads/bg.jpg --scaling=fill bindsym $mod+Up exec light -A 5 bindsym $mod+Down exec light -U 5 bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png From 066c275cba13eb88aa90945f5e719f9b97b15c48 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 12 Oct 2020 08:11:15 +0200 Subject: [PATCH 029/227] add google cloud sdk --- roles/work.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/roles/work.nix b/roles/work.nix index 63f191c..709737b 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -20,9 +20,10 @@ in { (import ../packages/oc46.nix) (import ../packages/openshift-install-4.5.nix) astroid + bbnagstamon cloudstation drone-cli - bbnagstamon + unstable.google-cloud-sdk unstable.slack unstable.velero ]; From 0f390344dfd5b90c2a387536caecc1d3e78ff620 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 12 Oct 2020 08:13:16 +0200 Subject: [PATCH 030/227] add notcoal (wip) --- packages/notcoal/Cargo.lock.patch | 622 ++++++++++++++++++++++++++++++ packages/notcoal/default.nix | 27 ++ roles/mail.nix | 4 +- 3 files changed, 652 insertions(+), 1 deletion(-) create mode 100644 packages/notcoal/Cargo.lock.patch create mode 100644 packages/notcoal/default.nix diff --git a/packages/notcoal/Cargo.lock.patch b/packages/notcoal/Cargo.lock.patch new file mode 100644 index 0000000..63de9ff --- /dev/null +++ b/packages/notcoal/Cargo.lock.patch @@ -0,0 +1,622 @@ +diff --git a/Cargo.lock b/Cargo.lock +new file mode 100644 +index 0000000..1bcb060 +--- /dev/null ++++ b/Cargo.lock +@@ -0,0 +1,616 @@ ++# This file is automatically @generated by Cargo. ++# It is not intended for manual editing. ++[[package]] ++name = "ahash" ++version = "0.3.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e8fd72866655d1904d6b0997d0b07ba561047d070fbe29de039031c641b61217" ++ ++[[package]] ++name = "aho-corasick" ++version = "0.7.13" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86" ++dependencies = [ ++ "memchr", ++] ++ ++[[package]] ++name = "ansi_term" ++version = "0.11.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" ++dependencies = [ ++ "winapi", ++] ++ ++[[package]] ++name = "arrayref" ++version = "0.3.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544" ++ ++[[package]] ++name = "arrayvec" ++version = "0.5.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8" ++ ++[[package]] ++name = "atty" ++version = "0.2.14" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" ++dependencies = [ ++ "hermit-abi", ++ "libc", ++ "winapi", ++] ++ ++[[package]] ++name = "autocfg" ++version = "1.0.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d" ++ ++[[package]] ++name = "base64" ++version = "0.10.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" ++dependencies = [ ++ "byteorder", ++] ++ ++[[package]] ++name = "base64" ++version = "0.11.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7" ++ ++[[package]] ++name = "base64" ++version = "0.12.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" ++ ++[[package]] ++name = "bitflags" ++version = "1.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" ++ ++[[package]] ++name = "blake2b_simd" ++version = "0.5.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d8fb2d74254a3a0b5cac33ac9f8ed0e44aa50378d9dbb2e5d83bd21ed1dc2c8a" ++dependencies = [ ++ "arrayref", ++ "arrayvec", ++ "constant_time_eq", ++] ++ ++[[package]] ++name = "byteorder" ++version = "1.3.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de" ++ ++[[package]] ++name = "cfg-if" ++version = "0.1.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" ++ ++[[package]] ++name = "charset" ++version = "0.1.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4f426e64df1c3de26cbf44593c6ffff5dbfd43bbf9de0d075058558126b3fc73" ++dependencies = [ ++ "base64 0.10.1", ++ "encoding_rs", ++] ++ ++[[package]] ++name = "clap" ++version = "2.33.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "bdfa80d47f954d53a35a64987ca1422f495b8d6483c0fe9f7117b36c2a792129" ++dependencies = [ ++ "ansi_term", ++ "atty", ++ "bitflags", ++ "strsim", ++ "textwrap", ++ "unicode-width", ++ "vec_map", ++] ++ ++[[package]] ++name = "constant_time_eq" ++version = "0.1.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" ++ ++[[package]] ++name = "crossbeam-utils" ++version = "0.7.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" ++dependencies = [ ++ "autocfg", ++ "cfg-if", ++ "lazy_static", ++] ++ ++[[package]] ++name = "dirs" ++version = "2.0.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3" ++dependencies = [ ++ "cfg-if", ++ "dirs-sys", ++] ++ ++[[package]] ++name = "dirs-sys" ++version = "0.3.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8e93d7f5705de3e49895a2b5e0b8855a1c27f080192ae9c32a6432d50741a57a" ++dependencies = [ ++ "libc", ++ "redox_users", ++ "winapi", ++] ++ ++[[package]] ++name = "dlv-list" ++version = "0.2.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "1b391911b9a786312a10cb9d2b3d0735adfd5a8113eb3648de26a75e91b0826c" ++dependencies = [ ++ "rand", ++] ++ ++[[package]] ++name = "encoding_rs" ++version = "0.8.23" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e8ac63f94732332f44fe654443c46f6375d1939684c17b0afb6cb56b0456e171" ++dependencies = [ ++ "cfg-if", ++] ++ ++[[package]] ++name = "getrandom" ++version = "0.1.14" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb" ++dependencies = [ ++ "cfg-if", ++ "libc", ++ "wasi", ++] ++ ++[[package]] ++name = "hashbrown" ++version = "0.7.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "96282e96bfcd3da0d3aa9938bedf1e50df3269b6db08b4876d2da0bb1a0841cf" ++dependencies = [ ++ "ahash", ++ "autocfg", ++] ++ ++[[package]] ++name = "heck" ++version = "0.3.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" ++dependencies = [ ++ "unicode-segmentation", ++] ++ ++[[package]] ++name = "hermit-abi" ++version = "0.1.15" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9" ++dependencies = [ ++ "libc", ++] ++ ++[[package]] ++name = "itoa" ++version = "0.4.6" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6" ++ ++[[package]] ++name = "lazy_static" ++version = "1.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" ++ ++[[package]] ++name = "libc" ++version = "0.2.73" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "bd7d4bd64732af4bf3a67f367c27df8520ad7e230c5817b8ff485864d80242b9" ++ ++[[package]] ++name = "mailparse" ++version = "0.12.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "336d59e50513349423fa89bdadef5b5c49972a6ce0b66d3b2c7c8b7ab3969faf" ++dependencies = [ ++ "base64 0.12.3", ++ "charset", ++ "quoted_printable", ++] ++ ++[[package]] ++name = "memchr" ++version = "2.3.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400" ++ ++[[package]] ++name = "notcoal" ++version = "0.4.0" ++dependencies = [ ++ "dirs", ++ "mailparse", ++ "notmuch", ++ "regex", ++ "rust-ini", ++ "serde", ++ "serde_json", ++ "structopt", ++] ++ ++[[package]] ++name = "notmuch" ++version = "0.6.0" ++dependencies = [ ++ "libc", ++ "supercow", ++] ++ ++[[package]] ++name = "ordered-multimap" ++version = "0.2.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e88f947c6799d5eff50e6cf8a2365c17ac4aa8f8f43aceeedc29b616d872a358" ++dependencies = [ ++ "dlv-list", ++ "hashbrown", ++] ++ ++[[package]] ++name = "ppv-lite86" ++version = "0.2.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea" ++ ++[[package]] ++name = "proc-macro-error" ++version = "1.0.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "fc175e9777c3116627248584e8f8b3e2987405cabe1c0adf7d1dd28f09dc7880" ++dependencies = [ ++ "proc-macro-error-attr", ++ "proc-macro2", ++ "quote", ++ "syn", ++ "version_check", ++] ++ ++[[package]] ++name = "proc-macro-error-attr" ++version = "1.0.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3cc9795ca17eb581285ec44936da7fc2335a3f34f2ddd13118b6f4d515435c50" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn", ++ "syn-mid", ++ "version_check", ++] ++ ++[[package]] ++name = "proc-macro2" ++version = "1.0.19" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "04f5f085b5d71e2188cb8271e5da0161ad52c3f227a661a3c135fdf28e258b12" ++dependencies = [ ++ "unicode-xid", ++] ++ ++[[package]] ++name = "quote" ++version = "1.0.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37" ++dependencies = [ ++ "proc-macro2", ++] ++ ++[[package]] ++name = "quoted_printable" ++version = "0.4.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "47b080c5db639b292ac79cbd34be0cfc5d36694768d8341109634d90b86930e2" ++ ++[[package]] ++name = "rand" ++version = "0.7.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" ++dependencies = [ ++ "getrandom", ++ "libc", ++ "rand_chacha", ++ "rand_core", ++ "rand_hc", ++] ++ ++[[package]] ++name = "rand_chacha" ++version = "0.2.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" ++dependencies = [ ++ "ppv-lite86", ++ "rand_core", ++] ++ ++[[package]] ++name = "rand_core" ++version = "0.5.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" ++dependencies = [ ++ "getrandom", ++] ++ ++[[package]] ++name = "rand_hc" ++version = "0.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" ++dependencies = [ ++ "rand_core", ++] ++ ++[[package]] ++name = "redox_syscall" ++version = "0.1.57" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" ++ ++[[package]] ++name = "redox_users" ++version = "0.3.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "09b23093265f8d200fa7b4c2c76297f47e681c655f6f1285a8780d6a022f7431" ++dependencies = [ ++ "getrandom", ++ "redox_syscall", ++ "rust-argon2", ++] ++ ++[[package]] ++name = "regex" ++version = "1.3.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6" ++dependencies = [ ++ "aho-corasick", ++ "memchr", ++ "regex-syntax", ++ "thread_local", ++] ++ ++[[package]] ++name = "regex-syntax" ++version = "0.6.18" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8" ++ ++[[package]] ++name = "rust-argon2" ++version = "0.7.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2bc8af4bda8e1ff4932523b94d3dd20ee30a87232323eda55903ffd71d2fb017" ++dependencies = [ ++ "base64 0.11.0", ++ "blake2b_simd", ++ "constant_time_eq", ++ "crossbeam-utils", ++] ++ ++[[package]] ++name = "rust-ini" ++version = "0.15.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7a3679dd538c876a7b606f3bb951c8a20fc281a0ff7795f59f7cb490e3f979e1" ++dependencies = [ ++ "cfg-if", ++ "ordered-multimap", ++] ++ ++[[package]] ++name = "ryu" ++version = "1.0.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" ++ ++[[package]] ++name = "serde" ++version = "1.0.114" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5317f7588f0a5078ee60ef675ef96735a1442132dc645eb1d12c018620ed8cd3" ++dependencies = [ ++ "serde_derive", ++] ++ ++[[package]] ++name = "serde_derive" ++version = "1.0.114" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "2a0be94b04690fbaed37cddffc5c134bf537c8e3329d53e982fe04c374978f8e" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn", ++] ++ ++[[package]] ++name = "serde_json" ++version = "1.0.57" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "164eacbdb13512ec2745fb09d51fd5b22b0d65ed294a1dcf7285a360c80a675c" ++dependencies = [ ++ "itoa", ++ "ryu", ++ "serde", ++] ++ ++[[package]] ++name = "strsim" ++version = "0.8.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" ++ ++[[package]] ++name = "structopt" ++version = "0.3.15" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "de2f5e239ee807089b62adce73e48c625e0ed80df02c7ab3f068f5db5281065c" ++dependencies = [ ++ "clap", ++ "lazy_static", ++ "structopt-derive", ++] ++ ++[[package]] ++name = "structopt-derive" ++version = "0.4.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "510413f9de616762a4fbeab62509bf15c729603b72d7cd71280fbca431b1c118" ++dependencies = [ ++ "heck", ++ "proc-macro-error", ++ "proc-macro2", ++ "quote", ++ "syn", ++] ++ ++[[package]] ++name = "supercow" ++version = "0.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "171758edb47aa306a78dfa4ab9aeb5167405bd4e3dc2b64e88f6a84bbe98bd63" ++ ++[[package]] ++name = "syn" ++version = "1.0.36" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4cdb98bcb1f9d81d07b536179c269ea15999b5d14ea958196413869445bb5250" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "unicode-xid", ++] ++ ++[[package]] ++name = "syn-mid" ++version = "0.5.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "7be3539f6c128a931cf19dcee741c1af532c7fd387baa739c03dd2e96479338a" ++dependencies = [ ++ "proc-macro2", ++ "quote", ++ "syn", ++] ++ ++[[package]] ++name = "textwrap" ++version = "0.11.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" ++dependencies = [ ++ "unicode-width", ++] ++ ++[[package]] ++name = "thread_local" ++version = "1.0.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14" ++dependencies = [ ++ "lazy_static", ++] ++ ++[[package]] ++name = "unicode-segmentation" ++version = "1.6.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0" ++ ++[[package]] ++name = "unicode-width" ++version = "0.1.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" ++ ++[[package]] ++name = "unicode-xid" ++version = "0.2.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" ++ ++[[package]] ++name = "vec_map" ++version = "0.8.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" ++ ++[[package]] ++name = "version_check" ++version = "0.9.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed" ++ ++[[package]] ++name = "wasi" ++version = "0.9.0+wasi-snapshot-preview1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" ++ ++[[package]] ++name = "winapi" ++version = "0.3.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" ++dependencies = [ ++ "winapi-i686-pc-windows-gnu", ++ "winapi-x86_64-pc-windows-gnu", ++] ++ ++[[package]] ++name = "winapi-i686-pc-windows-gnu" ++version = "0.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" ++ ++[[package]] ++name = "winapi-x86_64-pc-windows-gnu" ++version = "0.4.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" diff --git a/packages/notcoal/default.nix b/packages/notcoal/default.nix new file mode 100644 index 0000000..e571836 --- /dev/null +++ b/packages/notcoal/default.nix @@ -0,0 +1,27 @@ +{ lib, stdenv, rustPlatform, notmuch, bash }: + +rustPlatform.buildRustPackage rec { + pname = "notcoal"; + version = "0.3.0"; + + src = fetchTarball { + url = https://ghom.niij.org/eaon/notcoal/archive/v0.3.0.tar.gz; + sha256 = "19gaba6asid5vplcy9q0ama40dvwwxglc40ks5240lydrvgfrimq"; + }; + cargoPatches = [ + ./Cargo.lock.patch + ]; + cargoSha256 = "0kgjxq2319l2gh1xc0f3ir1pa6z7p62z3fccswwxrz7gbn7nc07c"; + cargoBuildFlags = ["--feature=standalone"]; + + buildInputs = [ + bash + notmuch + ]; + + + meta = with stdenv.lib; { + description = "An email tagger for notmuch"; + homepage = "https://ghom.niij.org/eaon/notcoal"; + }; +} diff --git a/roles/mail.nix b/roles/mail.nix index 9aabab4..93f6a3f 100644 --- a/roles/mail.nix +++ b/roles/mail.nix @@ -1,6 +1,8 @@ { config, lib, pkgs, ... }: -{ +let + notcoal = pkgs.callPackage (import ../packages/notcoal) {}; +in { environment.systemPackages = with pkgs; [ astroid isync From d39c1a3622afd208376c6bff64359d2d1046b5fc Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 12 Oct 2020 08:46:48 +0200 Subject: [PATCH 031/227] dirty fix for cloudstation --- packages/cloudstation.nix | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/packages/cloudstation.nix b/packages/cloudstation.nix index 3148b34..e8165a6 100644 --- a/packages/cloudstation.nix +++ b/packages/cloudstation.nix @@ -71,7 +71,6 @@ stdenv.mkDerivation rec { unpackPhase = '' dpkg-deb -x $src . - find ''; installPhase = '' @@ -86,6 +85,22 @@ stdenv.mkDerivation rec { --set QT_PLUGIN_PATH $out/opt/Synology/CloudStationBackup/lib/plugins/platforms \ --set QT_XKB_CONFIG_ROOT ${xkeyboard_config}/share/X11/xkb \ --set LD_LIBRARY_PATH $out/opt/Synology/CloudStation/lib:${ldpath} + + cat >> $out/bin/usercloudstation < Date: Tue, 13 Oct 2020 15:07:43 +0200 Subject: [PATCH 032/227] update microcode --- hardware/xps15-sphere.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index 7be2449..80c0b2e 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -38,6 +38,7 @@ in { # custom boot.kernelPackages = unstable.linuxPackages_latest; boot.loader.systemd-boot.enable = true; + hardware.cpu.intel.updateMicrocode = true; networking.hostId = "eff291c4"; networking.hostName = "sphere"; networking.interfaces.enp0s20f0u1.useDHCP = true; From 7e3f939ed3d17cbe8a0f0ae9dd7240f23b969020 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 12 Oct 2020 12:37:26 +0200 Subject: [PATCH 033/227] add whois --- roles/admin.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/roles/admin.nix b/roles/admin.nix index 7c976a9..e9e67fc 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -4,9 +4,10 @@ let unstable = import {}; in { environment.systemPackages = with pkgs; [ - kubectl cryptsetup + kubectl unstable.kubernetes-helm + whois # podman conmon From 91a4d2a5163d83e7e5d30333e13c6732893c709a Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 12 Oct 2020 12:37:41 +0200 Subject: [PATCH 034/227] add pv and sysstat --- roles/base.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/roles/base.nix b/roles/base.nix index 54a7eb5..e76d8c9 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -16,12 +16,14 @@ in { jq ncdu openssl + pv ripgrep + sysstat tcpdump tmux + unzip wget z-lua - unzip unstable.starship (import ../packages/neovim.nix) ]; From ab9535556b13c2b9998de8c8cce15fc5364fb9d0 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 20 Oct 2020 11:44:51 +0200 Subject: [PATCH 035/227] add bluetooth support --- roles/desktop.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index 6add57b..1e6d25a 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -104,6 +104,9 @@ in { ) ]; + hardware.bluetooth.enable = true; + services.blueman.enable = true; + services.gvfs = { enable = true; package = lib.mkForce pkgs.gnome3.gvfs; From c65b69115cb81e6db6c23adad281626cfcfac2d3 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 20 Oct 2020 11:45:31 +0200 Subject: [PATCH 036/227] add mail sending support --- roles/mail.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/mail.nix b/roles/mail.nix index 93f6a3f..403cfd3 100644 --- a/roles/mail.nix +++ b/roles/mail.nix @@ -6,6 +6,7 @@ in { environment.systemPackages = with pkgs; [ astroid isync + msmtp notmuch ]; } From 8327fd061bfe4bbc135a59d0bf38accd55711191 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 21 Oct 2020 11:35:41 +0200 Subject: [PATCH 037/227] fix build flags --- packages/notcoal/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/notcoal/default.nix b/packages/notcoal/default.nix index e571836..7c080eb 100644 --- a/packages/notcoal/default.nix +++ b/packages/notcoal/default.nix @@ -12,7 +12,7 @@ rustPlatform.buildRustPackage rec { ./Cargo.lock.patch ]; cargoSha256 = "0kgjxq2319l2gh1xc0f3ir1pa6z7p62z3fccswwxrz7gbn7nc07c"; - cargoBuildFlags = ["--feature=standalone"]; + cargoBuildFlags = ["--features=standalone"]; buildInputs = [ bash From 620762f078bda8719a8b54756ea755f416a91eb6 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 21 Oct 2020 11:36:01 +0200 Subject: [PATCH 038/227] remove systemd managed nic --- hardware/xps15-sphere.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index 80c0b2e..6ab7175 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -41,7 +41,6 @@ in { hardware.cpu.intel.updateMicrocode = true; networking.hostId = "eff291c4"; networking.hostName = "sphere"; - networking.interfaces.enp0s20f0u1.useDHCP = true; powerManagement.powertop.enable = true; services.tlp.enable = true; From de97a020a1b15278a93064078179b8c54a91ea1d Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 24 Oct 2020 16:14:35 +0200 Subject: [PATCH 039/227] rename private stuff --- roles/{embedded.nix => private.nix} | 3 +++ 1 file changed, 3 insertions(+) rename roles/{embedded.nix => private.nix} (87%) diff --git a/roles/embedded.nix b/roles/private.nix similarity index 87% rename from roles/embedded.nix rename to roles/private.nix index f998876..8ce8d02 100644 --- a/roles/embedded.nix +++ b/roles/private.nix @@ -10,5 +10,8 @@ in { pkgsCross.avr.libcCross pkgsCross.avr.buildPackages.gcc8 pkgsCross.avr.buildPackages.binutils + unstable.cura + openscad + kicad ]; } From c5b592afb3702aa0f4d1938c870b183f124c0261 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 24 Oct 2020 16:15:15 +0200 Subject: [PATCH 040/227] add missing tools --- roles/base.nix | 2 ++ roles/desktop.nix | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/roles/base.nix b/roles/base.nix index e76d8c9..4ce365a 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -4,9 +4,11 @@ let unstable = import {}; in { environment.systemPackages = with pkgs; [ + acpi bash bash-completion bat + borgbackup direnv fd fzf diff --git a/roles/desktop.nix b/roles/desktop.nix index 1e6d25a..a8108cd 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -69,9 +69,9 @@ in { hicolor-icon-theme numix-icon-theme - unstable.alacritty imv inkscape + libqrencode libreoffice libsecret lxappearance @@ -81,9 +81,10 @@ in { pcmanfm pulseaudio pulsemixer - unstable.keepassxc wl-clipboard xdg_utils + unstable.alacritty + unstable.keepassxc ( pkgs.writeTextFile { name = "startsway"; From b3cf81673891244e88f557dfffa1d83e37cdef1d Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 27 Oct 2020 16:28:40 +0100 Subject: [PATCH 041/227] add video accelleration --- hardware/xps15-sphere.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index 6ab7175..39bebb5 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -15,6 +15,19 @@ in { boot.kernelModules = [ "kvm-intel" ]; boot.extraModulePackages = [ ]; + nixpkgs.config.packageOverrides = pkgs: { + vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; }; + }; + hardware.opengl = { + enable = true; + extraPackages = with pkgs; [ + intel-media-driver # LIBVA_DRIVER_NAME=iHD + vaapiIntel # LIBVA_DRIVER_NAME=i965 + vaapiVdpau + libvdpau-va-gl + ]; + }; + fileSystems."/" = { device = "tank/work/nixos"; fsType = "zfs"; From eab89a1e2f7654d1908eddf8cc0fc99930e792d6 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 27 Oct 2020 16:29:38 +0100 Subject: [PATCH 042/227] add bolt for thunderbold docking --- hardware/xps15-sphere.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index 39bebb5..90ddae4 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -56,5 +56,6 @@ in { networking.hostName = "sphere"; powerManagement.powertop.enable = true; services.tlp.enable = true; + services.hardware.bolt.enable = true; } From 33e2dd9842419b160558dbeb1a6f1a1531eb8508 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 27 Oct 2020 16:29:54 +0100 Subject: [PATCH 043/227] add kustomize --- roles/admin.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/roles/admin.nix b/roles/admin.nix index e9e67fc..9a92294 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -6,8 +6,9 @@ in { environment.systemPackages = with pkgs; [ cryptsetup kubectl - unstable.kubernetes-helm whois + unstable.kubernetes-helm + unstable.kustomize # podman conmon From 364356c26e2e214e0e4097cc86ddc81b04324700 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 27 Oct 2020 16:30:16 +0100 Subject: [PATCH 044/227] add tools for webcam based streaming --- roles/desktop.nix | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index a8108cd..5b7d7c4 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -20,9 +20,23 @@ in { swayidle swaylock xwayland + wf-recorder ]; }; + services.pipewire.enable = true; + xdg.portal = { + enable = true; + gtkUsePortal = true; + extraPortals = with unstable; [ + xdg-desktop-portal-gtk + xdg-desktop-portal-wlr + ]; + }; + boot.extraModulePackages = with config.boot.kernelPackages; [ + v4l2loopback + ]; + environment = { etc = { "sway/config".source = ../dotfiles/sway/config; From e03743961175371c1526d3a90417f70e5f50f246 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 27 Oct 2020 16:30:35 +0100 Subject: [PATCH 045/227] use internal hostname for mon to work with vpn --- roles/work.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/work.nix b/roles/work.nix index 709737b..068c768 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -13,6 +13,7 @@ in { networking.extraHosts = '' 35.234.109.94 fsi.thomann.de + 10.100.7.11 mon.netzmarkt.de ''; environment.systemPackages = with pkgs; [ From b7545ff155b7ff79168a50bd5571f02354b079c1 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 27 Oct 2020 16:32:33 +0100 Subject: [PATCH 046/227] add mtr and nload for network checks --- roles/base.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/roles/base.nix b/roles/base.nix index 4ce365a..149d8bc 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -16,7 +16,9 @@ in { gnupg htop jq + mtr ncdu + nload openssl pv ripgrep From 56ab58a2ef7cfa697897351401a74169f21d9e9b Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 28 Oct 2020 18:20:30 +0100 Subject: [PATCH 047/227] add pwgen vault file and manix --- roles/admin.nix | 2 ++ roles/base.nix | 2 ++ 2 files changed, 4 insertions(+) diff --git a/roles/admin.nix b/roles/admin.nix index 9a92294..439f110 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -6,9 +6,11 @@ in { environment.systemPackages = with pkgs; [ cryptsetup kubectl + pwgen whois unstable.kubernetes-helm unstable.kustomize + unstable.vault # podman conmon diff --git a/roles/base.nix b/roles/base.nix index 149d8bc..b61b74a 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -11,6 +11,7 @@ in { borgbackup direnv fd + file fzf git gnupg @@ -28,6 +29,7 @@ in { unzip wget z-lua + unstable.manix unstable.starship (import ../packages/neovim.nix) ]; From c2406e4c7ccacda387e86e2b7620c245689a5699 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 28 Oct 2020 22:48:31 +0100 Subject: [PATCH 048/227] use stable pkgs on nixos 20.09 --- roles/desktop.nix | 4 ++-- roles/dev.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index 5b7d7c4..e2bb1a4 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -28,7 +28,7 @@ in { xdg.portal = { enable = true; gtkUsePortal = true; - extraPortals = with unstable; [ + extraPortals = with pkgs; [ xdg-desktop-portal-gtk xdg-desktop-portal-wlr ]; @@ -83,6 +83,7 @@ in { hicolor-icon-theme numix-icon-theme + alacritty imv inkscape libqrencode @@ -97,7 +98,6 @@ in { pulsemixer wl-clipboard xdg_utils - unstable.alacritty unstable.keepassxc ( pkgs.writeTextFile { diff --git a/roles/dev.nix b/roles/dev.nix index 73b477e..9a9d598 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -15,10 +15,10 @@ in { unstable.gopls unstable.rust-analyzer + emacs + ltrace sops tig - ltrace - unstable.emacs openssl pkg-config nasm cmake zlib gcc binutils-unwrapped ]; From 745f613755be0dd85ead11a87775e1bcdea634d7 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 28 Oct 2020 22:49:45 +0100 Subject: [PATCH 049/227] use systemd automount --- roles/desktop.nix | 5 ----- roles/private.nix | 6 ++++++ 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index e2bb1a4..5e7c5fe 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -122,11 +122,6 @@ in { hardware.bluetooth.enable = true; services.blueman.enable = true; - services.gvfs = { - enable = true; - package = lib.mkForce pkgs.gnome3.gvfs; - }; - services.syncthing = { enable = true; dataDir = "/home/stefan"; diff --git a/roles/private.nix b/roles/private.nix index 8ce8d02..0776b19 100644 --- a/roles/private.nix +++ b/roles/private.nix @@ -14,4 +14,10 @@ in { openscad kicad ]; + + fileSystems."/mnt/nfs" = { + device = "10.1.20.29:/srv/nfs"; + fsType = "nfs"; + options = [ "x-systemd.automount" "noauto" "x-systemd.idle-timeout=120" ]; + }; } From 3b58151811157c870a05bab9b5d3cc7aa61a98ef Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 28 Oct 2020 22:50:12 +0100 Subject: [PATCH 050/227] add thunar (works in 20.09) --- roles/desktop.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index 5e7c5fe..6c02e94 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -98,6 +98,7 @@ in { pulsemixer wl-clipboard xdg_utils + xfce.thunar unstable.keepassxc ( pkgs.writeTextFile { From c8b176751f2bdba9508b818319200c5be1c98c70 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 28 Oct 2020 22:50:27 +0100 Subject: [PATCH 051/227] more env --- roles/desktop.nix | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index 6c02e94..87a631f 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -108,11 +108,17 @@ in { text = '' #! ${pkgs.bash}/bin/bash + export GTK_ICON_THEME=Tango + export GTK_THEME=Blackbird export _JAVA_AWT_WM_NOREPARENTING=1 - export MOZ_ENABLE_WAYLAND=1 export QT_AUTO_SCREEN_SCALE_FACTOR=0 - export QT_WAYLAND_FORCE_DPI=96 + export MOZ_ENABLE_WAYLAND=1 + export MOZ_USE_XINPUT2=1 + export QT_AUTO_SCREEN_SCALE_FACTOR=0 export QT_QPA_PLATFORM=wayland-egl + export QT_WAYLAND_FORCE_DPI=96 export SDL_VIDEODRIVER=wayland + export XDG_CURRENT_DESKTOP=sway + export XDG_SESSION_TYPE=wayland ${pkgs.dbus}/bin/dbus-run-session ${pkgs.sway}/bin/sway ''; From d073ec871459583a50f15bc40740ebf979aee165 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 28 Oct 2020 23:39:54 +0100 Subject: [PATCH 052/227] colors --- dotfiles/alacritty.yml | 21 ++++++--------------- dotfiles/sway/config | 16 ++++++++-------- 2 files changed, 14 insertions(+), 23 deletions(-) diff --git a/dotfiles/alacritty.yml b/dotfiles/alacritty.yml index b0ff6de..6fa9a64 100644 --- a/dotfiles/alacritty.yml +++ b/dotfiles/alacritty.yml @@ -8,27 +8,18 @@ draw_bold_text_with_bright_colors: true colors: primary: - background: "0x2D2A2E" + background: "0x19181A" foreground: "0xFCFCFA" normal: - black: "0x2d2a2e" + black: "0x19181A" red: "0xcc6666" green: "0xa9dc76" yellow: "0xffd866" - blue: "0x78dce8" - magenta: "0xff6181" - cyan: "0x55dbbe" - white: "0xd6d6d6" - bright: - black: "0x757878" - red: "0xcc6666" - green: "0xa9dc76" - yellow: "0xffd866" - blue: "0x78dce8" - magenta: "0xff6181" - cyan: "0x55dbbe" - white: "0xd6d6d6" + cyan: "0x78dce8" + magenta: "0xFC9867" + blue: "0xAB9DF2" + white: "0xFCFCFA" window: dynamic_title: true diff --git a/dotfiles/sway/config b/dotfiles/sway/config index fa5ea3b..7d6492a 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -9,8 +9,8 @@ set $term alacritty # echo -- bemenu -H 23 -b -p run --{ff,nf}=#eeeeeee --{tf,hf}=#78dce8 --{tb,fb,nb,hb,sb}=#2d2a2e set $menu bemenu-run -H 23 -b -p run \ - --ff=#eeeeeee \ - --nf=#eeeeeee \ + --ff=#ff6188 \ + --nf=#fcfcfa \ --tf=#78dce8 \ --hf=#78dce8 \ --tb=#2d2a2e \ @@ -47,19 +47,19 @@ font Cascadia Code 10 # colors set $black #2d2a2e set $base00 #2d2a2e -set $base01 #cc6666 +set $base01 #ff6188 set $base02 #a9dc76 set $base03 #ffd866 set $base04 #78dce8 -set $base05 #55dbbe -set $base06 #ff6181 -set $base07 #eeeeee +set $base05 #ab9df2 +set $base06 #fcfcfa +set $base07 #fcfcfa set $base08 #323232 set $base09 #cc6666 set $base0A #ffd866 set $base0B #78dce8 -set $base0C #55dbbe -set $base0D #ff6181 +set $base0C #ab9df2 +set $base0D #ff6188 set $base0E #a6dc76 set $base0F #ffffff From 882f45a1d6be3d7338bb2b10e8fc17a4105aaba3 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 31 Oct 2020 11:45:19 +0100 Subject: [PATCH 053/227] add mpv --- roles/desktop.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index 87a631f..a0c563f 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -90,6 +90,7 @@ in { libreoffice libsecret lxappearance + mpv mumble neofetch pavucontrol From cd1736f899f03e36aaf13df5ab7196f4b031cedc Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 31 Oct 2020 11:45:30 +0100 Subject: [PATCH 054/227] stm32 debugging --- roles/private.nix | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/roles/private.nix b/roles/private.nix index 0776b19..a3fea9f 100644 --- a/roles/private.nix +++ b/roles/private.nix @@ -4,17 +4,27 @@ let unstable = import {}; in { environment.systemPackages = with pkgs; [ + # embedded arduino avrdude + gcc-arm-embedded + openocd pkgsCross.avr.avrlibc - pkgsCross.avr.libcCross - pkgsCross.avr.buildPackages.gcc8 pkgsCross.avr.buildPackages.binutils - unstable.cura + pkgsCross.avr.buildPackages.gcc8 + pkgsCross.avr.libcCross + + cura openscad kicad ]; + # stm32 debugger + users.extraGroups.plugdev = { }; + users.extraUsers.stefan.extraGroups = [ "plugdev" "dialout" ]; + services.udev.packages = [ pkgs.openocd ]; + + fileSystems."/mnt/nfs" = { device = "10.1.20.29:/srv/nfs"; fsType = "nfs"; From 3304bb35337583c77d5656a7cc4386e9899ef808 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 3 Nov 2020 17:47:18 +0100 Subject: [PATCH 055/227] add argocd --- roles/admin.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/admin.nix b/roles/admin.nix index 439f110..6269237 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -8,6 +8,7 @@ in { kubectl pwgen whois + unstable.argocd unstable.kubernetes-helm unstable.kustomize unstable.vault From b44f659e96e369ef78b8975489769afd6c34bb79 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 3 Nov 2020 17:47:39 +0100 Subject: [PATCH 056/227] update podman config for 20.09 --- roles/admin.nix | 39 ++++----------------------------------- 1 file changed, 4 insertions(+), 35 deletions(-) diff --git a/roles/admin.nix b/roles/admin.nix index 6269237..9797b1e 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -13,43 +13,12 @@ in { unstable.kustomize unstable.vault - # podman - conmon - fuse-overlayfs - podman podman-compose - runc - slirp4netns + fuse-overlayfs ]; - users.users.stefan.subUidRanges = [{ startUid = 100000; count = 65536; }]; - users.users.stefan.subGidRanges = [{ startGid = 100000; count = 65536; }]; - - environment.etc."containers/policy.json" = { - mode="0644"; - text='' - { - "default": [ - { - "type": "insecureAcceptAnything" - } - ], - "transports": - { - "docker-daemon": - { - "": [{"type":"insecureAcceptAnything"}] - } - } - } - ''; - }; - - environment.etc."containers/registries.conf" = { - mode="0644"; - text='' - [registries.search] - registries = ['docker.io', 'quay.io'] - ''; + virtualisation.podman = { + enable = true; + dockerCompat = true; }; } From af10b49f39133efb4941c313638769581fe2cf1c Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 3 Nov 2020 17:48:17 +0100 Subject: [PATCH 057/227] add zfs auto snapshop --- roles/base.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/roles/base.nix b/roles/base.nix index b61b74a..6070db7 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -98,4 +98,10 @@ in { services.resolved.enable = true; services.lorri.enable = true; + + services.zfs.autoSnapshot = { + enable = true; + frequent = 8; + monthly = 6; + }; } From 705464fd6d553532aae2658b14f2f7173685374c Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 9 Nov 2020 11:28:40 +0100 Subject: [PATCH 058/227] add dnsutils for dig --- roles/admin.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/admin.nix b/roles/admin.nix index 9797b1e..70708fd 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -5,6 +5,7 @@ let in { environment.systemPackages = with pkgs; [ cryptsetup + dnsutils kubectl pwgen whois From 0419f1b25c2ba377e5edca95338cfcf8fc4ebfdc Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 9 Nov 2020 11:28:49 +0100 Subject: [PATCH 059/227] setup aliases --- roles/base.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/roles/base.nix b/roles/base.nix index 6070db7..bb5171f 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -63,6 +63,11 @@ in { . <(direnv hook bash) . ${pkgs.bash-completion}/etc/profile.d/bash_completion.sh + alias cat="bat -pp" + alias less="bat -p" + alias ls="ls --color=auto" + alias vim="nvim" + for script in "$HOME"/dotfiles/bashrc/*.sh; do . "$script" done From 115596f2a2d1821cb770b72d2fb2860b35c65e33 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 9 Nov 2020 11:29:09 +0100 Subject: [PATCH 060/227] add govc for vmware cli --- roles/work.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/work.nix b/roles/work.nix index 068c768..bf2ecda 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -24,6 +24,7 @@ in { bbnagstamon cloudstation drone-cli + govc unstable.google-cloud-sdk unstable.slack unstable.velero From d8784d4da52d532fdd8a1fabe8d4eaa4d7dcb470 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 9 Nov 2020 11:29:19 +0100 Subject: [PATCH 061/227] add discord for devcamp --- roles/work.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/work.nix b/roles/work.nix index bf2ecda..412e167 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -28,5 +28,6 @@ in { unstable.google-cloud-sdk unstable.slack unstable.velero + unstable.discord ]; } From 8625bae15e6b5ea025cc074e6c05968b3564d230 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 18 Nov 2020 15:11:25 +0100 Subject: [PATCH 062/227] add ispell --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index bb5171f..0130752 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -16,6 +16,7 @@ in { git gnupg htop + ispell jq mtr ncdu From 1b91e430a2293b123973a1e16ac0706b23566371 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 18 Nov 2020 16:45:59 +0100 Subject: [PATCH 063/227] solve keyboard issues --- hardware/xps15-sphere.nix | 1 - roles/base.nix | 4 +++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index 90ddae4..156cb6a 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -54,7 +54,6 @@ in { hardware.cpu.intel.updateMicrocode = true; networking.hostId = "eff291c4"; networking.hostName = "sphere"; - powerManagement.powertop.enable = true; services.tlp.enable = true; services.hardware.bolt.enable = true; diff --git a/roles/base.nix b/roles/base.nix index 0130752..3e72c4b 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -5,7 +5,10 @@ let in { environment.systemPackages = with pkgs; [ acpi + aspell bash + aspellDicts.de + aspellDicts.en bash-completion bat borgbackup @@ -16,7 +19,6 @@ in { git gnupg htop - ispell jq mtr ncdu From a7b12d2e18a1c11910fa32bffda3e63d9c6f5821 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 30 Nov 2020 12:02:18 +0100 Subject: [PATCH 064/227] add volman --- roles/desktop.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index a0c563f..202939b 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -100,6 +100,7 @@ in { wl-clipboard xdg_utils xfce.thunar + xfce.thunar-volman unstable.keepassxc ( pkgs.writeTextFile { @@ -127,6 +128,8 @@ in { ) ]; + services.gvfs.enable = true; + hardware.bluetooth.enable = true; services.blueman.enable = true; From c4886b737ee438ec305cedcef45cfb26ade33091 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 30 Nov 2020 12:02:42 +0100 Subject: [PATCH 065/227] upgrade to python38 --- roles/dev.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/roles/dev.nix b/roles/dev.nix index 9a9d598..38bd76c 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -6,10 +6,12 @@ in { environment.systemPackages = with pkgs; [ gnumake go - python37 - python37Packages.pyls-black - python37Packages.pyls-isort - python37Packages.pyls-mypy + python38 + python38Packages.pyls-black + python38Packages.pyls-isort + python38Packages.pyls-mypy + python38Packages.python-language-server + python38Packages.requests rustup unstable.golangci-lint unstable.gopls From de2c484d2e5aa64c410add5a22de4765175aecbb Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 30 Nov 2020 12:03:11 +0100 Subject: [PATCH 066/227] add vault-sink --- packages/skaffold.nix | 29 +++++++++++++++++++++++++++++ roles/admin.nix | 2 ++ 2 files changed, 31 insertions(+) create mode 100644 packages/skaffold.nix diff --git a/packages/skaffold.nix b/packages/skaffold.nix new file mode 100644 index 0000000..77a45d5 --- /dev/null +++ b/packages/skaffold.nix @@ -0,0 +1,29 @@ +with import {}; + +stdenv.mkDerivation { + name = "skaffold"; + version = "1.17.0"; + src = fetchurl { + url = "https://github.com/GoogleContainerTools/skaffold/releases/download/v1.17.0/skaffold-linux-amd64"; + sha256 = "734a23dfe90b01feb927c44168c93b72afd05d8b978319b4670dc7e6a5e887fe"; + }; + + nativeBuildInputs = [ + autoPatchelfHook + ]; + + unpackPhase = '' + cp $src skaffold + ''; + + installPhase = '' + install -m 755 -D skaffold $out/bin/skaffold + ''; + + meta = with stdenv.lib; { + homepage = "https://skaffold.dev"; + description = "skaffold"; + platforms = platforms.linux; + maintainers = with maintainers; [ foosinn ]; + }; +} diff --git a/roles/admin.nix b/roles/admin.nix index 70708fd..db9f23b 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -16,6 +16,8 @@ in { podman-compose fuse-overlayfs + + (import ../packages/skaffold.nix) ]; virtualisation.podman = { From d66e2900ee093eec9a08c45d03ce5cc65c6aad67 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 5 Jan 2021 12:41:39 +0100 Subject: [PATCH 067/227] update skaffold --- packages/skaffold.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/skaffold.nix b/packages/skaffold.nix index 77a45d5..eb42f25 100644 --- a/packages/skaffold.nix +++ b/packages/skaffold.nix @@ -1,11 +1,11 @@ with import {}; -stdenv.mkDerivation { +stdenv.mkDerivation rec { name = "skaffold"; - version = "1.17.0"; + version = "1.17.2"; src = fetchurl { - url = "https://github.com/GoogleContainerTools/skaffold/releases/download/v1.17.0/skaffold-linux-amd64"; - sha256 = "734a23dfe90b01feb927c44168c93b72afd05d8b978319b4670dc7e6a5e887fe"; + url = "https://github.com/GoogleContainerTools/skaffold/releases/download/v${version}/skaffold-linux-amd64"; + sha256 = "55dea8be16fa3abd81820a6a03f5d708beb5e152fe71e00f00744a4dd321c55a"; }; nativeBuildInputs = [ @@ -18,6 +18,8 @@ stdenv.mkDerivation { installPhase = '' install -m 755 -D skaffold $out/bin/skaffold + echo $out/bin/skaffold + ls -lah $out/bin/skaffold ''; meta = with stdenv.lib; { From b92ad8584c901d14612524c5e9ab5451bf877272 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 5 Jan 2021 12:42:08 +0100 Subject: [PATCH 068/227] fix cpu performance --- hardware/xps15-sphere.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index 156cb6a..0d2afde 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -10,10 +10,11 @@ in { [ ]; + boot.extraModulePackages = [ ]; boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ ]; + boot.kernelParams = [ "intel_pstate=active" ]; nixpkgs.config.packageOverrides = pkgs: { vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; }; From fc72eed505a591cd03df62988abbc65a95a75d1b Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 5 Jan 2021 12:42:53 +0100 Subject: [PATCH 069/227] readd add lid switch --- dotfiles/sway/config | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 7d6492a..9d791ae 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -37,6 +37,8 @@ bindsym $mod+z exec swaylock -t -i /home/stefan/Downloads/bg.jpg --scaling=fill bindsym $mod+Up exec light -A 5 bindsym $mod+Down exec light -U 5 bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png +bindswitch --reload --locked lid:on output eDP-1 disable +bindswitch --reload --locked lid:off output eDP-1 enable # app rules for_window [app_id="org.keepassxc.KeePassXC"] floating enable From 5b3fee0d47da4939e7dee2cbe1c0291fddb9c6ae Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 5 Jan 2021 12:43:37 +0100 Subject: [PATCH 070/227] add helm2 --- packages/helm2.nix | 29 +++++++++++++++++++++++++++++ roles/admin.nix | 1 + 2 files changed, 30 insertions(+) create mode 100644 packages/helm2.nix diff --git a/packages/helm2.nix b/packages/helm2.nix new file mode 100644 index 0000000..29956c3 --- /dev/null +++ b/packages/helm2.nix @@ -0,0 +1,29 @@ +with import {}; + +stdenv.mkDerivation rec { + name = "helm2"; + version = "2.14.3"; + src = fetchurl { + url = "https://get.helm.sh/helm-v${version}-linux-amd64.tar.gz"; + sha256 = "38614a665859c0f01c9c1d84fa9a5027364f936814d1e47839b05327e400bf55"; + }; + + nativeBuildInputs = [ + autoPatchelfHook + ]; + + unpackPhase = '' + tar xvpzf $src + ''; + + installPhase = '' + install -m 755 -D linux-amd64/helm $out/bin/helm2 + ''; + + meta = with stdenv.lib; { + homepage = "https://helm.sh"; + description = "helms depricated v2 verison"; + platforms = platforms.linux; + maintainers = with maintainers; [ foosinn ]; + }; +} diff --git a/roles/admin.nix b/roles/admin.nix index db9f23b..1e1590a 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -18,6 +18,7 @@ in { fuse-overlayfs (import ../packages/skaffold.nix) + (import ../packages/helm2.nix) ]; virtualisation.podman = { From 5fb2d57754e67a1fe35d320e933a20b86944be9c Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 5 Jan 2021 12:47:51 +0100 Subject: [PATCH 071/227] fix python environment --- roles/dev.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/roles/dev.nix b/roles/dev.nix index 38bd76c..1b7b2ac 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -3,20 +3,24 @@ let unstable = import {}; in { + environment.systemPackages = with pkgs; [ gnumake go - python38 - python38Packages.pyls-black - python38Packages.pyls-isort - python38Packages.pyls-mypy - python38Packages.python-language-server - python38Packages.requests rustup unstable.golangci-lint unstable.gopls unstable.rust-analyzer + (python38.withPackages(python-packages: with python-packages; [ + pyls-black + pyls-isort + pyls-mypy + python-language-server + pyyaml + requests + ])) + emacs ltrace sops From 27949605a63a21866add7ac225097833e2707fba Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 5 Jan 2021 21:51:50 +0100 Subject: [PATCH 072/227] add code action keybinding --- packages/neovim.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/neovim.nix b/packages/neovim.nix index 969f584..54f3cc9 100644 --- a/packages/neovim.nix +++ b/packages/neovim.nix @@ -80,6 +80,7 @@ neovim.override { noremap bp :bp let g:which_key_map.b = { 'name': '+lang' } + noremap md :call LanguageClient_textDocument_codeAction() noremap mc :call LanguageClient#textDocument_references() noremap mf :call LanguageClient#textDocument_formatting() noremap mgg :call LanguageClient#textDocument_definition() From 7eee0503d5dd047ad20691a3b1c1b24d49ed04cb Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 5 Jan 2021 21:52:16 +0100 Subject: [PATCH 073/227] floating firefox windows --- dotfiles/sway/config | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 9d791ae..b52276f 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -42,6 +42,8 @@ bindswitch --reload --locked lid:off output eDP-1 enable # app rules for_window [app_id="org.keepassxc.KeePassXC"] floating enable +for_window [title="Firefox — Sharing Indicator"] floating enable +for_window [title="Picture-in-Picture"] floating enable # font font Cascadia Code 10 From 71463342a4a1c0997cf95ac962d47d92dc532ba6 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 5 Jan 2021 21:52:32 +0100 Subject: [PATCH 074/227] obs and steam --- roles/private.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/roles/private.nix b/roles/private.nix index a3fea9f..dd070ba 100644 --- a/roles/private.nix +++ b/roles/private.nix @@ -17,6 +17,10 @@ in { cura openscad kicad + + steam + unstable.obs-studio + unstable.obs-v4l2sink ]; # stm32 debugger @@ -24,6 +28,9 @@ in { users.extraUsers.stefan.extraGroups = [ "plugdev" "dialout" ]; services.udev.packages = [ pkgs.openocd ]; + # steam dependencies + hardware.opengl.driSupport32Bit = true; + hardware.opengl.driSupport = true; fileSystems."/mnt/nfs" = { device = "10.1.20.29:/srv/nfs"; From 98016467107521f26d5ee7d049abf1fa29798884 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 8 Jan 2021 16:34:46 +0100 Subject: [PATCH 075/227] add ydotool --- roles/desktop.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index 202939b..cd9e550 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -101,6 +101,7 @@ in { xdg_utils xfce.thunar xfce.thunar-volman + ydotool unstable.keepassxc ( pkgs.writeTextFile { From 0d2145b8dab5723101e66384efb252649383dc09 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 8 Jan 2021 16:35:01 +0100 Subject: [PATCH 076/227] add msdns --- roles/desktop.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index cd9e550..444ca08 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -143,12 +143,13 @@ in { group = "users"; }; - services.avahi.enable = true; - services.printing.enable = true; services.printing.drivers = [ pkgs.gutenprint ]; + services.avahi.enable = true; + services.avahi.nssmdns = true; + hardware.opengl = { enable = true; From 972cda3dd263bef9c8db8432ba7cd6a889f8f03b Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 8 Jan 2021 16:35:51 +0100 Subject: [PATCH 077/227] add esphome --- roles/dev.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/dev.nix b/roles/dev.nix index 1b7b2ac..ef5b215 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -11,6 +11,7 @@ in { unstable.golangci-lint unstable.gopls unstable.rust-analyzer + unstable.esphome (python38.withPackages(python-packages: with python-packages; [ pyls-black From 74df467f4f10e978d35b72f974f01a146cb11eac Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 13 Jan 2021 17:02:46 +0100 Subject: [PATCH 078/227] support for forcusrite interface --- hardware/xps15-sphere.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index 0d2afde..6863262 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -15,6 +15,9 @@ in { boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-intel" ]; boot.kernelParams = [ "intel_pstate=active" ]; + boot.extraModprobeConfig = '' + options snd_usb_audio device_setup=1 + ''; nixpkgs.config.packageOverrides = pkgs: { vaapiIntel = pkgs.vaapiIntel.override { enableHybridCodec = true; }; From 9faf7d46781e425ba466a44f33e87dfd9c5ca4a6 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 13 Jan 2021 17:03:48 +0100 Subject: [PATCH 079/227] add shellcheck --- roles/dev.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/dev.nix b/roles/dev.nix index ef5b215..327e6cc 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -8,6 +8,7 @@ in { gnumake go rustup + shellcheck unstable.golangci-lint unstable.gopls unstable.rust-analyzer From 46a579dd50524ab43a3765a08205d56d49c3a9c7 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 26 Jan 2021 14:32:31 +0100 Subject: [PATCH 080/227] update nagstamon --- packages/nagstamon.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index 91ba888..697d192 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -2,13 +2,13 @@ python37Packages.buildPythonApplication rec { pname = "nagstamon"; - version = "3.4.1"; + version = "3.5.0-beta"; src = fetchFromGitHub { - owner = "foosinn"; + owner = "HenriWahl"; repo = "Nagstamon"; - rev = "nixos"; - sha256 = "0m2hlnz7brcvin451y09l73lghhdjs8zwd7wn7k2ahv3829lksfq"; + rev = "52a1d6a91e8324f950d4a43e748344d26dc599c7"; + sha256 = "01z39pn53zmlx57zpxmc9qym618bz49n102vwz3kaj40ky1gqja2"; }; # Test assumes darwin From 7e711adeaf24cabf78b722506fb458fd2087e917 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 26 Jan 2021 14:32:45 +0100 Subject: [PATCH 081/227] add qemu support --- roles/admin.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/admin.nix b/roles/admin.nix index 1e1590a..16db33d 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -16,6 +16,7 @@ in { podman-compose fuse-overlayfs + qemu (import ../packages/skaffold.nix) (import ../packages/helm2.nix) From e56b4f36ea6e163cbd09b5e85f23a7cfa8575f95 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 3 Feb 2021 11:46:33 +0100 Subject: [PATCH 082/227] migrate from podman to docker --- roles/admin.nix | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/roles/admin.nix b/roles/admin.nix index 16db33d..c2bde38 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -14,7 +14,6 @@ in { unstable.kustomize unstable.vault - podman-compose fuse-overlayfs qemu @@ -22,8 +21,6 @@ in { (import ../packages/helm2.nix) ]; - virtualisation.podman = { - enable = true; - dockerCompat = true; - }; + virtualisation.docker.enable = true; + virtualisation.libvirtd.enable = true; } From d453e0fafd7fcc0ce4069d709472d3786461bcab Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 3 Feb 2021 11:47:11 +0100 Subject: [PATCH 083/227] more software is more --- roles/base.nix | 4 +++- roles/dev.nix | 4 ++++ roles/work.nix | 3 +++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/roles/base.nix b/roles/base.nix index 3e72c4b..c0d9ea2 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -6,9 +6,9 @@ in { environment.systemPackages = with pkgs; [ acpi aspell - bash aspellDicts.de aspellDicts.en + bash bash-completion bat borgbackup @@ -22,8 +22,10 @@ in { jq mtr ncdu + nix-index nload openssl + patchelf pv ripgrep sysstat diff --git a/roles/dev.nix b/roles/dev.nix index 327e6cc..b3cf5d0 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -15,6 +15,7 @@ in { unstable.esphome (python38.withPackages(python-packages: with python-packages; [ + dnspython pyls-black pyls-isort pyls-mypy @@ -24,9 +25,12 @@ in { ])) emacs + gitAndTools.delta ltrace + parallel sops tig + unstable.bazel openssl pkg-config nasm cmake zlib gcc binutils-unwrapped ]; diff --git a/roles/work.nix b/roles/work.nix index 412e167..b075c8e 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -29,5 +29,8 @@ in { unstable.slack unstable.velero unstable.discord + + unstable.obs-studio + unstable.obs-wlrobs ]; } From bf5e357930206e0163ca1f00843703d146dca80f Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 17 Feb 2021 10:37:24 +0100 Subject: [PATCH 084/227] fix openshift packages --- packages/oc311.nix | 4 ++-- packages/oc46.nix | 4 ++-- packages/vaultsink.nix | 25 +++++++++++++++++++++++++ 3 files changed, 29 insertions(+), 4 deletions(-) create mode 100644 packages/vaultsink.nix diff --git a/packages/oc311.nix b/packages/oc311.nix index 770bb27..b4c7c5d 100644 --- a/packages/oc311.nix +++ b/packages/oc311.nix @@ -4,8 +4,8 @@ stdenv.mkDerivation { name = "oc311"; version = "3.11"; src = fetchurl { - url = "https://artifacts-openshift-release-3-11.svc.ci.openshift.org/zips/openshift-origin-client-tools-v3.11.0-8aa4c38-492-linux-64bit.tar.gz"; - sha256 = "e8fde584995657e359ddaa5b25e70af2bde4cd494322c712a8cd46bfef00f07f"; + url = "https://github.com/openshift/origin/releases/download/v3.11.0/openshift-origin-client-tools-v3.11.0-0cbc58b-linux-64bit.tar.gz"; + sha256 = "4b0f07428ba854174c58d2e38287e5402964c9a9355f6c359d1242efd0990da3"; }; nativeBuildInputs = [ diff --git a/packages/oc46.nix b/packages/oc46.nix index b24c8ee..263db47 100644 --- a/packages/oc46.nix +++ b/packages/oc46.nix @@ -4,8 +4,8 @@ stdenv.mkDerivation rec { name = "oc46"; version = "4.6"; src = fetchurl { - url = "https://mirror.openshift.com/pub/openshift-v4/clients/oc/${version}/linux/oc.tar.gz"; - sha256 = "60de3dbb6cf085a201c5b9490a6d5066248bfd5d3c42486a8fd43abdbdb731e6"; + url = "https://github.com/openshift/okd/releases/download/4.6.0-0.okd-2021-02-14-205305/openshift-client-linux-4.6.0-0.okd-2021-02-14-205305.tar.gz"; + sha256 = "741c456f1d5227eb40722b0dac328c78dceba5103fd306cf7fe57a9474eb3d35"; }; nativeBuildInputs = [ diff --git a/packages/vaultsink.nix b/packages/vaultsink.nix new file mode 100644 index 0000000..0f36856 --- /dev/null +++ b/packages/vaultsink.nix @@ -0,0 +1,25 @@ +with import {}; + +stdenv.mkDerivation rec { + name = "vaultsink"; + version = "0.1.8"; + src = fetchurl { + url = "https://github.com/cookiefactory/vault-sink/releases/download/v${version}/vault-sink-linux-amd64"; + sha256 = "057799e7f907186993b591e3b2f743b69d7a9fed"; + }; + + nativeBuildInputs = [ + autoPatchelfHook + ]; + + installPhase = '' + install -m 755 -D vault-sink-linux-amd64 $out/bin/sink + ''; + + meta = with stdenv.lib; { + homepage = "https://github.com/cookiefactory/vault-sink"; + description = "Vault Secret helper for yaml files"; + platforms = platforms.linux; + maintainers = with maintainers; [ foosinn ]; + }; +} From 3c3b54c80c09f12e2da047c06759e48792dcecb8 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 17 Feb 2021 10:37:45 +0100 Subject: [PATCH 085/227] add mariadb-client to dev role --- roles/dev.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/roles/dev.nix b/roles/dev.nix index b3cf5d0..28de56d 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -24,6 +24,8 @@ in { requests ])) + mariadb-client + emacs gitAndTools.delta ltrace From a31009b1787ea40f4a17917e9671913c9e420b82 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 30 Mar 2021 17:31:13 +0200 Subject: [PATCH 086/227] add docker compose --- roles/admin.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/admin.nix b/roles/admin.nix index c2bde38..5607bc7 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -14,6 +14,7 @@ in { unstable.kustomize unstable.vault + docker-compose fuse-overlayfs qemu From 71d2575ea8067bca461a9eeae632c84aba3ef6ff Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 30 Mar 2021 17:31:25 +0200 Subject: [PATCH 087/227] use dynamic ssh agent --- roles/base.nix | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/roles/base.nix b/roles/base.nix index c0d9ea2..9bf10bd 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -53,10 +53,20 @@ in { export EDITOR=nvim export STARSHIP_CONFIG=/etc/starship.toml - if [ -z "$SSH_AUTH_SOCK" ]; then - eval $(ssh-agent) + if [ -f ~/.ssh/agent.env ] ; then + . ~/.ssh/agent.env > /dev/null + if ! kill -0 "$SSH_AGENT_PID" > /dev/null 2>&1; then + echo "Stale agent file found. Spawning a new agent. " + eval `ssh-agent | tee ~/.ssh/agent.env` + ssh-add + fi + else + echo "Starting ssh-agent" + eval `ssh-agent | tee ~/.ssh/agent.env` + ssh-add fi + set_win_title() { echo -ne "\033]0;$USER@$HOSTNAME: $PWD\007" } From 6de34eeceab9acc2f869f0d3ab404ba0f27b4b77 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 30 Mar 2021 17:31:45 +0200 Subject: [PATCH 088/227] add alias for vault sink --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index 9bf10bd..75605ce 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -101,6 +101,7 @@ in { less = "bat -p"; ls = "ls --color=auto"; vim = "nvim"; + sink = "VAULT_TOKEN=$(vault token lookup -format=json | jq -r .data.id) ENVIRONMENTS=staging ~/git/bitsbeats/vault-sink/sink"; }; }; From caa16b9b5ed0a015b19ae77436fcf5a994bdbd10 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 7 Apr 2021 11:14:43 +0200 Subject: [PATCH 089/227] more fonts --- roles/desktop.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index 444ca08..b20aeba 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -52,7 +52,10 @@ in { fonts.fontconfig.antialias = true; fonts.fonts = with pkgs; [ cascadia-code + fira-code + fira-code-symbols font-awesome + meslo-lg noto-fonts noto-fonts-emoji ]; From 5bbf69453329580f78634d524ea2e45dfd51acad Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 7 Apr 2021 11:16:08 +0200 Subject: [PATCH 090/227] use alacritty unstable for mode indicator --- roles/desktop.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index b20aeba..ffd975f 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -86,7 +86,6 @@ in { hicolor-icon-theme numix-icon-theme - alacritty imv inkscape libqrencode @@ -105,6 +104,7 @@ in { xfce.thunar xfce.thunar-volman ydotool + unstable.alacritty unstable.keepassxc ( pkgs.writeTextFile { From a5f1d145d7603fc02b485b9cd1c6d7337bb79c4c Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 7 Apr 2021 11:16:23 +0200 Subject: [PATCH 091/227] add cli jira client --- roles/work.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/work.nix b/roles/work.nix index b075c8e..574d85f 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -25,6 +25,7 @@ in { cloudstation drone-cli govc + go-jira unstable.google-cloud-sdk unstable.slack unstable.velero From eca605ab4f1c7bd128985be0be595ae27544a161 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 27 May 2021 17:23:42 +0200 Subject: [PATCH 092/227] update nagstamon --- packages/nagstamon.nix | 8 ++++---- roles/work.nix | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index 697d192..a20cd9c 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -2,13 +2,13 @@ python37Packages.buildPythonApplication rec { pname = "nagstamon"; - version = "3.5.0-beta"; + version = "3.7.0-alpha"; src = fetchFromGitHub { owner = "HenriWahl"; repo = "Nagstamon"; - rev = "52a1d6a91e8324f950d4a43e748344d26dc599c7"; - sha256 = "01z39pn53zmlx57zpxmc9qym618bz49n102vwz3kaj40ky1gqja2"; + rev = "dba37dc034589dfb312c6e8a7cc768bcd1952db9"; + sha256 = "1l095halb55qinaik51p3lxiln1s034dr28k7ra6xzrrv9l1x1xw"; }; # Test assumes darwin @@ -38,7 +38,7 @@ python37Packages.buildPythonApplication rec { description = "A status monitor for the desktop"; homepage = "https://nagstamon.ifw-dresden.de/"; license = licenses.gpl2; - maintainers = with maintainers; [ pSub ]; + maintainers = with maintainers; [ foosinn ]; inherit version; }; } diff --git a/roles/work.nix b/roles/work.nix index 574d85f..ee7685a 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -3,7 +3,7 @@ let unstable = import { config.allowUnfree = true; }; cloudstation = pkgs.libsForQt5.callPackage (import ../packages/cloudstation.nix) {}; - bbnagstamon = pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) {}; + in { security.pki.certificateFiles = [ @@ -21,7 +21,7 @@ in { (import ../packages/oc46.nix) (import ../packages/openshift-install-4.5.nix) astroid - bbnagstamon + (pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) {}) cloudstation drone-cli govc From 7d9fd562b620eabf4695f905b7a65c26de9a704a Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 27 May 2021 17:24:29 +0200 Subject: [PATCH 093/227] alias for docker --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index 75605ce..3ae1218 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -79,6 +79,7 @@ in { . ${pkgs.bash-completion}/etc/profile.d/bash_completion.sh alias cat="bat -pp" + alias docker="sudo -g docker docker" alias less="bat -p" alias ls="ls --color=auto" alias vim="nvim" From 330f6a2dad3db7aa1a560ade003f6d73a71a46f5 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 1 Jun 2021 11:18:32 +0200 Subject: [PATCH 094/227] update to nixos 21.05 --- hardware/xps15-sphere.nix | 2 +- roles/base.nix | 3 +-- roles/desktop.nix | 1 - 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index 6863262..40a4213 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -53,7 +53,7 @@ in { powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; # custom - boot.kernelPackages = unstable.linuxPackages_latest; + #boot.kernelPackages = pkgs.linuxPackages_latest; boot.loader.systemd-boot.enable = true; hardware.cpu.intel.updateMicrocode = true; networking.hostId = "eff291c4"; diff --git a/roles/base.nix b/roles/base.nix index 3ae1218..ec46fe6 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -28,14 +28,13 @@ in { patchelf pv ripgrep + starship sysstat tcpdump tmux unzip wget z-lua - unstable.manix - unstable.starship (import ../packages/neovim.nix) ]; diff --git a/roles/desktop.nix b/roles/desktop.nix index ffd975f..6904ced 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -141,7 +141,6 @@ in { enable = true; dataDir = "/home/stefan"; openDefaultPorts = true; - package = unstable.syncthing; user = "stefan"; group = "users"; }; From c9e7e0e77b00c32d426854b57c3d2f5fe311a9c8 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 1 Jun 2021 11:59:16 +0200 Subject: [PATCH 095/227] fixes for nixos 21.05 --- dotfiles/sway/status.toml | 10 +--------- roles/desktop.nix | 6 ++++-- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 97cb93b..0e3b587 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -45,20 +45,12 @@ thermometer = "  " [[block]] block = "net" device = "wg" -ip = true -ssid = false -speed_up = false -speed_down = false hide_inactive = true hide_missing = true [[block]] block = "net" device = "wlo1" -ip = true -ssid = true -speed_up = false -speed_down = false hide_inactive = true hide_missing = true @@ -79,7 +71,7 @@ alert = 10.0 [[block]] block = "memory" display_type = "memory" -format_mem = "{Mup}%" +format_mem = "{mem_total_used_percents}" clickable = false [[block]] diff --git a/roles/desktop.nix b/roles/desktop.nix index 6904ced..b4aa38f 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -78,12 +78,14 @@ in { mypaint mypaint-brushes - gsettings-desktop-schemas - glib # provides gsettings arc-theme capitaine-cursors elementary-xfce-icon-theme + gsettings-desktop-schemas + gtk-engine-murrine + gtk_engines hicolor-icon-theme + lxappearance numix-icon-theme imv From 45e3a8d1cdccc797334ba0a2a4a837395623e794 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 8 Jun 2021 10:22:54 +0200 Subject: [PATCH 096/227] pipewire switch --- roles/desktop.nix | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index b4aa38f..38047f2 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -24,7 +24,6 @@ in { ]; }; - services.pipewire.enable = true; xdg.portal = { enable = true; gtkUsePortal = true; @@ -39,14 +38,27 @@ in { environment = { etc = { + "i3/config".source = ../dotfiles/i3/config; "sway/config".source = ../dotfiles/sway/config; "sway/status.toml".source = ../dotfiles/sway/status.toml; "xdg/alacritty/alacritty.yml".source = ../dotfiles/alacritty.yml; }; }; - sound.enable = true; - hardware.pulseaudio.enable = true; + hardware.pulseaudio.enable = false; + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + pulse.enable = true; + jack.enable = true; + + config.pipewire = { + "context.properties" = { + "default.clock.rate" = 48000; + }; + }; + }; fonts.enableDefaultFonts = true; fonts.fontconfig.antialias = true; @@ -99,8 +111,7 @@ in { neofetch pavucontrol pcmanfm - pulseaudio - pulsemixer + pulseeffects-pw wl-clipboard xdg_utils xfce.thunar From 6f711ca78362e3204c37c6810a1ef5531187f641 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 9 Jun 2021 12:02:45 +0200 Subject: [PATCH 097/227] use python 3.9 for nagstamon --- packages/nagstamon.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index a20cd9c..451efd1 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchFromGitHub, python37Packages, wrapQtAppsHook }: +{ stdenv, fetchFromGitHub, python39Packages, wrapQtAppsHook }: -python37Packages.buildPythonApplication rec { +python39Packages.buildPythonApplication rec { pname = "nagstamon"; version = "3.7.0-alpha"; @@ -20,7 +20,7 @@ python37Packages.buildPythonApplication rec { wrapQtApp $out/bin/nagstamon.py ''; - propagatedBuildInputs = with python37Packages; [ + propagatedBuildInputs = with python39Packages; [ beautifulsoup4 configparser dateutil From d0e007cd28fd9bc9312cc7fd4b32e684931ffb8f Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 9 Jun 2021 12:03:03 +0200 Subject: [PATCH 098/227] use firefox-wayland --- roles/desktop.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index 38047f2..2bdd01a 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -81,7 +81,7 @@ in { # # check in `about:support` that # * Composing -> Webrenderer - firefox-bin + firefox-wayland libva libva-utils mesa From c7e1cbe68bfa2309860872315b28aecab259b9c2 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 28 Jun 2021 11:09:44 +0200 Subject: [PATCH 099/227] add libvirt --- roles/admin.nix | 1 + roles/base.nix | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/roles/admin.nix b/roles/admin.nix index 5607bc7..4ad0df8 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -17,6 +17,7 @@ in { docker-compose fuse-overlayfs qemu + virt-manager (import ../packages/skaffold.nix) (import ../packages/helm2.nix) diff --git a/roles/base.nix b/roles/base.nix index ec46fe6..179530d 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -106,7 +106,7 @@ in { }; users.users.stefan = { - extraGroups = [ "wheel" "dialout" ]; + extraGroups = [ "wheel" "dialout" "libvirtd"]; home = "/home/stefan"; isNormalUser = true; uid = 1000; From 96c68a9e642df63e03963ac3881e56c0c6861d59 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 28 Jun 2021 11:10:24 +0200 Subject: [PATCH 100/227] add k9s --- roles/admin.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/admin.nix b/roles/admin.nix index 4ad0df8..6955ebb 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -7,6 +7,7 @@ in { cryptsetup dnsutils kubectl + k9s pwgen whois unstable.argocd From b8c0044faa241bb170ec0ac14b57a7e4e6fc3316 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 8 Jul 2021 09:59:41 +0200 Subject: [PATCH 101/227] new dev dependencies --- roles/dev.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/roles/dev.nix b/roles/dev.nix index 28de56d..4bc6583 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -25,7 +25,9 @@ in { ])) mariadb-client + musl + dbeaver emacs gitAndTools.delta ltrace From f75cf9bfa9200705569f703e6a83df098bf2a435 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 3 Aug 2021 11:30:29 +0200 Subject: [PATCH 102/227] update cloudstation --- packages/cloudstation.nix | 146 +++++++++++++++----------------------- roles/work.nix | 7 +- 2 files changed, 59 insertions(+), 94 deletions(-) diff --git a/packages/cloudstation.nix b/packages/cloudstation.nix index e8165a6..263bc09 100644 --- a/packages/cloudstation.nix +++ b/packages/cloudstation.nix @@ -1,58 +1,51 @@ { stdenv -, autoPatchelfHook -, dbus_libs -, dpkg +, buildFHSUserEnv , fetchurl -, fontconfig -, freetype -, glib -, libICE -, libSM -, xorg -, openssl_1_0_2 -, openssl -, libX11 -, makeWrapper -, sqlite -, wrapQtAppsHook -, xkeyboard_config -, zlib -, curl +, lib +, pkgs +, writeScript }: -stdenv.mkDerivation rec { - name = "cloudstation"; +let version = "4.3.3"; release = "4469"; + cloudstation = stdenv.mkDerivation rec { + name = "cloudstation-unpack"; + buildInputs = [ + pkgs.dpkg + pkgs.qt5.qtbase + ]; + #nativeBuildInputs = [ pkgs.qt5.wrapQtAppsHook ]; + src = fetchurl { + url = "https://global.download.synology.com/download/Tools/CloudStationDrive/${version}-${release}/Ubuntu/Installer/x86_64/synology-cloud-station-drive-${release}.x86_64.deb"; + sha256 = "0v84yb70knmmjzp7lyn6jgy5bnfsfd47wmqh29phybqg4zk3d47j"; + }; + unpackPhase = '' + dpkg-deb -x $src . + ''; + installPhase = '' + mkdir -p $out/bin + cp -R opt/Synology/CloudStation/* $out/ + ls -lah $out + chmod +x $out/lib/* + cp $out/lib/plugins/platforms/libqxcb.so $out/lib/plugins/ - src = fetchurl { - url = "https://global.download.synology.com/download/Tools/CloudStationDrive/${version}-${release}/Ubuntu/Installer/x86_64/synology-cloud-station-drive-${release}.x86_64.deb"; - sha256 = "0v84yb70knmmjzp7lyn6jgy5bnfsfd47wmqh29phybqg4zk3d47j"; + # fix xcb plugin + echo -e "[Paths]\nPlugins = ${pkgs.qt5.qtbase.bin}/${pkgs.qt5.qtbase.qtPluginPrefix}" > $out/bin/qt.conf + ''; + dontWrapQtApps = true; + #preFixup = '' + # wrapQtApp "$out/bin/launcher" + #''; }; - nativeBuildInputs = [ - dpkg - autoPatchelfHook - makeWrapper - wrapQtAppsHook - ]; - buildInputs = [ - dbus_libs - fontconfig - freetype - glib - libICE - libSM - libX11 - sqlite - stdenv.cc.cc.lib - zlib - openssl_1_0_2 - xorg.libxcb - curl - ]; - ldpath = stdenv.lib.makeLibraryPath [ +in buildFHSUserEnv { + name = "cloudstation"; + + targetPkgs = pkgs: with pkgs; with xorg; [ + cloudstation + curl dbus_libs fontconfig freetype @@ -60,53 +53,26 @@ stdenv.mkDerivation rec { libICE libSM libX11 - sqlite - stdenv.cc.cc.lib - zlib - openssl_1_0_2 + libxcb openssl - xorg.libxcb - curl + qt5.qtbase + qt5.qttools + qt5.qtwayland + qt5.qtx11extras + sqlite + stdenv.cc.cc.lib + xkeyboard_config + zlib ]; - unpackPhase = '' - dpkg-deb -x $src . + runScript = writeScript "cloudstation" '' + #!/usr/bin/env bash + #export QT_PLUGIN_PATH="$QT_PLUGIN_PATH:${cloudstation}/lib/plugins/platforms" + export QT_PLUGIN_PATH="${pkgs.qt5.qtbase.bin}/${pkgs.qt5.qtbase.qtPluginPrefix}" + ${cloudstation}/bin/launcher + + export LD_LIBRARY_PATH="/home/stefan/.CloudStation/CloudStation.app/lib:$LD_LIBRARY_PATH" + ~/.CloudStation/CloudStation.app/bin/cloud-drive-ui + type bash ''; - - installPhase = '' - mkdir -p $out/bin - cp -R opt $out - chmod +x $out/opt/Synology/CloudStation/lib/* - - #ln -s $out/opt/Synology/CloudStation/bin/launcher $out/bin/cloudstation - makeWrapper \ - $out/opt/Synology/CloudStation/bin/launcher \ - $out/bin/cloudstation \ - --set QT_PLUGIN_PATH $out/opt/Synology/CloudStationBackup/lib/plugins/platforms \ - --set QT_XKB_CONFIG_ROOT ${xkeyboard_config}/share/X11/xkb \ - --set LD_LIBRARY_PATH $out/opt/Synology/CloudStation/lib:${ldpath} - - cat >> $out/bin/usercloudstation < { config.allowUnfree = true; }; - cloudstation = pkgs.libsForQt5.callPackage (import ../packages/cloudstation.nix) {}; - + cloudstation = pkgs.callPackage (import ../packages/cloudstation.nix) {}; in { security.pki.certificateFiles = [ @@ -20,9 +19,9 @@ in { (import ../packages/oc311.nix) (import ../packages/oc46.nix) (import ../packages/openshift-install-4.5.nix) + cloudstation astroid (pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) {}) - cloudstation drone-cli govc go-jira @@ -32,6 +31,6 @@ in { unstable.discord unstable.obs-studio - unstable.obs-wlrobs + unstable.obs-studio-plugins.wlrobs ]; } From 61454f6d0a5a4367bd318c85271d3af5fc0f2b4f Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 3 Aug 2021 17:02:43 +0200 Subject: [PATCH 103/227] cleanup cloudstation package --- packages/cloudstation.nix | 6 ------ 1 file changed, 6 deletions(-) diff --git a/packages/cloudstation.nix b/packages/cloudstation.nix index 263bc09..d47ee2b 100644 --- a/packages/cloudstation.nix +++ b/packages/cloudstation.nix @@ -15,7 +15,6 @@ let pkgs.dpkg pkgs.qt5.qtbase ]; - #nativeBuildInputs = [ pkgs.qt5.wrapQtAppsHook ]; src = fetchurl { url = "https://global.download.synology.com/download/Tools/CloudStationDrive/${version}-${release}/Ubuntu/Installer/x86_64/synology-cloud-station-drive-${release}.x86_64.deb"; sha256 = "0v84yb70knmmjzp7lyn6jgy5bnfsfd47wmqh29phybqg4zk3d47j"; @@ -34,9 +33,6 @@ let echo -e "[Paths]\nPlugins = ${pkgs.qt5.qtbase.bin}/${pkgs.qt5.qtbase.qtPluginPrefix}" > $out/bin/qt.conf ''; dontWrapQtApps = true; - #preFixup = '' - # wrapQtApp "$out/bin/launcher" - #''; }; @@ -67,12 +63,10 @@ in buildFHSUserEnv { runScript = writeScript "cloudstation" '' #!/usr/bin/env bash - #export QT_PLUGIN_PATH="$QT_PLUGIN_PATH:${cloudstation}/lib/plugins/platforms" export QT_PLUGIN_PATH="${pkgs.qt5.qtbase.bin}/${pkgs.qt5.qtbase.qtPluginPrefix}" ${cloudstation}/bin/launcher export LD_LIBRARY_PATH="/home/stefan/.CloudStation/CloudStation.app/lib:$LD_LIBRARY_PATH" ~/.CloudStation/CloudStation.app/bin/cloud-drive-ui - type bash ''; } From 7c424815bce11bf81681e33b40e5619153a45866 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 3 Aug 2021 17:20:40 +0200 Subject: [PATCH 104/227] try fixing polkit --- roles/desktop.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index 2bdd01a..592cbf5 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -47,6 +47,7 @@ in { hardware.pulseaudio.enable = false; security.rtkit.enable = true; + security.polkit.enable = true; services.pipewire = { enable = true; alsa.enable = true; @@ -74,6 +75,9 @@ in { nixpkgs.config.allowUnfree = true; environment.systemPackages = with pkgs; [ + polkit + polkit_gnome + # firefox also needs: # # gfx.webrenderer.enabled = true From 6e6b8224b03f3d120c56cc7a92472c37f34e37c1 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 3 Aug 2021 17:21:37 +0200 Subject: [PATCH 105/227] set audio to 44.1kHz --- roles/desktop.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index 592cbf5..175b01f 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -56,7 +56,7 @@ in { config.pipewire = { "context.properties" = { - "default.clock.rate" = 48000; + "default.clock.rate" = 44100; }; }; }; From 3e3a3a291af8d5a2b6548ccfa06614337fa16342 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 3 Aug 2021 17:22:30 +0200 Subject: [PATCH 106/227] cleanup packages and work updates --- roles/desktop.nix | 9 +++++++-- roles/dev.nix | 10 +++------- roles/network.nix | 1 - roles/work.nix | 17 ++++++++++++++--- 4 files changed, 24 insertions(+), 13 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index 175b01f..bd0ae20 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -116,13 +116,18 @@ in { pavucontrol pcmanfm pulseeffects-pw + unstable.alacritty + unstable.keepassxc + unstable.noisetorch + + solaar + gdk-pixbuf + wl-clipboard xdg_utils xfce.thunar xfce.thunar-volman ydotool - unstable.alacritty - unstable.keepassxc ( pkgs.writeTextFile { name = "startsway"; diff --git a/roles/dev.nix b/roles/dev.nix index 4bc6583..d046695 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -12,14 +12,10 @@ in { unstable.golangci-lint unstable.gopls unstable.rust-analyzer - unstable.esphome + #unstable.esphome - (python38.withPackages(python-packages: with python-packages; [ - dnspython - pyls-black - pyls-isort - pyls-mypy - python-language-server + nodePackages.pyright + (python39.withPackages(python-packages: with python-packages; [ pyyaml requests ])) diff --git a/roles/network.nix b/roles/network.nix index 20dd4a5..c56b4bf 100644 --- a/roles/network.nix +++ b/roles/network.nix @@ -2,7 +2,6 @@ let unstable = import { config.allowUnfree = true; }; - cloudstation = pkgs.libsForQt5.callPackage (import ../packages/cloudstation.nix) {}; in { networking.networkmanager.enable = true; diff --git a/roles/work.nix b/roles/work.nix index c82fc31..6535389 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -3,6 +3,7 @@ let unstable = import { config.allowUnfree = true; }; cloudstation = pkgs.callPackage (import ../packages/cloudstation.nix) {}; + nagstamon = pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) {}; in { security.pki.certificateFiles = [ @@ -13,22 +14,32 @@ in { networking.extraHosts = '' 35.234.109.94 fsi.thomann.de 10.100.7.11 mon.netzmarkt.de + + 172.23.0.2 api.kube.local + 172.23.0.2 hubble.kube.local + 172.23.0.2 bonedo.kube.local + 172.23.0.2 linkerd.kube.local + 172.23.0.2 argo.kube.local + ''; environment.systemPackages = with pkgs; [ (import ../packages/oc311.nix) (import ../packages/oc46.nix) (import ../packages/openshift-install-4.5.nix) + # (import ../packages/vaultsink.nix) needs opensource verson cloudstation + nagstamon + astroid - (pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) {}) drone-cli - govc go-jira + govc + ttyd + unstable.discord unstable.google-cloud-sdk unstable.slack unstable.velero - unstable.discord unstable.obs-studio unstable.obs-studio-plugins.wlrobs From a8264c3573e4f3c3e40a15ceb8d97c268e57c89b Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 5 Aug 2021 15:35:43 +0200 Subject: [PATCH 107/227] add dog dns --- roles/admin.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/roles/admin.nix b/roles/admin.nix index 6955ebb..b3d397a 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -6,8 +6,9 @@ in { environment.systemPackages = with pkgs; [ cryptsetup dnsutils - kubectl + dogdns k9s + kubectl pwgen whois unstable.argocd From f3f41f22466d116cfb8db44e8ffbbd853fd9ea55 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 6 Aug 2021 08:48:32 +0200 Subject: [PATCH 108/227] move gvfs to base --- roles/base.nix | 4 ++++ roles/desktop.nix | 2 -- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/roles/base.nix b/roles/base.nix index 179530d..f3c6766 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -117,6 +117,10 @@ in { Defaults env_keep+=SSH_AUTH_SOCK ''; + services.gvfs = { + enable = true; + package = lib.mkForce pkgs.gnome3.gvfs; + }; services.resolved.enable = true; services.lorri.enable = true; diff --git a/roles/desktop.nix b/roles/desktop.nix index bd0ae20..4858459 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -154,8 +154,6 @@ in { ) ]; - services.gvfs.enable = true; - hardware.bluetooth.enable = true; services.blueman.enable = true; From 263638210a04efbd4d9467c8f8a0182d5f6d74a5 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 10 Jul 2021 20:31:14 +0200 Subject: [PATCH 109/227] use stable kernel for zfs compatibility --- hardware/x220-discovery.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/hardware/x220-discovery.nix b/hardware/x220-discovery.nix index 7082acf..7230b17 100644 --- a/hardware/x220-discovery.nix +++ b/hardware/x220-discovery.nix @@ -36,7 +36,6 @@ in { powerManagement.cpuFreqGovernor = lib.mkDefault "performance"; # custom - boot.kernelPackages = unstable.linuxPackages_latest; boot.loader.systemd-boot.enable = true; networking.hostId = "ef3a5d57"; networking.hostName = "discovery"; From b428dcad0937e2a62e8ff94d5c8e33498f374733 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 10 Jul 2021 20:31:38 +0200 Subject: [PATCH 110/227] add ntfs support --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index f3c6766..bc64e3c 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -24,6 +24,7 @@ in { ncdu nix-index nload + ntfs3g openssl patchelf pv From da350e3e7cdbfa9dbc2010e7ed957014ea10620a Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 10 Jul 2021 20:32:20 +0200 Subject: [PATCH 111/227] remove bazel --- roles/dev.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/roles/dev.nix b/roles/dev.nix index d046695..53d0670 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -30,7 +30,6 @@ in { parallel sops tig - unstable.bazel openssl pkg-config nasm cmake zlib gcc binutils-unwrapped ]; From 7482d92923d6b304ce100a6296550aef756d7c7c Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 10 Jul 2021 20:32:34 +0200 Subject: [PATCH 112/227] Revert "remove bazel" This reverts commit 3733a42641a6e9ac3e031b5184247eecc1d10f34. --- roles/dev.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/dev.nix b/roles/dev.nix index 53d0670..d046695 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -30,6 +30,7 @@ in { parallel sops tig + unstable.bazel openssl pkg-config nasm cmake zlib gcc binutils-unwrapped ]; From 9d44ab40b1e428248476b1ddf191f7cbab7a12fe Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 10 Jul 2021 20:33:14 +0200 Subject: [PATCH 113/227] remove i3config --- roles/desktop.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index 4858459..d8ac11b 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -38,7 +38,6 @@ in { environment = { etc = { - "i3/config".source = ../dotfiles/i3/config; "sway/config".source = ../dotfiles/sway/config; "sway/status.toml".source = ../dotfiles/sway/status.toml; "xdg/alacritty/alacritty.yml".source = ../dotfiles/alacritty.yml; From 43f1e60f415e6d23272fc055d500f302357fc9c7 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 10 Jul 2021 20:33:28 +0200 Subject: [PATCH 114/227] add some 3d packages --- roles/private.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/roles/private.nix b/roles/private.nix index dd070ba..70bac0d 100644 --- a/roles/private.nix +++ b/roles/private.nix @@ -15,8 +15,12 @@ in { pkgsCross.avr.libcCross cura + candle openscad kicad + blender + python3Packages.numpy + python3Packages.shapely steam unstable.obs-studio From e88bd2f565914d87ad638d0be5d9900a60979714 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 12 Aug 2021 20:35:32 +0200 Subject: [PATCH 115/227] fix obs for current nixos release --- roles/private.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/roles/private.nix b/roles/private.nix index 70bac0d..8b4e355 100644 --- a/roles/private.nix +++ b/roles/private.nix @@ -24,7 +24,6 @@ in { steam unstable.obs-studio - unstable.obs-v4l2sink ]; # stm32 debugger From d8189922f64a22ecec8f1430b26e6b3d668d4076 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 17 Aug 2021 14:57:16 +0200 Subject: [PATCH 116/227] add cli syncing of calendars --- roles/mail.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/roles/mail.nix b/roles/mail.nix index 403cfd3..0f6f788 100644 --- a/roles/mail.nix +++ b/roles/mail.nix @@ -6,7 +6,9 @@ in { environment.systemPackages = with pkgs; [ astroid isync + khal msmtp notmuch + vdirsyncer ]; } From 4315356f3720b79082c244d5e96774493b9c49a8 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 17 Aug 2021 14:57:32 +0200 Subject: [PATCH 117/227] readd black for python --- roles/dev.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/dev.nix b/roles/dev.nix index d046695..c1cc8ee 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -16,6 +16,7 @@ in { nodePackages.pyright (python39.withPackages(python-packages: with python-packages; [ + black pyyaml requests ])) From c733471a492fb64396e31dfc02efa1c4ce147b58 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 17 Aug 2021 14:57:49 +0200 Subject: [PATCH 118/227] fix borken starship config --- dotfiles/starship.toml | 3 --- 1 file changed, 3 deletions(-) diff --git a/dotfiles/starship.toml b/dotfiles/starship.toml index 383e9c7..3f9a86e 100644 --- a/dotfiles/starship.toml +++ b/dotfiles/starship.toml @@ -28,6 +28,3 @@ format = "[$hostname]($style) " [git_branch] format = "[$symbol$branch]($style)" - -[character] -use_symbol_for_status = false From 8f919c7ad9cf7c7cb5de3b73c18d562cde6f6eff Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 17 Aug 2021 14:58:09 +0200 Subject: [PATCH 119/227] thunderbird is nice to have --- roles/mail.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/mail.nix b/roles/mail.nix index 0f6f788..8e834c5 100644 --- a/roles/mail.nix +++ b/roles/mail.nix @@ -9,6 +9,7 @@ in { khal msmtp notmuch + thunderbird vdirsyncer ]; } From 5f71c6b1b70f5f05b8eb8f698134689ada4b809a Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 16 Sep 2021 20:44:07 +0200 Subject: [PATCH 120/227] install kubeseal --- roles/admin.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/admin.nix b/roles/admin.nix index b3d397a..2cef164 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -9,6 +9,7 @@ in { dogdns k9s kubectl + kubeseal pwgen whois unstable.argocd From 6c8b9272778e8487e3a20f95bd2860761c0b95a3 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 16 Sep 2021 20:44:33 +0200 Subject: [PATCH 121/227] add black for autoformating python documents --- roles/dev.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/dev.nix b/roles/dev.nix index c1cc8ee..a36198a 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -19,6 +19,7 @@ in { black pyyaml requests + black ])) mariadb-client From 8b27c46829b84ab5360d9e2772b6862331d56d07 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 4 Oct 2021 10:27:44 +0200 Subject: [PATCH 122/227] use python 3.8 for nagstamon --- packages/nagstamon.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index 451efd1..c1c09e7 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchFromGitHub, python39Packages, wrapQtAppsHook }: +{ stdenv, fetchFromGitHub, python38Packages, wrapQtAppsHook }: -python39Packages.buildPythonApplication rec { +python38Packages.buildPythonApplication rec { pname = "nagstamon"; version = "3.7.0-alpha"; @@ -20,7 +20,7 @@ python39Packages.buildPythonApplication rec { wrapQtApp $out/bin/nagstamon.py ''; - propagatedBuildInputs = with python39Packages; [ + propagatedBuildInputs = with python38Packages; [ beautifulsoup4 configparser dateutil From 9f948b954b9baca7b9ebb221e69c598975362db3 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 4 Oct 2021 10:28:34 +0200 Subject: [PATCH 123/227] auto-update nixos --- configuration.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/configuration.nix b/configuration.nix index c082346..e843abe 100644 --- a/configuration.nix +++ b/configuration.nix @@ -32,6 +32,7 @@ "openssl-1.0.2u" ]; + system.autoUpgrade.enable = true; system.stateVersion = "20.03"; # We can stay here } From 3f022996aed78b7eb0425553c5ab1eff8f89ad04 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 4 Oct 2021 10:28:46 +0200 Subject: [PATCH 124/227] k = kubectl alias --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index bc64e3c..0fd93cd 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -83,6 +83,7 @@ in { alias less="bat -p" alias ls="ls --color=auto" alias vim="nvim" + alias k="kubectl" for script in "$HOME"/dotfiles/bashrc/*.sh; do . "$script" From edae67a33a809bfe9340b18c9f509aaa8f08a8ae Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 4 Oct 2021 10:29:07 +0200 Subject: [PATCH 125/227] vsink alias for values sink in helm --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index 0fd93cd..39730da 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -104,6 +104,7 @@ in { ls = "ls --color=auto"; vim = "nvim"; sink = "VAULT_TOKEN=$(vault token lookup -format=json | jq -r .data.id) ENVIRONMENTS=staging ~/git/bitsbeats/vault-sink/sink"; + usink = "VAULT_TOKEN=$(vault token lookup -format=json | jq -r .data.id) ENVIRONMENTS=staging ~/git/bitsbeats/vault-sink/sink < ./helm/*/values.yaml > values.yaml"; }; }; From 9deaa5ff5357d349d2278d1434df75ed338470f4 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 4 Oct 2021 10:30:15 +0200 Subject: [PATCH 126/227] set default sample-rate to 48khz --- roles/desktop.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index d8ac11b..ff09357 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -55,7 +55,7 @@ in { config.pipewire = { "context.properties" = { - "default.clock.rate" = 44100; + "default.clock.rate" = 48000; }; }; }; From dc3064b545c44cc4e68a077802ca75fb6d29b65a Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 4 Oct 2021 10:30:38 +0200 Subject: [PATCH 127/227] use unstable alias for astroid --- roles/mail.nix | 3 ++- roles/work.nix | 1 - 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/roles/mail.nix b/roles/mail.nix index 8e834c5..0f81277 100644 --- a/roles/mail.nix +++ b/roles/mail.nix @@ -1,10 +1,11 @@ { config, lib, pkgs, ... }: let + unstable = import { config.allowUnfree = true; }; notcoal = pkgs.callPackage (import ../packages/notcoal) {}; in { environment.systemPackages = with pkgs; [ - astroid + unstable.astroid isync khal msmtp diff --git a/roles/work.nix b/roles/work.nix index 6535389..5d7d56f 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -31,7 +31,6 @@ in { cloudstation nagstamon - astroid drone-cli go-jira govc From bab83119cc1d63375dff5ec776e5bcb9245d8499 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 4 Oct 2021 10:33:14 +0200 Subject: [PATCH 128/227] add wdisplays for graphical display management --- roles/desktop.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index ff09357..b0c1c9c 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -122,6 +122,7 @@ in { solaar gdk-pixbuf + wdisplays wl-clipboard xdg_utils xfce.thunar From de4fafc2e2371c9e121e7f338324a4c1b8bc1ca0 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 6 Oct 2021 00:30:20 +0200 Subject: [PATCH 129/227] add initial vision14 hw and kernel module --- hardware/vison14.nix | 53 ++++++++++++++++++++++++++++++++++++ packages/tuxedo-keyboard.nix | 39 ++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 hardware/vison14.nix create mode 100644 packages/tuxedo-keyboard.nix diff --git a/hardware/vison14.nix b/hardware/vison14.nix new file mode 100644 index 0000000..d20e1f1 --- /dev/null +++ b/hardware/vison14.nix @@ -0,0 +1,53 @@ +# 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, ... }: + +let + tuxedo-keyboard = pkgs.callPackage (import ../packages/tuxedo-keyboard.nix) {}; +in + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ + tuxedo-keyboard + ]; + + fileSystems."/" = + { device = "tank/root/nixos"; + fsType = "zfs"; + }; + + fileSystems."/home" = + { device = "tank/root/home"; + fsType = "zfs"; + }; + + fileSystems."/tmp" = + { device = "tank/root/tmp"; + fsType = "zfs"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/7E36-C774"; + fsType = "vfat"; + }; + + swapDevices = [ ]; + + nix.maxJobs = lib.mkDefault 8; + powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; + + # custom + boot.loader.systemd-boot.enable = true; + hardware.cpu.intel.updateMicrocode = true; + networking.hostId = "eff291c7"; + networking.hostName = "ds9"; + services.tlp.enable = true; +} diff --git a/packages/tuxedo-keyboard.nix b/packages/tuxedo-keyboard.nix new file mode 100644 index 0000000..5705b86 --- /dev/null +++ b/packages/tuxedo-keyboard.nix @@ -0,0 +1,39 @@ +{ stdenv, lib, linuxPackages, fetchurl }: + +let + kernel = linuxPackages.kernel; + kernelDir = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"; +in + +stdenv.mkDerivation rec { + name = "tuxedo-keyboard"; + version = "v3.0.8"; + + src = builtins.fetchGit { + url = "git://github.com/tuxedocomputers/tuxedo-keyboard"; + ref = "refs/tags/${version}"; + }; + + nativeBuildInputs = kernel.moduleBuildDependencies; + + buildPhase = '' + make KDIR='${kernelDir}' all + ''; + + installPhase = '' + install -v -D -m 644 \ + -t "$out/lib/modules/${kernel.modDirVersion}/extra/" \ + ./src/tuxedo_keyboard.ko \ + ./src/clevo_wmi.ko \ + ./src/tuxedo_io/tuxedo_io.ko \ + ./src/clevo_acpi.ko + + find -name '*.ko' + echo ${kernel.modDirVersion} + ''; + + meta = { + homepage = https://github.com/tuxedocomputers/tuxedo-keyboard/blob/master/Makefile; + }; + +} From 984ec393aa9175869f21260d666f10bc3bbc0359 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 7 Oct 2021 14:55:27 +0200 Subject: [PATCH 130/227] use functions instead of aliases for vsink --- roles/base.nix | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/roles/base.nix b/roles/base.nix index 39730da..0116cf5 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -85,6 +85,19 @@ in { alias vim="nvim" alias k="kubectl" + sink() { + VAULT_TOKEN=$(vault token lookup -format=json | jq -r .data.id) \ + ENVIRONMENTS=staging \ + ~/git/bitsbeats/vault-sink/sink + } + vsink() { + if ! grep -q /values.yaml .gitignore; then + echo refusing to sink with missing gitignore + return 1 + fi + sink < ./helm/*/values.yaml > ./values.yaml + } + for script in "$HOME"/dotfiles/bashrc/*.sh; do . "$script" done @@ -103,8 +116,6 @@ in { less = "bat -p"; ls = "ls --color=auto"; vim = "nvim"; - sink = "VAULT_TOKEN=$(vault token lookup -format=json | jq -r .data.id) ENVIRONMENTS=staging ~/git/bitsbeats/vault-sink/sink"; - usink = "VAULT_TOKEN=$(vault token lookup -format=json | jq -r .data.id) ENVIRONMENTS=staging ~/git/bitsbeats/vault-sink/sink < ./helm/*/values.yaml > values.yaml"; }; }; From 0ee4a2f862f62c0ee780c2c6094bad6151c3d633 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 8 Oct 2021 00:31:48 +0200 Subject: [PATCH 131/227] cleanup wallpaper handling --- dotfiles/sway/config | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index b52276f..7502785 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -5,6 +5,8 @@ set $down j set $up k set $right l set $term alacritty +set $wallpaper /home/stefan/Downloads/bg.jpg +set $lock swaylock -t -i $wallpaper --scaling=fill # echo -- bemenu -H 23 -b -p run --{ff,nf}=#eeeeeee --{tf,hf}=#78dce8 --{tb,fb,nb,hb,sb}=#2d2a2e @@ -21,9 +23,7 @@ set $menu bemenu-run -H 23 -b -p run \ input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de -output * bg /home/stefan/Downloads/bg.jpg fill -#output * bg /home/stefan/Sync/wall/nasa-yZygONrUBe8-unsplash.jpg fill -output DP-1 res 5120x1440 +output * bg $wallpaper fill # user keybinds bindsym $mod+Return exec $term @@ -33,7 +33,7 @@ floating_modifier $mod normal bindsym $mod+Shift+c reload bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit' bindsym $mod+Shift+p exec keepassxc -bindsym $mod+z exec swaylock -t -i /home/stefan/Downloads/bg.jpg --scaling=fill +bindsym $mod+z exec $lock bindsym $mod+Up exec light -A 5 bindsym $mod+Down exec light -U 5 bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png @@ -150,6 +150,7 @@ include /etc/sway/config.d/* exec mako --border-color=#cc6666 \ --background-color=#2d2a2eee exec emacs --daemon +exec swayidle before-sleep "$lock" set $gnome-schema org.gnome.desktop.interface exec_always { From 9cd555cfc9ffb1a8a060fe961b6f5899230540b6 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 8 Oct 2021 00:32:14 +0200 Subject: [PATCH 132/227] fix polkit --- dotfiles/sway/config | 1 + roles/desktop.nix | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 7502785..4413b68 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -151,6 +151,7 @@ exec mako --border-color=#cc6666 \ --background-color=#2d2a2eee exec emacs --daemon exec swayidle before-sleep "$lock" +exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 set $gnome-schema org.gnome.desktop.interface exec_always { diff --git a/roles/desktop.nix b/roles/desktop.nix index b0c1c9c..e86d8aa 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -73,8 +73,8 @@ in { ]; nixpkgs.config.allowUnfree = true; + environment.pathsToLink = ["/libexec"]; environment.systemPackages = with pkgs; [ - polkit polkit_gnome # firefox also needs: From c305b70f834047155043f579cd252e35955d375b Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 8 Oct 2021 00:32:34 +0200 Subject: [PATCH 133/227] wip multitouch gestures --- roles/desktop.nix | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index e86d8aa..42bd933 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -59,6 +59,15 @@ in { }; }; }; + services.udev.packages = [ + (pkgs.writeTextFile { + name = "uinput.rules"; + text = '' + KERNEL=="uinput", GROUP="users", MODE="0660", OPTIONS+="static_node=uinput" + ''; + destination = "/etc/udev/rules.d/80-uinput.rules"; + }) + ]; fonts.enableDefaultFonts = true; fonts.fontconfig.antialias = true; @@ -122,6 +131,7 @@ in { solaar gdk-pixbuf + gebaar-libinput wdisplays wl-clipboard xdg_utils From 1866ce4ea9ac40b22ce68b5200ae4c38cb52d9cf Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 8 Oct 2021 00:33:24 +0200 Subject: [PATCH 134/227] tuxedo control center working (only 1.0.14) --- hardware/vison14.nix | 8 +- packages/tuxedo-cc.nix | 122 + packages/tuxedo-control-center/default.nix | 159 + .../node-composition.nix | 18 + packages/tuxedo-control-center/node-env.nix | 573 + .../tuxedo-control-center/node-packages.nix | 12215 ++++++++++++++++ 6 files changed, 13092 insertions(+), 3 deletions(-) create mode 100644 packages/tuxedo-cc.nix create mode 100644 packages/tuxedo-control-center/default.nix create mode 100644 packages/tuxedo-control-center/node-composition.nix create mode 100644 packages/tuxedo-control-center/node-env.nix create mode 100644 packages/tuxedo-control-center/node-packages.nix diff --git a/hardware/vison14.nix b/hardware/vison14.nix index d20e1f1..85ed6d9 100644 --- a/hardware/vison14.nix +++ b/hardware/vison14.nix @@ -5,9 +5,8 @@ let tuxedo-keyboard = pkgs.callPackage (import ../packages/tuxedo-keyboard.nix) {}; -in - -{ + tuxedo-cc = pkgs.callPackage (import ../packages/tuxedo-control-center/default.nix) {}; +in { imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; @@ -18,6 +17,9 @@ in boot.extraModulePackages = [ tuxedo-keyboard ]; + environment.systemPackages = with pkgs; [ + tuxedo-cc + ]; fileSystems."/" = { device = "tank/root/nixos"; diff --git a/packages/tuxedo-cc.nix b/packages/tuxedo-cc.nix new file mode 100644 index 0000000..a0c88ad --- /dev/null +++ b/packages/tuxedo-cc.nix @@ -0,0 +1,122 @@ +{ lib +, stdenv +, makeWrapper +, fetchurl +, rpmextract +, autoPatchelfHook +, alsa-lib +, cups +, gdk-pixbuf +, glib +, gtk3 +, libnotify +, libuuid +, libX11 +, libXScrnSaver +, libXcomposite +, libXcursor +, libXdamage +, libXext +, libXfixes +, libXi +, libXrandr +, libXrender +, libXtst +, libxcb +, libxshmfence +, mesa +, nspr +, nss +, pango +, systemd +, libappindicator-gtk3 +, libdbusmenu + +}: + +stdenv.mkDerivation rec { + pname = "tuxedo-control-center"; + version = "1.1.0"; + + src = fetchurl { + url = "https://rpm.tuxedocomputers.com/opensuse/15.2/x86_64/tuxedo-control-center_${version}.rpm"; + sha256 = "0rqhfi1slnh0kkn1vnxqynxm6yb4w1mhk4vi92vj0lrxlwdxf80c"; + }; + + + nativeBuildInputs = [ + rpmextract + makeWrapper + alsa-lib + autoPatchelfHook + cups + libXdamage + libX11 + libXScrnSaver + libXtst + libxshmfence + mesa + nss + libXrender + gdk-pixbuf + gtk3 + systemd + ]; + + libPath = lib.makeLibraryPath [ + alsa-lib + gdk-pixbuf + glib + gtk3 + libnotify + libX11 + libXcomposite + libuuid + libXcursor + libXdamage + libXext + libXfixes + libXi + libXrandr + libXrender + libXtst + nspr + nss + libxcb + pango + systemd + libXScrnSaver + libappindicator-gtk3 + libdbusmenu + ]; + + unpackPhase = '' + mkdir -p $out/bin + cd $out + rpmextract $src + ''; + + installPhase = '' + runHook preInstall + + #wrapProgram $out/opt/${pname}/${pname} \ + # --prefix LD_LIBRARY_PATH : ${libPath}:$out/opt/${pname} + + #wrapProgram $out/opt/${pname}/resources/dist/${pname}/data/service/tccd \ + # --prefix LD_LIBRARY_PATH : ${libPath}:$out/opt/${pname} + + ln -s $out/opt/${pname}/${pname} $out/bin/ + ln -s $out/opt/${pname}/resources/dist/${pname}/data/service/tccd $out/bin/ + find $out + + runHook postInstall + ''; + + + meta = with lib; { + description = "A tool to help you control performance, energy, fan and comfort settings on TUXEDO laptops."; + homepage = "github.com/tuxedocomputers/tuxedo-control-center"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ ]; + }; +} diff --git a/packages/tuxedo-control-center/default.nix b/packages/tuxedo-control-center/default.nix new file mode 100644 index 0000000..ea7c0e3 --- /dev/null +++ b/packages/tuxedo-control-center/default.nix @@ -0,0 +1,159 @@ +{ pkgs, lib, stdenv, makeDesktopItem, desktop-file-utils, + + python, + + makeWrapper, nodejs, electron_9, fetchFromGitHub +}: + +let + baseName = "tuxedo-control-center"; + version = "1.0.14"; + + baseNodePackages = (import ./node-composition.nix { + inherit pkgs nodejs; + inherit (stdenv.hostPlatform) system; + }); + + nodePackages = baseNodePackages.package.override { + src = fetchFromGitHub { + owner = "tuxedocomputers"; + repo = "tuxedo-control-center"; + rev = "v${version}"; + sha256 = "00gpsvjbli9f6vj31lbs7flmcz215r91iz6rg1kbzklc3y5k2ifj"; + }; + + # Electron tries to download itself if this isn't set. We don't + # like that in nix so let's prevent it. + # + # This means we have to provide our own electron binaries when + # wrapping this program. + ELECTRON_SKIP_BINARY_DOWNLOAD=1; + + # Angular prompts for analytics, which in turn fails the build. + # + # We can disable analytics using false or empty string + # (See https://github.com/angular/angular-cli/blob/1a39c5202a6fe159f8d7db85a1c186176240e437/packages/angular/cli/models/analytics.ts#L506) + NG_CLI_ANALYTICS="false"; + }; + + desktopItem = makeDesktopItem { + name = "tuxedo-control-center"; + exec = "tuxedo-control-center %U"; + comment = "An application helping you to tune your TUXEDO"; + desktopName = "TUXEDO Control Center"; + icon = "tuxedo-control-center"; + categories = "System;"; + }; +in + +stdenv.mkDerivation rec { + name = "${baseName}-${version}"; + src = "${nodePackages}/lib/node_modules/tuxedo-control-center/"; + + nativeBuildInputs = [ + desktop-file-utils # for desktop-file-validate + ]; + + buildInputs = [ + nodejs + makeWrapper + + # For node-gyp + python + ]; + + # TCC by default writes its config to /etc/tcc, which is + # inconvenient. Change this to a more standard location. + # + # It also hardcodes binary path. + postPatch = '' + substituteInPlace src/common/classes/TccPaths.ts \ + --replace "/etc/tcc" "/var/lib/tcc" \ + --replace "/opt/tuxedo-control-center/resources/dist/tuxedo-control-center/data/service/tccd" "$out/bin/tccd" + ''; + + buildPhase = '' + set -x + # We already have `node_modules` in the current directory but we + # need it's binaries on `PATH` so we can use them! + export PATH="./node_modules/.bin:$PATH" + + # Prevent npm from checking for updates + export NO_UPDATE_NOTIFIER=true + + # The order of `npm` commands matches what `npm run build-prod` does but we split + # it out so we can customise the native builds in `npm run build-service`. + npm run clean + npm run build-electron + + # We don't use `npm run build-service` here because it uses `pkg` which packages + # node binaries in a way unsuitable for nix. Instead we're doing it ourself. + tsc -p ./src/service-app + cp ./src/package.json ./dist/tuxedo-control-center/service-app/package.json + + # We need to tell npm where to find node or `node-gyp` will try to download it. + # This also _needs_ to be lowercase or `npm` won't detect it + export npm_config_nodedir=${nodejs} + npm run build-native # Builds to ./build/Release/TuxedoIOAPI.node + + npm run build-ng-prod + ''; + + installPhase = '' + mkdir -p $out + cp -R ./dist/tuxedo-control-center/* $out + + ln -s $src/node_modules $out/node_modules + + # Parts of the code expect the icons to live under `data/dist-data`. Let's just + # copy the whole thing since the system assumes it has access to all the `dist-data` + # files. + mkdir -p $out/data/dist-data + cp -R ./src/dist-data/* $out/data/dist-data/ + + # Install `tccd` + mkdir -p $out/data/service + cp ./build/Release/TuxedoIOAPI.node $out/data/service/TuxedoIOAPI.node + makeWrapper ${nodejs}/bin/node $out/data/service/tccd \ + --add-flags "$out/service-app/service-app/main.js" \ + --prefix NODE_PATH : $out/data/service \ + --prefix NODE_PATH : $out/node_modules + mkdir -p $out/bin + ln -s $out/data/service/tccd $out/bin/tccd + + # Install `tuxedo-control-center` + # + # We use `--no-tccd-version-check` because the app uses the electron context + # to determine the app version, but the electron context is wrong if electron + # is invoked directly on a JavaScript file. + # + # The fix is to run electron on a folder with a `package.json` but the `tuxedo-control-center` + # package.json expects all files to live under `dist/` and I'm not a huge fan of that + # structure so we just disable the check and call it a day. + makeWrapper ${electron_9}/bin/electron $out/bin/tuxedo-control-center \ + --add-flags "$out/e-app/e-app/main.js" \ + --add-flags "--no-tccd-version-check" \ + --prefix NODE_PATH : $out/node_modules + + mkdir -p $out/share/polkit-1/actions/ + cp $out/data/dist-data/de.tuxedocomputers.tcc.policy $out/share/polkit-1/actions/de.tuxedocomputers.tcc.policy + + mkdir -p $out/etc/dbus-1/system.d/ + cp $out/data/dist-data/com.tuxedocomputers.tccd.conf $out/etc/dbus-1/system.d/com.tuxedocomputers.tccd.conf + + # Put our icons in the right spot + mkdir -p $out/share/icons/hicolor/scalable/apps/ + cp $out/data/dist-data/tuxedo-control-center_256.svg \ + $out/share/icons/hicolor/scalable/apps/tuxedo-control-center.svg + + ${desktopItem.buildCommand} + ''; + + meta = with lib; { + description = "Fan and power management GUI for Tuxedo laptops"; + homepage = "https://github.com/tuxedocomputers/tuxedo-control-center/"; + license = licenses.gpl3Plus; + maintainers = [ maintainers.blitz ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/packages/tuxedo-control-center/node-composition.nix b/packages/tuxedo-control-center/node-composition.nix new file mode 100644 index 0000000..7cd99e8 --- /dev/null +++ b/packages/tuxedo-control-center/node-composition.nix @@ -0,0 +1,18 @@ +# This file has been generated by node2nix 1.9.0. Do not edit! + +{pkgs ? import { + inherit system; + }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-14_x"}: + +let + nodeEnv = import ./node-env.nix { + inherit (pkgs) stdenv lib python2 runCommand writeTextFile; + inherit pkgs nodejs; + libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null; + }; +in +import ./node-packages.nix { + inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit; + inherit nodeEnv; +} + diff --git a/packages/tuxedo-control-center/node-env.nix b/packages/tuxedo-control-center/node-env.nix new file mode 100644 index 0000000..21089c4 --- /dev/null +++ b/packages/tuxedo-control-center/node-env.nix @@ -0,0 +1,573 @@ +# This file originates from node2nix + +{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile}: + +let + # Workaround to cope with utillinux in Nixpkgs 20.09 and util-linux in Nixpkgs master + utillinux = if pkgs ? utillinux then pkgs.utillinux else pkgs.util-linux; + + python = if nodejs ? python then nodejs.python else python2; + + # Create a tar wrapper that filters all the 'Ignoring unknown extended header keyword' noise + tarWrapper = runCommand "tarWrapper" {} '' + mkdir -p $out/bin + + cat > $out/bin/tar <> $out/nix-support/hydra-build-products + ''; + }; + + includeDependencies = {dependencies}: + lib.optionalString (dependencies != []) + (lib.concatMapStrings (dependency: + '' + # Bundle the dependencies of the package + mkdir -p node_modules + cd node_modules + + # Only include dependencies if they don't exist. They may also be bundled in the package. + if [ ! -e "${dependency.name}" ] + then + ${composePackage dependency} + fi + + cd .. + '' + ) dependencies); + + # Recursively composes the dependencies of a package + composePackage = { name, packageName, src, dependencies ? [], ... }@args: + builtins.addErrorContext "while evaluating node package '${packageName}'" '' + DIR=$(pwd) + cd $TMPDIR + + unpackFile ${src} + + # Make the base dir in which the target dependency resides first + mkdir -p "$(dirname "$DIR/${packageName}")" + + if [ -f "${src}" ] + then + # Figure out what directory has been unpacked + packageDir="$(find . -maxdepth 1 -type d | tail -1)" + + # Restore write permissions to make building work + find "$packageDir" -type d -exec chmod u+x {} \; + chmod -R u+w "$packageDir" + + # Move the extracted tarball into the output folder + mv "$packageDir" "$DIR/${packageName}" + elif [ -d "${src}" ] + then + # Get a stripped name (without hash) of the source directory. + # On old nixpkgs it's already set internally. + if [ -z "$strippedName" ] + then + strippedName="$(stripHash ${src})" + fi + + # Restore write permissions to make building work + chmod -R u+w "$strippedName" + + # Move the extracted directory into the output folder + mv "$strippedName" "$DIR/${packageName}" + fi + + # Unset the stripped name to not confuse the next unpack step + unset strippedName + + # Include the dependencies of the package + cd "$DIR/${packageName}" + ${includeDependencies { inherit dependencies; }} + cd .. + ${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."} + ''; + + pinpointDependencies = {dependencies, production}: + let + pinpointDependenciesFromPackageJSON = writeTextFile { + name = "pinpointDependencies.js"; + text = '' + var fs = require('fs'); + var path = require('path'); + + function resolveDependencyVersion(location, name) { + if(location == process.env['NIX_STORE']) { + return null; + } else { + var dependencyPackageJSON = path.join(location, "node_modules", name, "package.json"); + + if(fs.existsSync(dependencyPackageJSON)) { + var dependencyPackageObj = JSON.parse(fs.readFileSync(dependencyPackageJSON)); + + if(dependencyPackageObj.name == name) { + return dependencyPackageObj.version; + } + } else { + return resolveDependencyVersion(path.resolve(location, ".."), name); + } + } + } + + function replaceDependencies(dependencies) { + if(typeof dependencies == "object" && dependencies !== null) { + for(var dependency in dependencies) { + var resolvedVersion = resolveDependencyVersion(process.cwd(), dependency); + + if(resolvedVersion === null) { + process.stderr.write("WARNING: cannot pinpoint dependency: "+dependency+", context: "+process.cwd()+"\n"); + } else { + dependencies[dependency] = resolvedVersion; + } + } + } + } + + /* Read the package.json configuration */ + var packageObj = JSON.parse(fs.readFileSync('./package.json')); + + /* Pinpoint all dependencies */ + replaceDependencies(packageObj.dependencies); + if(process.argv[2] == "development") { + replaceDependencies(packageObj.devDependencies); + } + replaceDependencies(packageObj.optionalDependencies); + + /* Write the fixed package.json file */ + fs.writeFileSync("package.json", JSON.stringify(packageObj, null, 2)); + ''; + }; + in + '' + node ${pinpointDependenciesFromPackageJSON} ${if production then "production" else "development"} + + ${lib.optionalString (dependencies != []) + '' + if [ -d node_modules ] + then + cd node_modules + ${lib.concatMapStrings (dependency: pinpointDependenciesOfPackage dependency) dependencies} + cd .. + fi + ''} + ''; + + # Recursively traverses all dependencies of a package and pinpoints all + # dependencies in the package.json file to the versions that are actually + # being used. + + pinpointDependenciesOfPackage = { packageName, dependencies ? [], production ? true, ... }@args: + '' + if [ -d "${packageName}" ] + then + cd "${packageName}" + ${pinpointDependencies { inherit dependencies production; }} + cd .. + ${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."} + fi + ''; + + # Extract the Node.js source code which is used to compile packages with + # native bindings + nodeSources = runCommand "node-sources" {} '' + tar --no-same-owner --no-same-permissions -xf ${nodejs.src} + mv node-* $out + ''; + + # Script that adds _integrity fields to all package.json files to prevent NPM from consulting the cache (that is empty) + addIntegrityFieldsScript = writeTextFile { + name = "addintegrityfields.js"; + text = '' + var fs = require('fs'); + var path = require('path'); + + function augmentDependencies(baseDir, dependencies) { + for(var dependencyName in dependencies) { + var dependency = dependencies[dependencyName]; + + // Open package.json and augment metadata fields + var packageJSONDir = path.join(baseDir, "node_modules", dependencyName); + var packageJSONPath = path.join(packageJSONDir, "package.json"); + + if(fs.existsSync(packageJSONPath)) { // Only augment packages that exist. Sometimes we may have production installs in which development dependencies can be ignored + console.log("Adding metadata fields to: "+packageJSONPath); + var packageObj = JSON.parse(fs.readFileSync(packageJSONPath)); + + if(dependency.integrity) { + packageObj["_integrity"] = dependency.integrity; + } else { + packageObj["_integrity"] = "sha1-000000000000000000000000000="; // When no _integrity string has been provided (e.g. by Git dependencies), add a dummy one. It does not seem to harm and it bypasses downloads. + } + + if(dependency.resolved) { + packageObj["_resolved"] = dependency.resolved; // Adopt the resolved property if one has been provided + } else { + packageObj["_resolved"] = dependency.version; // Set the resolved version to the version identifier. This prevents NPM from cloning Git repositories. + } + + if(dependency.from !== undefined) { // Adopt from property if one has been provided + packageObj["_from"] = dependency.from; + } + + fs.writeFileSync(packageJSONPath, JSON.stringify(packageObj, null, 2)); + } + + // Augment transitive dependencies + if(dependency.dependencies !== undefined) { + augmentDependencies(packageJSONDir, dependency.dependencies); + } + } + } + + if(fs.existsSync("./package-lock.json")) { + var packageLock = JSON.parse(fs.readFileSync("./package-lock.json")); + + if(![1, 2].includes(packageLock.lockfileVersion)) { + process.stderr.write("Sorry, I only understand lock file versions 1 and 2!\n"); + process.exit(1); + } + + if(packageLock.dependencies !== undefined) { + augmentDependencies(".", packageLock.dependencies); + } + } + ''; + }; + + # Reconstructs a package-lock file from the node_modules/ folder structure and package.json files with dummy sha1 hashes + reconstructPackageLock = writeTextFile { + name = "addintegrityfields.js"; + text = '' + var fs = require('fs'); + var path = require('path'); + + var packageObj = JSON.parse(fs.readFileSync("package.json")); + + var lockObj = { + name: packageObj.name, + version: packageObj.version, + lockfileVersion: 1, + requires: true, + dependencies: {} + }; + + function augmentPackageJSON(filePath, dependencies) { + var packageJSON = path.join(filePath, "package.json"); + if(fs.existsSync(packageJSON)) { + var packageObj = JSON.parse(fs.readFileSync(packageJSON)); + dependencies[packageObj.name] = { + version: packageObj.version, + integrity: "sha1-000000000000000000000000000=", + dependencies: {} + }; + processDependencies(path.join(filePath, "node_modules"), dependencies[packageObj.name].dependencies); + } + } + + function processDependencies(dir, dependencies) { + if(fs.existsSync(dir)) { + var files = fs.readdirSync(dir); + + files.forEach(function(entry) { + var filePath = path.join(dir, entry); + var stats = fs.statSync(filePath); + + if(stats.isDirectory()) { + if(entry.substr(0, 1) == "@") { + // When we encounter a namespace folder, augment all packages belonging to the scope + var pkgFiles = fs.readdirSync(filePath); + + pkgFiles.forEach(function(entry) { + if(stats.isDirectory()) { + var pkgFilePath = path.join(filePath, entry); + augmentPackageJSON(pkgFilePath, dependencies); + } + }); + } else { + augmentPackageJSON(filePath, dependencies); + } + } + }); + } + } + + processDependencies("node_modules", lockObj.dependencies); + + fs.writeFileSync("package-lock.json", JSON.stringify(lockObj, null, 2)); + ''; + }; + + prepareAndInvokeNPM = {packageName, bypassCache, reconstructLock, npmFlags, production}: + let + forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com"; + in + '' + # Pinpoint the versions of all dependencies to the ones that are actually being used + echo "pinpointing versions of dependencies..." + source $pinpointDependenciesScriptPath + + # Patch the shebangs of the bundled modules to prevent them from + # calling executables outside the Nix store as much as possible + patchShebangs . + + # Deploy the Node.js package by running npm install. Since the + # dependencies have been provided already by ourselves, it should not + # attempt to install them again, which is good, because we want to make + # it Nix's responsibility. If it needs to install any dependencies + # anyway (e.g. because the dependency parameters are + # incomplete/incorrect), it fails. + # + # The other responsibilities of NPM are kept -- version checks, build + # steps, postprocessing etc. + + export HOME=$TMPDIR + cd "${packageName}" + runHook preRebuild + + ${lib.optionalString bypassCache '' + ${lib.optionalString reconstructLock '' + if [ -f package-lock.json ] + then + echo "WARNING: Reconstruct lock option enabled, but a lock file already exists!" + echo "This will most likely result in version mismatches! We will remove the lock file and regenerate it!" + rm package-lock.json + else + echo "No package-lock.json file found, reconstructing..." + fi + + node ${reconstructPackageLock} + ''} + + node ${addIntegrityFieldsScript} + ''} + + npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} rebuild + + if [ "''${dontNpmInstall-}" != "1" ] + then + # NPM tries to download packages even when they already exist if npm-shrinkwrap is used. + rm -f npm-shrinkwrap.json + + npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${lib.optionalString production "--production"} install + fi + ''; + + # Builds and composes an NPM package including all its dependencies + buildNodePackage = + { name + , packageName + , version + , dependencies ? [] + , buildInputs ? [] + , production ? true + , npmFlags ? "" + , dontNpmInstall ? false + , bypassCache ? false + , reconstructLock ? false + , preRebuild ? "" + , dontStrip ? true + , unpackPhase ? "true" + , buildPhase ? "true" + , meta ? {} + , ... }@args: + + let + extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" "meta" ]; + in + stdenv.mkDerivation ({ + name = "${name}-${version}"; + buildInputs = [ tarWrapper python nodejs ] + ++ lib.optional (stdenv.isLinux) utillinux + ++ lib.optional (stdenv.isDarwin) libtool + ++ buildInputs; + + inherit nodejs; + + inherit dontStrip; # Stripping may fail a build for some package deployments + inherit dontNpmInstall preRebuild unpackPhase buildPhase; + + compositionScript = composePackage args; + pinpointDependenciesScript = pinpointDependenciesOfPackage args; + + passAsFile = [ "compositionScript" "pinpointDependenciesScript" ]; + + installPhase = '' + # Create and enter a root node_modules/ folder + mkdir -p $out/lib/node_modules + cd $out/lib/node_modules + + # Compose the package and all its dependencies + source $compositionScriptPath + + ${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }} + + # Create symlink to the deployed executable folder, if applicable + if [ -d "$out/lib/node_modules/.bin" ] + then + ln -s $out/lib/node_modules/.bin $out/bin + fi + + # Create symlinks to the deployed manual page folders, if applicable + if [ -d "$out/lib/node_modules/${packageName}/man" ] + then + mkdir -p $out/share + for dir in "$out/lib/node_modules/${packageName}/man/"* + do + mkdir -p $out/share/man/$(basename "$dir") + for page in "$dir"/* + do + ln -s $page $out/share/man/$(basename "$dir") + done + done + fi + + # Run post install hook, if provided + runHook postInstall + ''; + + meta = { + # default to Node.js' platforms + platforms = nodejs.meta.platforms; + } // meta; + } // extraArgs); + + # Builds a node environment (a node_modules folder and a set of binaries) + buildNodeDependencies = + { name + , packageName + , version + , src + , dependencies ? [] + , buildInputs ? [] + , production ? true + , npmFlags ? "" + , dontNpmInstall ? false + , bypassCache ? false + , reconstructLock ? false + , dontStrip ? true + , unpackPhase ? "true" + , buildPhase ? "true" + , ... }@args: + + let + extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ]; + in + stdenv.mkDerivation ({ + name = "node-dependencies-${name}-${version}"; + + buildInputs = [ tarWrapper python nodejs ] + ++ lib.optional (stdenv.isLinux) utillinux + ++ lib.optional (stdenv.isDarwin) libtool + ++ buildInputs; + + inherit dontStrip; # Stripping may fail a build for some package deployments + inherit dontNpmInstall unpackPhase buildPhase; + + includeScript = includeDependencies { inherit dependencies; }; + pinpointDependenciesScript = pinpointDependenciesOfPackage args; + + passAsFile = [ "includeScript" "pinpointDependenciesScript" ]; + + installPhase = '' + mkdir -p $out/${packageName} + cd $out/${packageName} + + source $includeScriptPath + + # Create fake package.json to make the npm commands work properly + cp ${src}/package.json . + chmod 644 package.json + ${lib.optionalString bypassCache '' + if [ -f ${src}/package-lock.json ] + then + cp ${src}/package-lock.json . + fi + ''} + + # Go to the parent folder to make sure that all packages are pinpointed + cd .. + ${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."} + + ${prepareAndInvokeNPM { inherit packageName bypassCache reconstructLock npmFlags production; }} + + # Expose the executables that were installed + cd .. + ${lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."} + + mv ${packageName} lib + ln -s $out/lib/node_modules/.bin $out/bin + ''; + } // extraArgs); + + # Builds a development shell + buildNodeShell = + { name + , packageName + , version + , src + , dependencies ? [] + , buildInputs ? [] + , production ? true + , npmFlags ? "" + , dontNpmInstall ? false + , bypassCache ? false + , reconstructLock ? false + , dontStrip ? true + , unpackPhase ? "true" + , buildPhase ? "true" + , ... }@args: + + let + nodeDependencies = buildNodeDependencies args; + in + stdenv.mkDerivation { + name = "node-shell-${name}-${version}"; + + buildInputs = [ python nodejs ] ++ lib.optional (stdenv.isLinux) utillinux ++ buildInputs; + buildCommand = '' + mkdir -p $out/bin + cat > $out/bin/shell < Date: Fri, 8 Oct 2021 00:34:00 +0200 Subject: [PATCH 135/227] rename zfs to not conflict with work --- hardware/vison14.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hardware/vison14.nix b/hardware/vison14.nix index 85ed6d9..cf4b406 100644 --- a/hardware/vison14.nix +++ b/hardware/vison14.nix @@ -22,17 +22,17 @@ in { ]; fileSystems."/" = - { device = "tank/root/nixos"; + { device = "private/root/nixos"; fsType = "zfs"; }; fileSystems."/home" = - { device = "tank/root/home"; + { device = "private/root/home"; fsType = "zfs"; }; fileSystems."/tmp" = - { device = "tank/root/tmp"; + { device = "private/root/tmp"; fsType = "zfs"; }; From b3e03b3cc49562e4ca62e2d1fc1ce53a8b2910b1 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 11 Oct 2021 07:52:07 +0200 Subject: [PATCH 136/227] set vision14 keyboard to german --- dotfiles/sway/config | 1 + 1 file changed, 1 insertion(+) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 4413b68..f1adefd 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -22,6 +22,7 @@ set $menu bemenu-run -H 23 -b -p run \ --sb=#2d2a2e input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de +input "0:0:TUXEDO_Keyboard" xkb_layout de output * bg $wallpaper fill From e4a06a40d4d6f421c423c2b858330c5b8493c693 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 27 Oct 2021 19:29:14 +0200 Subject: [PATCH 137/227] add user stefan to input group --- roles/base.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/base.nix b/roles/base.nix index 0116cf5..8dbe392 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -120,7 +120,7 @@ in { }; users.users.stefan = { - extraGroups = [ "wheel" "dialout" "libvirtd"]; + extraGroups = [ "wheel" "dialout" "libvirtd" "input" ]; home = "/home/stefan"; isNormalUser = true; uid = 1000; From d10bad91b8640383956fb365b28562b55d5a492e Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 12 Nov 2021 22:46:42 +0100 Subject: [PATCH 138/227] x220 zfs rename --- hardware/x220-discovery.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hardware/x220-discovery.nix b/hardware/x220-discovery.nix index 7230b17..3e321ac 100644 --- a/hardware/x220-discovery.nix +++ b/hardware/x220-discovery.nix @@ -16,17 +16,17 @@ in { boot.extraModulePackages = [ ]; fileSystems."/" = - { device = "tank/root/nixos"; + { device = "cube/root/nixos"; fsType = "zfs"; }; fileSystems."/home" = - { device = "tank/root/home"; + { device = "cube/home"; fsType = "zfs"; }; fileSystems."/boot" = - { device = "/dev/disk/by-uuid/1339-E59C"; + { device = "/dev/disk/by-uuid/2AD7-4F18"; fsType = "vfat"; }; From 77d8dd3d9a6e3fdc9d71af60047799cc21200427 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 12 Nov 2021 22:46:50 +0100 Subject: [PATCH 139/227] fwupd --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index 8dbe392..fc16527 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -131,6 +131,7 @@ in { Defaults env_keep+=SSH_AUTH_SOCK ''; + services.fwupd.enable = true; services.gvfs = { enable = true; package = lib.mkForce pkgs.gnome3.gvfs; From 4d99a375f01b9af9306b4c8bbb93789c360749f6 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 12 Nov 2021 22:55:20 +0100 Subject: [PATCH 140/227] add lazygit --- roles/dev.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/dev.nix b/roles/dev.nix index a36198a..857ffec 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -28,6 +28,7 @@ in { dbeaver emacs gitAndTools.delta + lazygit ltrace parallel sops From 447aeca1ed3a8d87fd542dc6bb37f7e6aa7dfe6b Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 6 Dec 2021 12:42:00 +0100 Subject: [PATCH 141/227] fix stdenv deprications --- packages/helm2.nix | 2 +- packages/nagstamon.nix | 5 ++--- packages/notcoal/default.nix | 2 +- packages/oc311.nix | 2 +- packages/oc46.nix | 2 +- packages/openshift-install-4.5.nix | 2 +- packages/skaffold.nix | 2 +- packages/vaultsink.nix | 2 +- 8 files changed, 9 insertions(+), 10 deletions(-) diff --git a/packages/helm2.nix b/packages/helm2.nix index 29956c3..93b18ae 100644 --- a/packages/helm2.nix +++ b/packages/helm2.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { install -m 755 -D linux-amd64/helm $out/bin/helm2 ''; - meta = with stdenv.lib; { + meta = with lib; { homepage = "https://helm.sh"; description = "helms depricated v2 verison"; platforms = platforms.linux; diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index c1c09e7..0554e39 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, python38Packages, wrapQtAppsHook }: +{ stdenv, lib, fetchFromGitHub, python38Packages, wrapQtAppsHook }: python38Packages.buildPythonApplication rec { pname = "nagstamon"; @@ -11,7 +11,6 @@ python38Packages.buildPythonApplication rec { sha256 = "1l095halb55qinaik51p3lxiln1s034dr28k7ra6xzrrv9l1x1xw"; }; - # Test assumes darwin doCheck = false; nativeBuildInputs = [ wrapQtAppsHook ]; @@ -34,7 +33,7 @@ python38Packages.buildPythonApplication rec { xlib ]; - meta = with stdenv.lib; { + meta = with lib; { description = "A status monitor for the desktop"; homepage = "https://nagstamon.ifw-dresden.de/"; license = licenses.gpl2; diff --git a/packages/notcoal/default.nix b/packages/notcoal/default.nix index 7c080eb..cb99f47 100644 --- a/packages/notcoal/default.nix +++ b/packages/notcoal/default.nix @@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec { ]; - meta = with stdenv.lib; { + meta = with lib; { description = "An email tagger for notmuch"; homepage = "https://ghom.niij.org/eaon/notcoal"; }; diff --git a/packages/oc311.nix b/packages/oc311.nix index b4c7c5d..639d882 100644 --- a/packages/oc311.nix +++ b/packages/oc311.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation { install -m 755 -D oc $out/bin/oc3 ''; - meta = with stdenv.lib; { + meta = with lib; { homepage = "https://www.odk.io"; description = "openshift311 client"; platforms = platforms.linux; diff --git a/packages/oc46.nix b/packages/oc46.nix index 263db47..138232f 100644 --- a/packages/oc46.nix +++ b/packages/oc46.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { install -m 755 -D oc $out/bin/oc ''; - meta = with stdenv.lib; { + meta = with lib; { homepage = "https://www.odk.io"; description = "openshift 4.6 client"; platforms = platforms.linux; diff --git a/packages/openshift-install-4.5.nix b/packages/openshift-install-4.5.nix index 4c59399..8822e91 100644 --- a/packages/openshift-install-4.5.nix +++ b/packages/openshift-install-4.5.nix @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { install -m 755 -D openshift-install $out/bin/openshift-install ''; - meta = with stdenv.lib; { + meta = with lib; { homepage = "https://www.odk.io"; description = "openshift 4.5 installer"; platforms = platforms.linux; diff --git a/packages/skaffold.nix b/packages/skaffold.nix index eb42f25..3527a42 100644 --- a/packages/skaffold.nix +++ b/packages/skaffold.nix @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { ls -lah $out/bin/skaffold ''; - meta = with stdenv.lib; { + meta = with lib; { homepage = "https://skaffold.dev"; description = "skaffold"; platforms = platforms.linux; diff --git a/packages/vaultsink.nix b/packages/vaultsink.nix index 0f36856..ed7672e 100644 --- a/packages/vaultsink.nix +++ b/packages/vaultsink.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { install -m 755 -D vault-sink-linux-amd64 $out/bin/sink ''; - meta = with stdenv.lib; { + meta = with lib; { homepage = "https://github.com/cookiefactory/vault-sink"; description = "Vault Secret helper for yaml files"; platforms = platforms.linux; From 21e353adccf56e0b5967fccd64baae1c25cce297 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 7 Dec 2021 14:14:47 +0100 Subject: [PATCH 142/227] add nnn --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index fc16527..68b4341 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -24,6 +24,7 @@ in { ncdu nix-index nload + nnn ntfs3g openssl patchelf From 4b20513a86b466224bd0decfc5ff312f57127e82 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sun, 19 Dec 2021 17:16:19 +0100 Subject: [PATCH 143/227] desktop config --- hardware/desktop.nix | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 hardware/desktop.nix diff --git a/hardware/desktop.nix b/hardware/desktop.nix new file mode 100644 index 0000000..4672412 --- /dev/null +++ b/hardware/desktop.nix @@ -0,0 +1,44 @@ +# 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, ... }: + +let + unstable = import { config.allowUnfree = true; }; +in { + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; + boot.initrd.kernelModules = [ "amdgpu" ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "tank/root/nixos"; + fsType = "zfs"; + }; + + fileSystems."/home" = + { device = "tank/root/home"; + fsType = "zfs"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/587C-36F9"; + fsType = "vfat"; + }; + + swapDevices = [ ]; + + # custom + boot.extraModprobeConfig = '' + options snd_usb_audio device_setup=1 + ''; + boot.loader.efi.canTouchEfiVariables = true; + boot.loader.systemd-boot.enable = true; + networking.hostId = "ef3a5d57"; + networking.hostName = "home"; + hardware.opengl.enable = true; +} From c8a58b150e8e944bf20e09d9ca26a84970021839 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 23 Dec 2021 13:03:41 +0100 Subject: [PATCH 144/227] fix home screen resolution --- dotfiles/sway/config | 1 + 1 file changed, 1 insertion(+) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index f1adefd..3f15b86 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -25,6 +25,7 @@ input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de input "0:0:TUXEDO_Keyboard" xkb_layout de output * bg $wallpaper fill +output "BenQ Corporation BenQ SW2700 83H03922SL0" res --custom 2560x1440@60Hz # user keybinds bindsym $mod+Return exec $term From 135c93c226a23f15d42a6c2369f976ad53cadf12 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 3 Jan 2022 16:06:51 +0100 Subject: [PATCH 145/227] keepass and clipboard history --- dotfiles/sway/config | 7 ++++++- roles/base.nix | 1 + roles/desktop.nix | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 3f15b86..3bddfe4 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -34,7 +34,7 @@ bindsym $mod+d exec $menu floating_modifier $mod normal bindsym $mod+Shift+c reload bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit' -bindsym $mod+Shift+p exec keepassxc +bindsym $mod+o exec keepassxc bindsym $mod+z exec $lock bindsym $mod+Up exec light -A 5 bindsym $mod+Down exec light -U 5 @@ -161,3 +161,8 @@ exec_always { gsettings set $gnome-schema icon-theme 'elementary Xfce' gsettings set $gnome-schema cursor-theme 'Capitaine Cursors - White' } + + +# pastebin +exec wl-paste --primary -t text --watch clipman store +bindsym $mod+p exec clipman pick -t "bemenu" --tool-args='-b --fn "CascadiaCode 10" -l 10 --ff=#ff6188 --nf=#fcfcfa --tf=#78dce8 --hf=#78dce8 --tb=#2d2a2e --fb=#2d2a2e --nb=#2d2a2e --hb=#2d2a2e --sb=#2d2a2e' diff --git a/roles/base.nix b/roles/base.nix index 68b4341..e374695 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -12,6 +12,7 @@ in { bash-completion bat borgbackup + curl direnv fd file diff --git a/roles/desktop.nix b/roles/desktop.nix index 42bd933..efbfc06 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -131,6 +131,7 @@ in { solaar gdk-pixbuf + clipman gebaar-libinput wdisplays wl-clipboard From 3c8239a55fd65d1ff0b886d5ec604a9e892dac08 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 3 Jan 2022 16:07:36 +0100 Subject: [PATCH 146/227] vim & zoxide --- packages/neovim.nix | 19 +++++++++++++++---- roles/base.nix | 4 ++-- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/packages/neovim.nix b/packages/neovim.nix index 54f3cc9..49c9cf0 100644 --- a/packages/neovim.nix +++ b/packages/neovim.nix @@ -1,8 +1,12 @@ with import {}; neovim.override { + vimAlias = true; + configure = { customRC = '' + source ${pkgs.fzf}/share/vim-plugins/fzf/plugin/fzf.vim + set hidden " langserver @@ -11,7 +15,7 @@ neovim.override { \ 'python': ['pyls'], \ 'rust': ['rust-analyzer'], \ } - + " basic builtin set background=dark set shiftwidth=4 @@ -65,7 +69,8 @@ neovim.override { let g:which_key_map.f = { 'name': '+files' } noremap ff :FZF - noremap fc :saveas + noremap fn :NnnPicker %:p:h + noremap fc :saveas %:p:h let g:which_key_map.y = { 'name': '+yank' } noremap yp :read !wl-paste @@ -79,7 +84,7 @@ neovim.override { noremap bn :bn noremap bp :bp - let g:which_key_map.b = { 'name': '+lang' } + let g:which_key_map.m = { 'name': '+lang' } noremap md :call LanguageClient_textDocument_codeAction() noremap mc :call LanguageClient#textDocument_references() noremap mf :call LanguageClient#textDocument_formatting() @@ -88,6 +93,11 @@ neovim.override { noremap mm :call LanguageClient#textDocument_hover() noremap mr :call LanguageClient#textDocument_rename() noremap ms :call LanguageClient#workspace_symbol() + noremap ma :fzf_lsp_action + noremap ml :fzf_lsp_layout + + let g:which_key_map.g = { 'name': '+git' } + noremap gs :!lazygit " lang specifics let g:rustfmt_autosave = 1 @@ -99,10 +109,11 @@ neovim.override { airline easymotion editorconfig-vim - fugitive fzf + fzf-lsp-nvim LanguageClient-neovim ncm2 + nnn-vim surround syntastic vim-addon-nix diff --git a/roles/base.nix b/roles/base.nix index e374695..027eb8c 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -37,7 +37,7 @@ in { tmux unzip wget - z-lua + zoxide (import ../packages/neovim.nix) ]; @@ -76,7 +76,7 @@ in { . "$(fzf-share)/key-bindings.bash" . "$(fzf-share)/completion.bash" - . <(z --init bash) + . <(zoxide init bash) . <(direnv hook bash) . ${pkgs.bash-completion}/etc/profile.d/bash_completion.sh From a1710f0f8f975c306b141a8cf8c2d875626683b4 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 3 Jan 2022 16:07:46 +0100 Subject: [PATCH 147/227] update hosts --- roles/work.nix | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/roles/work.nix b/roles/work.nix index 5d7d56f..19830a0 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -12,15 +12,9 @@ in { ]; networking.extraHosts = '' - 35.234.109.94 fsi.thomann.de 10.100.7.11 mon.netzmarkt.de - 172.23.0.2 api.kube.local - 172.23.0.2 hubble.kube.local - 172.23.0.2 bonedo.kube.local - 172.23.0.2 linkerd.kube.local - 172.23.0.2 argo.kube.local - + 172.20.0.2 hubble.kind ''; environment.systemPackages = with pkgs; [ From 3f34e58a846ca8baa26e16137e2cf62a5ff256c6 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 22 Jan 2022 15:33:38 +0100 Subject: [PATCH 148/227] use zfs features in docker --- roles/admin.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/roles/admin.nix b/roles/admin.nix index 2cef164..8ee23f2 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -26,6 +26,9 @@ in { (import ../packages/helm2.nix) ]; - virtualisation.docker.enable = true; + virtualisation.docker = { + enable = true; + storageDriver = "zfs"; + }; virtualisation.libvirtd.enable = true; } From 091ebc9424fea5f8f7941972f2bebcca7f35889d Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 31 Jan 2022 14:03:22 +0100 Subject: [PATCH 149/227] add work monitor via name --- dotfiles/sway/config | 1 + 1 file changed, 1 insertion(+) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 3bddfe4..13c7ebc 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -26,6 +26,7 @@ input "0:0:TUXEDO_Keyboard" xkb_layout de output * bg $wallpaper fill output "BenQ Corporation BenQ SW2700 83H03922SL0" res --custom 2560x1440@60Hz +output "Dell Inc. Dell U4919DW HZVZWP2" res 5120x1440 # user keybinds bindsym $mod+Return exec $term From 00b092d3961eb3487f56a02cc45c45c829b34dea Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 31 Jan 2022 14:03:34 +0100 Subject: [PATCH 150/227] add quick calculators --- dotfiles/sway/config | 4 ++++ roles/desktop.nix | 1 + 2 files changed, 5 insertions(+) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 13c7ebc..c3fae3e 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -39,6 +39,8 @@ bindsym $mod+o exec keepassxc bindsym $mod+z exec $lock bindsym $mod+Up exec light -A 5 bindsym $mod+Down exec light -U 5 +bindsym $mod+c exec alacritty --class float -t pyCalc -e python +bindsym $mod+i exec alacritty --class float -t insect -e insect bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png bindswitch --reload --locked lid:on output eDP-1 disable bindswitch --reload --locked lid:off output eDP-1 enable @@ -47,6 +49,8 @@ bindswitch --reload --locked lid:off output eDP-1 enable for_window [app_id="org.keepassxc.KeePassXC"] floating enable for_window [title="Firefox — Sharing Indicator"] floating enable for_window [title="Picture-in-Picture"] floating enable +for_window [title="pyCalc"] floating enable +for_window [title="insect"] floating enable # font font Cascadia Code 10 diff --git a/roles/desktop.nix b/roles/desktop.nix index efbfc06..814a3f3 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -121,6 +121,7 @@ in { mpv mumble neofetch + nodePackages.insect pavucontrol pcmanfm pulseeffects-pw From a71dd12124b437a917e4061bd90e9a28a3a81330 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 31 Jan 2022 14:03:51 +0100 Subject: [PATCH 151/227] group autostarts --- dotfiles/sway/config | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index c3fae3e..2e6775e 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -154,12 +154,6 @@ bar { include /etc/sway/config.d/* -exec mako --border-color=#cc6666 \ - --background-color=#2d2a2eee -exec emacs --daemon -exec swayidle before-sleep "$lock" -exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 - set $gnome-schema org.gnome.desktop.interface exec_always { gsettings set $gnome-schema gtk-theme 'Arc-Dark' @@ -167,6 +161,12 @@ exec_always { gsettings set $gnome-schema cursor-theme 'Capitaine Cursors - White' } +# autostarts +exec mako --border-color=#cc6666 \ + --background-color=#2d2a2eee +exec emacs --daemon +exec swayidle before-sleep "$lock" +exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 # pastebin exec wl-paste --primary -t text --watch clipman store From ba1a15b95357453df2a7ab0ec3119785d0156054 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 31 Jan 2022 14:04:01 +0100 Subject: [PATCH 152/227] kind is nice for local testing --- roles/admin.nix | 1 + roles/work.nix | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/roles/admin.nix b/roles/admin.nix index 8ee23f2..814c79d 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -8,6 +8,7 @@ in { dnsutils dogdns k9s + kind kubectl kubeseal pwgen diff --git a/roles/work.nix b/roles/work.nix index 19830a0..917c586 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -13,8 +13,12 @@ in { networking.extraHosts = '' 10.100.7.11 mon.netzmarkt.de + 85.10.233.162 live.bonedo.de 172.20.0.2 hubble.kind + 172.20.0.2 dashboard.kind + 172.20.0.2 grafana.kind + 172.20.0.2 alert.kind ''; environment.systemPackages = with pkgs; [ From 0ff07ffde9adabcc134a23e8c97820be4c9ae585 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 31 Jan 2022 14:04:13 +0100 Subject: [PATCH 153/227] better locales --- roles/base.nix | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/roles/base.nix b/roles/base.nix index 027eb8c..c0a13d0 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -146,4 +146,19 @@ in { frequent = 8; monthly = 6; }; + + i18n = { + defaultLocale = "en_US.UTF-8"; + extraLocaleSettings = { + LC_TIME = "de_DE.UTF-8"; + LC_NUMERIC = "de_DE.UTF-8"; + LC_PAPER = "de_DE.UTF-8"; + LC_MONETARY = "de_DE.UTF-8"; + LC_MEASUREMENT = "de_DE.UTF-8"; + LC_NAME = "de_DE.UTF-8"; + LC_TELEPHONE = "de_DE.UTF-8"; + LC_IDENTIFICATION = "de_DE.UTF-8"; + }; + }; + } From 69459cf910daa0fccf17a7c8556718d17579e96b Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 31 Jan 2022 14:44:15 +0100 Subject: [PATCH 154/227] auto garbage collect --- configuration.nix | 3 ++- roles/nix.nix | 11 +++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 roles/nix.nix diff --git a/configuration.nix b/configuration.nix index e843abe..429dd2c 100644 --- a/configuration.nix +++ b/configuration.nix @@ -15,8 +15,9 @@ ./roles/desktop.nix ./roles/dev.nix ./roles/mail.nix - ./roles/vpn.nix ./roles/network.nix + ./roles/nix.nix + ./roles/vpn.nix ./roles/work.nix ]; diff --git a/roles/nix.nix b/roles/nix.nix new file mode 100644 index 0000000..97bbe06 --- /dev/null +++ b/roles/nix.nix @@ -0,0 +1,11 @@ +{ config, lib, pkgs, ... }: + +{ + + nix.gc = { + automatic = true; + dates = "weekly"; + options = "--delete-older-than 30d"; + }; + +} From b2a8623e5f874a27f77bf21d9542787bb53ec602 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 11 Feb 2022 13:48:32 +0100 Subject: [PATCH 155/227] fix emacs fonts --- roles/desktop.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index 814a3f3..b6f1955 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -73,6 +73,7 @@ in { fonts.fontconfig.antialias = true; fonts.fonts = with pkgs; [ cascadia-code + emacs-all-the-icons-fonts fira-code fira-code-symbols font-awesome From 5ace716b249fe32bd2652b30215178a86c49fa19 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 11 Feb 2022 16:10:17 +0100 Subject: [PATCH 156/227] add certmanager --- packages/certmanager.nix | 29 +++++++++++++++++++++++++++++ roles/admin.nix | 1 + 2 files changed, 30 insertions(+) create mode 100644 packages/certmanager.nix diff --git a/packages/certmanager.nix b/packages/certmanager.nix new file mode 100644 index 0000000..cc23228 --- /dev/null +++ b/packages/certmanager.nix @@ -0,0 +1,29 @@ +with import {}; + +stdenv.mkDerivation rec { + name = "cert-manager"; + version = "v1.7.1"; + src = fetchurl { + url = "https://github.com/cert-manager/cert-manager/releases/download/${version}/cmctl-linux-amd64.tar.gz"; + sha256 = "1z5n2rcfhrl1vm5vxqa1759m3prlv08mmg96n16p4gwkdxycznx4"; + }; + + nativeBuildInputs = [ + autoPatchelfHook + ]; + + unpackPhase = '' + tar xvpzf $src + ''; + + installPhase = '' + install -m 755 -D cmctl $out/bin/cmctl + ''; + + meta = with lib; { + homepage = "https://cert-manager.io"; + description = "cert-manager CLI"; + platforms = platforms.linux; + maintainers = with maintainers; [ foosinn ]; + }; +} diff --git a/roles/admin.nix b/roles/admin.nix index 814c79d..a96771d 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -25,6 +25,7 @@ in { (import ../packages/skaffold.nix) (import ../packages/helm2.nix) + (import ../packages/certmanager.nix) ]; virtualisation.docker = { From b97933df7e92bbb2804654a61497947b89c1f5d2 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 28 Jan 2022 23:23:04 +0100 Subject: [PATCH 157/227] add lorri gfvs --- roles/base.nix | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/roles/base.nix b/roles/base.nix index c0a13d0..98e5326 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -134,13 +134,24 @@ in { ''; services.fwupd.enable = true; - services.gvfs = { - enable = true; - package = lib.mkForce pkgs.gnome3.gvfs; - }; services.resolved.enable = true; services.lorri.enable = true; + security.wrappers.gvfsd-nfs = { + source = "${pkgs.gnome.gvfs}/libexec/gvfsd-nfs"; + owner = "nobody"; + group = "nogroup"; + capabilities = "cap_net_bind_service+ep"; + }; + services.gvfs = { + enable = true; + package = lib.mkForce (pkgs.gnome.gvfs.overrideAttrs (oldAttrs: { + postInstall = '' + ln -sf /run/wrappers/bin/gvfsd-nfs $out/libexec/gvfsd-nfs + ''; + })); + }; + services.zfs.autoSnapshot = { enable = true; frequent = 8; From c4739ab3fbca300fc6222c9963e73cfdd0d9c13c Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 28 Jan 2022 23:23:35 +0100 Subject: [PATCH 158/227] skip 32 bit --- roles/private.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/roles/private.nix b/roles/private.nix index 8b4e355..82823ce 100644 --- a/roles/private.nix +++ b/roles/private.nix @@ -32,8 +32,8 @@ in { services.udev.packages = [ pkgs.openocd ]; # steam dependencies - hardware.opengl.driSupport32Bit = true; - hardware.opengl.driSupport = true; + #hardware.opengl.driSupport32Bit = true; + #hardware.opengl.driSupport = true; fileSystems."/mnt/nfs" = { device = "10.1.20.29:/srv/nfs"; From b907855018bdc7fa92f7f36a9fa9a09bfbb7498c Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 12 Feb 2022 01:06:27 +0100 Subject: [PATCH 159/227] cleanup font handling --- dotfiles/alacritty.yml | 2 +- dotfiles/sway/config | 2 +- roles/desktop.nix | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/dotfiles/alacritty.yml b/dotfiles/alacritty.yml index 6fa9a64..eac8077 100644 --- a/dotfiles/alacritty.yml +++ b/dotfiles/alacritty.yml @@ -1,6 +1,6 @@ font: normal: - family: Cascadia Code + family: CaskaydiaCove Nerd Font size: 12 background_opacity: 0.9 diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 2e6775e..74e9834 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -53,7 +53,7 @@ for_window [title="pyCalc"] floating enable for_window [title="insect"] floating enable # font -font Cascadia Code 10 +#font pango:CaskaydiaCove Nerd Font Mono 10 # colors set $black #2d2a2e diff --git a/roles/desktop.nix b/roles/desktop.nix index b6f1955..2151945 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -72,14 +72,14 @@ in { fonts.enableDefaultFonts = true; fonts.fontconfig.antialias = true; fonts.fonts = with pkgs; [ - cascadia-code + corefonts emacs-all-the-icons-fonts fira-code - fira-code-symbols - font-awesome - meslo-lg noto-fonts noto-fonts-emoji + (nerdfonts.override { + fonts = [ "CascadiaCode" "Meslo" ]; + }) ]; nixpkgs.config.allowUnfree = true; From 448da283ee2961b05c842e180efa3f1afe93f6f8 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 12 Feb 2022 01:06:57 +0100 Subject: [PATCH 160/227] cleanup i3status rust --- dotfiles/sway/status.toml | 50 ++++++++++++++++++++++++--------------- 1 file changed, 31 insertions(+), 19 deletions(-) diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 0e3b587..4a04ddd 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -18,28 +18,31 @@ separator = "|" [icons] name = "none" [icons.overrides] -bat = "  " -bat_full = "  " -bat_charging = "   " -bat_discharging = "  " -backlight_empty = "  " -backlight_partial1 = "  " -backlight_partial2 = "  " -backlight_partial3 = "  " -backlight_full = "  " -volume_full = "  " -volume_half = "  " -volume_empty = "  " -volume_muted= "MUTE" -cogs = "  " -memory_mem = "  " +backlight_empty = "" +backlight_full = "" +backlight_partial1 = "" +backlight_partial2 = "" +backlight_partial3 = "" +bat = "" +bat_charging = " " +bat_discharging = "" +bat_empty = "" +bat_full = "" +cogs = "" +disk_space = "" headphones = "  " -net_wireless = " " +memory_mem = "" +net_down = "DOWN" +net_up = "UP" net_vpn = " " net_wired = "" -net_up = "UP" -net_down = "DOWN" +net_wireless = " " thermometer = "  " +time = "" +volume_empty = "" +volume_full = "" +volume_half = "" +volume_muted= " MUTE" [[block]] @@ -72,6 +75,7 @@ alert = 10.0 block = "memory" display_type = "memory" format_mem = "{mem_total_used_percents}" +icons_format = " {icon}" clickable = false [[block]] @@ -90,7 +94,15 @@ block = "backlight" block = "battery" device = "BAT0" interval = 10 -format = "{percentage}% {time}" +format = "{percentage} ({time})" +icons_format = " {icon} " + +[[block]] +block = "battery" +device = "BAT1" +interval = 10 +format = "{percentage} ({time})" +icons_format = " {icon} " [[block]] block = "time" From beb7d2def1054af84cb3b33edd438211121a74b6 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 12 Feb 2022 20:52:20 +0100 Subject: [PATCH 161/227] a little ricing --- configuration.nix | 5 ++- dotfiles/sway/config | 77 ++++++++++++++------------------------- dotfiles/sway/status.toml | 24 ++++++------ modules/colors.nix | 48 ++++++++++++++++++++++++ packages/neovim.nix | 1 + roles/base.nix | 9 +++-- roles/desktop.nix | 48 +++++++++++++++++++++++- roles/private.nix | 36 ++++++++++-------- 8 files changed, 166 insertions(+), 82 deletions(-) create mode 100644 modules/colors.nix diff --git a/configuration.nix b/configuration.nix index 429dd2c..b6d2b22 100644 --- a/configuration.nix +++ b/configuration.nix @@ -7,6 +7,8 @@ { imports = [ + ./modules/colors.nix + # Include the results of the hardware scan. ./hardware-configuration.nix @@ -18,7 +20,8 @@ ./roles/network.nix ./roles/nix.nix ./roles/vpn.nix - ./roles/work.nix + ./roles/private.nix + ./roles/game.nix ]; networking.useDHCP = false; diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 74e9834..b14990e 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -7,19 +7,9 @@ set $right l set $term alacritty set $wallpaper /home/stefan/Downloads/bg.jpg set $lock swaylock -t -i $wallpaper --scaling=fill - -# echo -- bemenu -H 23 -b -p run --{ff,nf}=#eeeeeee --{tf,hf}=#78dce8 --{tb,fb,nb,hb,sb}=#2d2a2e - -set $menu bemenu-run -H 23 -b -p run \ - --ff=#ff6188 \ - --nf=#fcfcfa \ - --tf=#78dce8 \ - --hf=#78dce8 \ - --tb=#2d2a2e \ - --fb=#2d2a2e \ - --nb=#2d2a2e \ - --hb=#2d2a2e \ - --sb=#2d2a2e +set $font pango:CaskaydiaCove Nerd Font Mono 10 +set $menucolor --ff=#f8f8f2 --nf=#f8f8f2 --tf=#bd93f9 --hf=#bd93f9 --tb=#282a36 --fb=#282a36 --nb=#282a36 --hb=#282a36 --sb=#282a36 +set $menu bemenu-run -H 23 -b -p run $menucolor input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de input "0:0:TUXEDO_Keyboard" xkb_layout de @@ -53,32 +43,22 @@ for_window [title="pyCalc"] floating enable for_window [title="insect"] floating enable # font -#font pango:CaskaydiaCove Nerd Font Mono 10 +font $font # colors -set $black #2d2a2e -set $base00 #2d2a2e -set $base01 #ff6188 -set $base02 #a9dc76 -set $base03 #ffd866 -set $base04 #78dce8 -set $base05 #ab9df2 -set $base06 #fcfcfa -set $base07 #fcfcfa -set $base08 #323232 -set $base09 #cc6666 -set $base0A #ffd866 -set $base0B #78dce8 -set $base0C #ab9df2 -set $base0D #ff6188 -set $base0E #a6dc76 -set $base0F #ffffff +set $black #282a36 +set $red #ff6188 +set $cyan #78dce8 +set $white #fcfcfa +set $yellow #f1fa8c +set $violet #bd93f9 +set $black2 #323232 -# border background text indicator -client.focused $base04 $base00 $base07 $base04 $base04 -client.focused_inactive $base00 $base00 $base07 $base00 $base00 -client.unfocused $black $black $base07 $base00 $base00 -client.urgent $base01 $base01 $base00 $base08 $base07 +# border backgnd text indicator childborder +client.focused $violet $black $white $violet $violet +client.focused_inactive $black $black $white $black2 $black +client.unfocused $black $black $white $black2 $black +client.urgent $red $red $black $black2 $white # movement @@ -139,21 +119,18 @@ bar { position bottom colors { background $black - statusline $base07 - separator $base04 - - # border back text - focused_workspace $base04 $base04 $base00 - active_workspace $base04 $base04 $base00 - urgent_workspace $base01 $base01 $base07 - inactive_workspace $base00 $base00 $base07 + statusline $white + separator $violet + # border back text + focused_workspace $violet $violet $black + active_workspace $violet $violet $black + urgent_workspace $red $red $white + inactive_workspace $black $black $white } status_command i3status-rs /etc/sway/status.toml } -include /etc/sway/config.d/* - set $gnome-schema org.gnome.desktop.interface exec_always { gsettings set $gnome-schema gtk-theme 'Arc-Dark' @@ -162,12 +139,14 @@ exec_always { } # autostarts -exec mako --border-color=#cc6666 \ - --background-color=#2d2a2eee +exec mako --font "$font" \ + --background-color=$black \ + --border-color=$violet \ + --text-color=$white exec emacs --daemon exec swayidle before-sleep "$lock" exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 # pastebin exec wl-paste --primary -t text --watch clipman store -bindsym $mod+p exec clipman pick -t "bemenu" --tool-args='-b --fn "CascadiaCode 10" -l 10 --ff=#ff6188 --nf=#fcfcfa --tf=#78dce8 --hf=#78dce8 --tb=#2d2a2e --fb=#2d2a2e --nb=#2d2a2e --hb=#2d2a2e --sb=#2d2a2e' +bindsym $mod+p exec clipman pick -t "bemenu" --tool-args='-b --fn "$font" -l 10 $menucolor' diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 4a04ddd..18b43e2 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -1,18 +1,18 @@ [theme] name = "plain" [theme.overrides] -idle_bg = "#2d2a2e" -idle_fg = "#eeeeee" -info_bg = "#2d2a2e" -info_fg = "#eeeeee" -good_bg = "#2d2a2e" -good_fg = "#a9dc76" -warning_bg = "#2d2a2e" -warning_fg = "#ffd866" -critical_bg = "#2a2e38" -critical_fg = "#ff665c" -separator_bg = "#2d2a2e" -separator_fg = "#555555" +idle_bg = "#282a36" +idle_fg = "#f8f8f2" +info_bg = "#282a36" +info_fg = "#f8f8f2" +good_bg = "#282a36" +good_fg = "#50fa7b" +warning_bg = "#282a36" +warning_fg = "#f1fa8c" +critical_bg = "#282a36" +critical_fg = "#ff5555" +separator_bg = "#282a36" +separator_fg = "#bd93f9" separator = "|" [icons] diff --git a/modules/colors.nix b/modules/colors.nix new file mode 100644 index 0000000..4a84640 --- /dev/null +++ b/modules/colors.nix @@ -0,0 +1,48 @@ +{ config, lib, pkgs, ... }: + +with lib; { + options = { + colors = { + background = mkOption { + type = types.str; + default = "19181A"; + }; + foreground = mkOption { + type = types.str; + default = "FCFCFA"; + }; + black = mkOption { + type = types.str; + default = "19181A"; + }; + red = mkOption { + type = types.str; + default = "cc6666"; + }; + green = mkOption { + type = types.str; + default = "a9dc76"; + }; + yellow = mkOption { + type = types.str; + default = "ffd866"; + }; + cyan = mkOption { + type = types.str; + default = "78dce8"; + }; + magenta = mkOption { + type = types.str; + default = "FC9867"; + }; + blue = mkOption { + type = types.str; + default = "AB9DF2"; + }; + white = mkOption { + type = types.str; + default = "FCFCFA"; + }; + }; + }; +} diff --git a/packages/neovim.nix b/packages/neovim.nix index 49c9cf0..f1744dd 100644 --- a/packages/neovim.nix +++ b/packages/neovim.nix @@ -31,6 +31,7 @@ neovim.override { set relativenumber set mouse=a set shortmess+=c + set clipboard=unnamedplus " better search set incsearch diff --git a/roles/base.nix b/roles/base.nix index 98e5326..1cb5552 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -45,6 +45,12 @@ in { etc = { "starship.toml".source = ../dotfiles/starship.toml; }; + + variables = { + BAT_THEME = "ansi"; + EDITOR = "nvim"; + STARSHIP_CONFIG = "/etc/starship.toml"; + }; }; programs.bash = { @@ -52,8 +58,6 @@ in { . <(starship init bash) ''; interactiveShellInit = '' - export EDITOR=nvim - export STARSHIP_CONFIG=/etc/starship.toml if [ -f ~/.ssh/agent.env ] ; then . ~/.ssh/agent.env > /dev/null @@ -68,7 +72,6 @@ in { ssh-add fi - set_win_title() { echo -ne "\033]0;$USER@$HOSTNAME: $PWD\007" } diff --git a/roles/desktop.nix b/roles/desktop.nix index 2151945..3bf6310 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -4,6 +4,7 @@ { config, lib, pkgs, ... }: let + colors = config.colors; unstable = import { config.allowUnfree = true; }; in { @@ -36,11 +37,56 @@ in { v4l2loopback ]; + colors = { + background = "#282a36"; + foreground = "#f8f8f2"; + black = "#1E2029"; + red = "#ff5555"; + green = "#50fa7b"; + yellow = "#f1fa8c"; + cyan = "#8be9fd"; + magenta ="#bd93f9"; + blue = "#61bfff"; + white = "#ffffff"; + }; + environment = { etc = { "sway/config".source = ../dotfiles/sway/config; "sway/status.toml".source = ../dotfiles/sway/status.toml; - "xdg/alacritty/alacritty.yml".source = ../dotfiles/alacritty.yml; + "xdg/alacritty/alacritty.yml".text = '' +font: + normal: + family: CaskaydiaCove Nerd Font + size: 12 + +background_opacity: 0.98 +draw_bold_text_with_bright_colors: true + +colors: + primary: + background: "${colors.background}" + foreground: "${colors.foreground}" + + normal: + black: "${colors.black}" + red: "${colors.red}" + green: "${colors.green}" + yellow: "${colors.yellow}" + cyan: "${colors.cyan}" + magenta: "${colors.magenta}" + blue: "${colors.blue}" + white: "${colors.white}" + +window: + dynamic_title: true + +env: + TERM: xterm-256color + +key_bindings: + - { key: Escape, mods: Control, action: ToggleViMode } + ''; }; }; diff --git a/roles/private.nix b/roles/private.nix index 82823ce..1d8f031 100644 --- a/roles/private.nix +++ b/roles/private.nix @@ -5,25 +5,25 @@ let in { environment.systemPackages = with pkgs; [ # embedded - arduino - avrdude - gcc-arm-embedded - openocd - pkgsCross.avr.avrlibc - pkgsCross.avr.buildPackages.binutils - pkgsCross.avr.buildPackages.gcc8 - pkgsCross.avr.libcCross + #arduino + #avrdude + #gcc-arm-embedded + #openocd + #pkgsCross.avr.avrlibc + #pkgsCross.avr.buildPackages.binutils + #pkgsCross.avr.buildPackages.gcc8 + #pkgsCross.avr.libcCross - cura - candle + #cura + #candle openscad - kicad - blender - python3Packages.numpy - python3Packages.shapely + #kicad + #blender + #python3Packages.numpy + #python3Packages.shapely - steam - unstable.obs-studio + #steam + #unstable.obs-studio ]; # stm32 debugger @@ -40,4 +40,8 @@ in { fsType = "nfs"; options = [ "x-systemd.automount" "noauto" "x-systemd.idle-timeout=120" ]; }; + + networking.extraHosts = '' + 162.55.40.34 mail.f2o.io + ''; } From 4146b5aecec156367722a75f1e4dff5bf5f7cbc8 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sun, 13 Feb 2022 00:28:15 +0100 Subject: [PATCH 162/227] reice a lot --- dotfiles/sway/config | 8 +++++--- dotfiles/sway/status.toml | 25 +++++++++++++++---------- roles/desktop.nix | 14 +++++++++++--- 3 files changed, 31 insertions(+), 16 deletions(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index b14990e..b3bd122 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -7,7 +7,7 @@ set $right l set $term alacritty set $wallpaper /home/stefan/Downloads/bg.jpg set $lock swaylock -t -i $wallpaper --scaling=fill -set $font pango:CaskaydiaCove Nerd Font Mono 10 +set $font CaskaydiaCove Nerd Font 10 set $menucolor --ff=#f8f8f2 --nf=#f8f8f2 --tf=#bd93f9 --hf=#bd93f9 --tb=#282a36 --fb=#282a36 --nb=#282a36 --hb=#282a36 --sb=#282a36 set $menu bemenu-run -H 23 -b -p run $menucolor @@ -116,6 +116,7 @@ mode "resize" { bindsym $mod+r mode "resize" bar { + font $font position bottom colors { background $black @@ -133,8 +134,8 @@ bar { set $gnome-schema org.gnome.desktop.interface exec_always { - gsettings set $gnome-schema gtk-theme 'Arc-Dark' - gsettings set $gnome-schema icon-theme 'elementary Xfce' + gsettings set $gnome-schema gtk-theme 'Dracula' + gsettings set $gnome-schema icon-theme 'Dracula' gsettings set $gnome-schema cursor-theme 'Capitaine Cursors - White' } @@ -146,6 +147,7 @@ exec mako --font "$font" \ exec emacs --daemon exec swayidle before-sleep "$lock" exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 +exec redshift -l 49.8988135:10.9027636 # pastebin exec wl-paste --primary -t text --watch clipman store diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 18b43e2..60ef6eb 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -23,22 +23,25 @@ backlight_full = "" backlight_partial1 = "" backlight_partial2 = "" backlight_partial3 = "" -bat = "" -bat_charging = " " -bat_discharging = "" -bat_empty = "" -bat_full = "" -cogs = "" -disk_space = "" +bat = "" +bat_charging = "" +bat_discharging = "" +bat_empty = "" +bat_quarter = "" +bat_half = "" +bat_three_quarters = "" +bat_full = "" +cogs = "龍" +disk_drive = "" headphones = "  " -memory_mem = "" +memory_mem = "" net_down = "DOWN" net_up = "UP" net_vpn = " " net_wired = "" net_wireless = " " thermometer = "  " -time = "" +time = "" volume_empty = "" volume_full = "" volume_half = "" @@ -64,9 +67,9 @@ command = '''echo " $(cat /sys/class/thermal/thermal_zone0/temp | head -c 2) [[block]] block = "disk_space" path = "/" -alias = " /" info_type = "available" unit = "GB" +format = "{icon} {available}" interval = 20 warning = 20.0 alert = 10.0 @@ -95,6 +98,7 @@ block = "battery" device = "BAT0" interval = 10 format = "{percentage} ({time})" +full_format = "{percentage} ({time}) " icons_format = " {icon} " [[block]] @@ -102,6 +106,7 @@ block = "battery" device = "BAT1" interval = 10 format = "{percentage} ({time})" +full_format = "{percentage} ({time}) " icons_format = " {icon} " [[block]] diff --git a/roles/desktop.nix b/roles/desktop.nix index 3bf6310..d88935e 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -5,6 +5,8 @@ let colors = config.colors; + schema = pkgs.gsettings-desktop-schemas; + datadir = "${schema}/share/gsettings-schemas/${schema.name}"; unstable = import { config.allowUnfree = true; }; in { @@ -17,12 +19,15 @@ in { i3status-rust kanshi mako + redshift-wlr slurp swayidle swaylock - xwayland wf-recorder + xwayland ]; + extraSessionCommands = '' + ''; }; xdg.portal = { @@ -151,7 +156,9 @@ key_bindings: arc-theme capitaine-cursors + dracula-theme elementary-xfce-icon-theme + glib gsettings-desktop-schemas gtk-engine-murrine gtk_engines @@ -195,8 +202,8 @@ key_bindings: text = '' #! ${pkgs.bash}/bin/bash - export GTK_ICON_THEME=Tango - export GTK_THEME=Blackbird + export GTK_ICON_THEME=Dracula + export GTK_THEME=Dracula export _JAVA_AWT_WM_NOREPARENTING=1 export MOZ_ENABLE_WAYLAND=1 export MOZ_USE_XINPUT2=1 @@ -205,6 +212,7 @@ key_bindings: export QT_WAYLAND_FORCE_DPI=96 export SDL_VIDEODRIVER=wayland export XDG_CURRENT_DESKTOP=sway + export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS export XDG_SESSION_TYPE=wayland ${pkgs.dbus}/bin/dbus-run-session ${pkgs.sway}/bin/sway From 2e10a00830aae3a91c6656485beb29f16aba1e2a Mon Sep 17 00:00:00 2001 From: foosinn Date: Sun, 13 Feb 2022 00:31:58 +0100 Subject: [PATCH 163/227] nixfmt --- configuration.nix | 35 +- hardware/desktop.nix | 34 +- hardware/vison14.nix | 55 +- hardware/x220-discovery.nix | 41 +- hardware/x360-raven.nix | 38 +- hardware/xps15-sphere.nix | 36 +- packages/certmanager.nix | 9 +- packages/cloudstation.nix | 61 +- packages/helm2.nix | 6 +- packages/nagstamon.nix | 2 +- packages/neovim.nix | 6 +- packages/notcoal/default.nix | 14 +- packages/oc311.nix | 9 +- packages/oc46.nix | 9 +- packages/openshift-install-4.5.nix | 9 +- packages/skaffold.nix | 9 +- packages/tuxedo-cc.nix | 46 +- packages/tuxedo-control-center/default.nix | 14 +- .../node-composition.nix | 8 +- packages/tuxedo-control-center/node-env.nix | 350 +- .../tuxedo-control-center/node-packages.nix | 4075 ++++++++++------- packages/tuxedo-keyboard.nix | 6 +- packages/vaultsink.nix | 9 +- roles/admin.nix | 9 +- roles/base.nix | 13 +- roles/desktop.nix | 127 +- roles/dev.nix | 19 +- roles/mail.nix | 2 +- roles/network.nix | 3 +- roles/private.nix | 44 +- roles/vpn.nix | 4 +- roles/work.nix | 5 +- 32 files changed, 2944 insertions(+), 2163 deletions(-) diff --git a/configuration.nix b/configuration.nix index b6d2b22..ca4a3ca 100644 --- a/configuration.nix +++ b/configuration.nix @@ -5,24 +5,23 @@ { config, pkgs, ... }: { - imports = - [ - ./modules/colors.nix + imports = [ + ./modules/colors.nix - # Include the results of the hardware scan. - ./hardware-configuration.nix + # Include the results of the hardware scan. + ./hardware-configuration.nix - ./roles/admin.nix - ./roles/base.nix - ./roles/desktop.nix - ./roles/dev.nix - ./roles/mail.nix - ./roles/network.nix - ./roles/nix.nix - ./roles/vpn.nix - ./roles/private.nix - ./roles/game.nix - ]; + ./roles/admin.nix + ./roles/base.nix + ./roles/desktop.nix + ./roles/dev.nix + ./roles/mail.nix + ./roles/network.nix + ./roles/nix.nix + ./roles/vpn.nix + ./roles/private.nix + ./roles/game.nix + ]; networking.useDHCP = false; @@ -32,9 +31,7 @@ services.openssh.enable = true; networking.firewall.enable = true; - nixpkgs.config.permittedInsecurePackages = [ - "openssl-1.0.2u" - ]; + nixpkgs.config.permittedInsecurePackages = [ "openssl-1.0.2u" ]; system.autoUpgrade.enable = true; system.stateVersion = "20.03"; # We can stay here diff --git a/hardware/desktop.nix b/hardware/desktop.nix index 4672412..2a90d89 100644 --- a/hardware/desktop.nix +++ b/hardware/desktop.nix @@ -3,32 +3,30 @@ # to /etc/nixos/configuration.nix instead. { config, lib, pkgs, modulesPath, ... }: -let - unstable = import { config.allowUnfree = true; }; +let unstable = import { config.allowUnfree = true; }; in { - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; + imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; + boot.initrd.availableKernelModules = + [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; boot.initrd.kernelModules = [ "amdgpu" ]; boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [ ]; - fileSystems."/" = - { device = "tank/root/nixos"; - fsType = "zfs"; - }; + fileSystems."/" = { + device = "tank/root/nixos"; + fsType = "zfs"; + }; - fileSystems."/home" = - { device = "tank/root/home"; - fsType = "zfs"; - }; + fileSystems."/home" = { + device = "tank/root/home"; + fsType = "zfs"; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/587C-36F9"; - fsType = "vfat"; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/587C-36F9"; + fsType = "vfat"; + }; swapDevices = [ ]; diff --git a/hardware/vison14.nix b/hardware/vison14.nix index cf4b406..08620c6 100644 --- a/hardware/vison14.nix +++ b/hardware/vison14.nix @@ -3,43 +3,40 @@ # to /etc/nixos/configuration.nix instead. { config, lib, pkgs, modulesPath, ... }: -let - tuxedo-keyboard = pkgs.callPackage (import ../packages/tuxedo-keyboard.nix) {}; - tuxedo-cc = pkgs.callPackage (import ../packages/tuxedo-control-center/default.nix) {}; +let + tuxedo-keyboard = + pkgs.callPackage (import ../packages/tuxedo-keyboard.nix) { }; + tuxedo-cc = + pkgs.callPackage (import ../packages/tuxedo-control-center/default.nix) { }; in { - imports = - [ (modulesPath + "/installer/scan/not-detected.nix") - ]; + imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; - boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ]; + boot.initrd.availableKernelModules = + [ "xhci_pci" "thunderbolt" "nvme" "usb_storage" "sd_mod" ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ - tuxedo-keyboard - ]; - environment.systemPackages = with pkgs; [ - tuxedo-cc - ]; + boot.extraModulePackages = [ tuxedo-keyboard ]; + environment.systemPackages = with pkgs; [ tuxedo-cc ]; - fileSystems."/" = - { device = "private/root/nixos"; - fsType = "zfs"; - }; + fileSystems."/" = { + device = "private/root/nixos"; + fsType = "zfs"; + }; - fileSystems."/home" = - { device = "private/root/home"; - fsType = "zfs"; - }; + fileSystems."/home" = { + device = "private/root/home"; + fsType = "zfs"; + }; - fileSystems."/tmp" = - { device = "private/root/tmp"; - fsType = "zfs"; - }; + fileSystems."/tmp" = { + device = "private/root/tmp"; + fsType = "zfs"; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/7E36-C774"; - fsType = "vfat"; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/7E36-C774"; + fsType = "vfat"; + }; swapDevices = [ ]; diff --git a/hardware/x220-discovery.nix b/hardware/x220-discovery.nix index 3e321ac..a871c3f 100644 --- a/hardware/x220-discovery.nix +++ b/hardware/x220-discovery.nix @@ -3,32 +3,37 @@ # to /etc/nixos/configuration.nix instead. { config, lib, pkgs, ... }: -let - unstable = import { config.allowUnfree = true; }; +let unstable = import { config.allowUnfree = true; }; in { - imports = - [ - ]; + imports = [ ]; - boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; + boot.initrd.availableKernelModules = [ + "xhci_pci" + "ehci_pci" + "ahci" + "usbhid" + "usb_storage" + "sd_mod" + "rtsx_pci_sdmmc" + ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-intel" ]; boot.extraModulePackages = [ ]; - fileSystems."/" = - { device = "cube/root/nixos"; - fsType = "zfs"; - }; + fileSystems."/" = { + device = "cube/root/nixos"; + fsType = "zfs"; + }; - fileSystems."/home" = - { device = "cube/home"; - fsType = "zfs"; - }; + fileSystems."/home" = { + device = "cube/home"; + fsType = "zfs"; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/2AD7-4F18"; - fsType = "vfat"; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/2AD7-4F18"; + fsType = "vfat"; + }; swapDevices = [ ]; diff --git a/hardware/x360-raven.nix b/hardware/x360-raven.nix index 19cca78..d3b6ff4 100644 --- a/hardware/x360-raven.nix +++ b/hardware/x360-raven.nix @@ -3,8 +3,7 @@ # to /etc/nixos/configuration.nix instead. { config, lib, pkgs, ... }: -let - unstable = import { config.allowUnfree = true; }; +let unstable = import { config.allowUnfree = true; }; in { imports = [ @@ -19,14 +18,8 @@ in { "w /sys/class/drm/card0/device/power_dpm_force_performance_level - - - - low" ]; - boot.initrd.availableKernelModules = [ - "nvme" - "xhci_pci" - "ahci" - "usb_storage" - "sd_mod" - "rtsx_pci_sdmmc" - ]; + boot.initrd.availableKernelModules = + [ "nvme" "xhci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; boot.initrd.kernelModules = [ ]; boot.extraModulePackages = [ ]; boot.kernelModules = [ "kvm-amd" ]; @@ -35,7 +28,6 @@ in { boot.kernelPackages = unstable.linuxPackages_latest; #boot.kernelPackages = unstable.linux_testing; - boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; @@ -45,20 +37,20 @@ in { networking.interfaces.wlo1.useDHCP = true; networking.resolvconf.useLocalResolver = true; - fileSystems."/" = - { device = "tank/root/nixos"; - fsType = "zfs"; - }; + fileSystems."/" = { + device = "tank/root/nixos"; + fsType = "zfs"; + }; - fileSystems."/home" = - { device = "tank/home"; - fsType = "zfs"; - }; + fileSystems."/home" = { + device = "tank/home"; + fsType = "zfs"; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/B048-FBC8"; - fsType = "vfat"; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/B048-FBC8"; + fsType = "vfat"; + }; swapDevices = [ ]; diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index 40a4213..8b5d78b 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -3,15 +3,13 @@ # to /etc/nixos/configuration.nix instead. { config, lib, pkgs, ... }: -let - unstable = import { config.allowUnfree = true; }; +let unstable = import { config.allowUnfree = true; }; in { - imports = - [ - ]; + imports = [ ]; boot.extraModulePackages = [ ]; - boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; + boot.initrd.availableKernelModules = + [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-intel" ]; boot.kernelParams = [ "intel_pstate=active" ]; @@ -26,26 +24,26 @@ in { enable = true; extraPackages = with pkgs; [ intel-media-driver # LIBVA_DRIVER_NAME=iHD - vaapiIntel # LIBVA_DRIVER_NAME=i965 + vaapiIntel # LIBVA_DRIVER_NAME=i965 vaapiVdpau libvdpau-va-gl ]; }; - fileSystems."/" = - { device = "tank/work/nixos"; - fsType = "zfs"; - }; + fileSystems."/" = { + device = "tank/work/nixos"; + fsType = "zfs"; + }; - fileSystems."/home" = - { device = "tank/work/home"; - fsType = "zfs"; - }; + fileSystems."/home" = { + device = "tank/work/home"; + fsType = "zfs"; + }; - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/DC7B-5E2D"; - fsType = "vfat"; - }; + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/DC7B-5E2D"; + fsType = "vfat"; + }; swapDevices = [ ]; diff --git a/packages/certmanager.nix b/packages/certmanager.nix index cc23228..aa82002 100644 --- a/packages/certmanager.nix +++ b/packages/certmanager.nix @@ -1,16 +1,15 @@ -with import {}; +with import { }; stdenv.mkDerivation rec { name = "cert-manager"; version = "v1.7.1"; src = fetchurl { - url = "https://github.com/cert-manager/cert-manager/releases/download/${version}/cmctl-linux-amd64.tar.gz"; + url = + "https://github.com/cert-manager/cert-manager/releases/download/${version}/cmctl-linux-amd64.tar.gz"; sha256 = "1z5n2rcfhrl1vm5vxqa1759m3prlv08mmg96n16p4gwkdxycznx4"; }; - nativeBuildInputs = [ - autoPatchelfHook - ]; + nativeBuildInputs = [ autoPatchelfHook ]; unpackPhase = '' tar xvpzf $src diff --git a/packages/cloudstation.nix b/packages/cloudstation.nix index d47ee2b..3196d59 100644 --- a/packages/cloudstation.nix +++ b/packages/cloudstation.nix @@ -1,22 +1,14 @@ -{ stdenv -, buildFHSUserEnv -, fetchurl -, lib -, pkgs -, writeScript -}: +{ stdenv, buildFHSUserEnv, fetchurl, lib, pkgs, writeScript }: let version = "4.3.3"; release = "4469"; cloudstation = stdenv.mkDerivation rec { name = "cloudstation-unpack"; - buildInputs = [ - pkgs.dpkg - pkgs.qt5.qtbase - ]; + buildInputs = [ pkgs.dpkg pkgs.qt5.qtbase ]; src = fetchurl { - url = "https://global.download.synology.com/download/Tools/CloudStationDrive/${version}-${release}/Ubuntu/Installer/x86_64/synology-cloud-station-drive-${release}.x86_64.deb"; + url = + "https://global.download.synology.com/download/Tools/CloudStationDrive/${version}-${release}/Ubuntu/Installer/x86_64/synology-cloud-station-drive-${release}.x86_64.deb"; sha256 = "0v84yb70knmmjzp7lyn6jgy5bnfsfd47wmqh29phybqg4zk3d47j"; }; unpackPhase = '' @@ -35,31 +27,32 @@ let dontWrapQtApps = true; }; - in buildFHSUserEnv { name = "cloudstation"; - targetPkgs = pkgs: with pkgs; with xorg; [ - cloudstation - curl - dbus_libs - fontconfig - freetype - glib - libICE - libSM - libX11 - libxcb - openssl - qt5.qtbase - qt5.qttools - qt5.qtwayland - qt5.qtx11extras - sqlite - stdenv.cc.cc.lib - xkeyboard_config - zlib - ]; + targetPkgs = pkgs: + with pkgs; + with xorg; [ + cloudstation + curl + dbus_libs + fontconfig + freetype + glib + libICE + libSM + libX11 + libxcb + openssl + qt5.qtbase + qt5.qttools + qt5.qtwayland + qt5.qtx11extras + sqlite + stdenv.cc.cc.lib + xkeyboard_config + zlib + ]; runScript = writeScript "cloudstation" '' #!/usr/bin/env bash diff --git a/packages/helm2.nix b/packages/helm2.nix index 93b18ae..ebd69e7 100644 --- a/packages/helm2.nix +++ b/packages/helm2.nix @@ -1,4 +1,4 @@ -with import {}; +with import { }; stdenv.mkDerivation rec { name = "helm2"; @@ -8,9 +8,7 @@ stdenv.mkDerivation rec { sha256 = "38614a665859c0f01c9c1d84fa9a5027364f936814d1e47839b05327e400bf55"; }; - nativeBuildInputs = [ - autoPatchelfHook - ]; + nativeBuildInputs = [ autoPatchelfHook ]; unpackPhase = '' tar xvpzf $src diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index 0554e39..85a5b08 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -5,7 +5,7 @@ python38Packages.buildPythonApplication rec { version = "3.7.0-alpha"; src = fetchFromGitHub { - owner = "HenriWahl"; + owner = "HenriWahl"; repo = "Nagstamon"; rev = "dba37dc034589dfb312c6e8a7cc768bcd1952db9"; sha256 = "1l095halb55qinaik51p3lxiln1s034dr28k7ra6xzrrv9l1x1xw"; diff --git a/packages/neovim.nix b/packages/neovim.nix index f1744dd..3cbe234 100644 --- a/packages/neovim.nix +++ b/packages/neovim.nix @@ -1,4 +1,4 @@ -with import {}; +with import { }; neovim.override { vimAlias = true; @@ -72,7 +72,7 @@ neovim.override { noremap ff :FZF noremap fn :NnnPicker %:p:h noremap fc :saveas %:p:h - + let g:which_key_map.y = { 'name': '+yank' } noremap yp :read !wl-paste noremap yy :read !wl-paste @@ -84,7 +84,7 @@ neovim.override { noremap bd :bd noremap bn :bn noremap bp :bp - + let g:which_key_map.m = { 'name': '+lang' } noremap md :call LanguageClient_textDocument_codeAction() noremap mc :call LanguageClient#textDocument_references() diff --git a/packages/notcoal/default.nix b/packages/notcoal/default.nix index cb99f47..7a17f70 100644 --- a/packages/notcoal/default.nix +++ b/packages/notcoal/default.nix @@ -5,20 +5,14 @@ rustPlatform.buildRustPackage rec { version = "0.3.0"; src = fetchTarball { - url = https://ghom.niij.org/eaon/notcoal/archive/v0.3.0.tar.gz; + url = "https://ghom.niij.org/eaon/notcoal/archive/v0.3.0.tar.gz"; sha256 = "19gaba6asid5vplcy9q0ama40dvwwxglc40ks5240lydrvgfrimq"; }; - cargoPatches = [ - ./Cargo.lock.patch - ]; + cargoPatches = [ ./Cargo.lock.patch ]; cargoSha256 = "0kgjxq2319l2gh1xc0f3ir1pa6z7p62z3fccswwxrz7gbn7nc07c"; - cargoBuildFlags = ["--features=standalone"]; - - buildInputs = [ - bash - notmuch - ]; + cargoBuildFlags = [ "--features=standalone" ]; + buildInputs = [ bash notmuch ]; meta = with lib; { description = "An email tagger for notmuch"; diff --git a/packages/oc311.nix b/packages/oc311.nix index 639d882..3644768 100644 --- a/packages/oc311.nix +++ b/packages/oc311.nix @@ -1,16 +1,15 @@ -with import {}; +with import { }; stdenv.mkDerivation { name = "oc311"; version = "3.11"; src = fetchurl { - url = "https://github.com/openshift/origin/releases/download/v3.11.0/openshift-origin-client-tools-v3.11.0-0cbc58b-linux-64bit.tar.gz"; + url = + "https://github.com/openshift/origin/releases/download/v3.11.0/openshift-origin-client-tools-v3.11.0-0cbc58b-linux-64bit.tar.gz"; sha256 = "4b0f07428ba854174c58d2e38287e5402964c9a9355f6c359d1242efd0990da3"; }; - nativeBuildInputs = [ - autoPatchelfHook - ]; + nativeBuildInputs = [ autoPatchelfHook ]; unpackPhase = '' tar xvpzf $src --strip-components=1 diff --git a/packages/oc46.nix b/packages/oc46.nix index 138232f..ce1d9a1 100644 --- a/packages/oc46.nix +++ b/packages/oc46.nix @@ -1,16 +1,15 @@ -with import {}; +with import { }; stdenv.mkDerivation rec { name = "oc46"; version = "4.6"; src = fetchurl { - url = "https://github.com/openshift/okd/releases/download/4.6.0-0.okd-2021-02-14-205305/openshift-client-linux-4.6.0-0.okd-2021-02-14-205305.tar.gz"; + url = + "https://github.com/openshift/okd/releases/download/4.6.0-0.okd-2021-02-14-205305/openshift-client-linux-4.6.0-0.okd-2021-02-14-205305.tar.gz"; sha256 = "741c456f1d5227eb40722b0dac328c78dceba5103fd306cf7fe57a9474eb3d35"; }; - nativeBuildInputs = [ - autoPatchelfHook - ]; + nativeBuildInputs = [ autoPatchelfHook ]; unpackPhase = '' tar xvpzf $src diff --git a/packages/openshift-install-4.5.nix b/packages/openshift-install-4.5.nix index 8822e91..78a66a3 100644 --- a/packages/openshift-install-4.5.nix +++ b/packages/openshift-install-4.5.nix @@ -1,17 +1,16 @@ -with import {}; +with import { }; stdenv.mkDerivation rec { name = "openshift-install-4.5"; version = "4.5.0-0"; release = "2020-10-03-012432"; src = fetchurl { - url = "https://github.com/openshift/okd/releases/download/${version}.okd-${release}/openshift-install-linux-${version}.okd-${release}.tar.gz"; + url = + "https://github.com/openshift/okd/releases/download/${version}.okd-${release}/openshift-install-linux-${version}.okd-${release}.tar.gz"; sha256 = "f497193e8918840a4fd3267839affdc91ec166c5fd2ae3fdc64f498b5fc56f55"; }; - nativeBuildInputs = [ - autoPatchelfHook - ]; + nativeBuildInputs = [ autoPatchelfHook ]; unpackPhase = '' tar xvpzf $src diff --git a/packages/skaffold.nix b/packages/skaffold.nix index 3527a42..d08f503 100644 --- a/packages/skaffold.nix +++ b/packages/skaffold.nix @@ -1,16 +1,15 @@ -with import {}; +with import { }; stdenv.mkDerivation rec { name = "skaffold"; version = "1.17.2"; src = fetchurl { - url = "https://github.com/GoogleContainerTools/skaffold/releases/download/v${version}/skaffold-linux-amd64"; + url = + "https://github.com/GoogleContainerTools/skaffold/releases/download/v${version}/skaffold-linux-amd64"; sha256 = "55dea8be16fa3abd81820a6a03f5d708beb5e152fe71e00f00744a4dd321c55a"; }; - nativeBuildInputs = [ - autoPatchelfHook - ]; + nativeBuildInputs = [ autoPatchelfHook ]; unpackPhase = '' cp $src skaffold diff --git a/packages/tuxedo-cc.nix b/packages/tuxedo-cc.nix index a0c88ad..b0821cf 100644 --- a/packages/tuxedo-cc.nix +++ b/packages/tuxedo-cc.nix @@ -1,36 +1,8 @@ -{ lib -, stdenv -, makeWrapper -, fetchurl -, rpmextract -, autoPatchelfHook -, alsa-lib -, cups -, gdk-pixbuf -, glib -, gtk3 -, libnotify -, libuuid -, libX11 -, libXScrnSaver -, libXcomposite -, libXcursor -, libXdamage -, libXext -, libXfixes -, libXi -, libXrandr -, libXrender -, libXtst -, libxcb -, libxshmfence -, mesa -, nspr -, nss -, pango -, systemd -, libappindicator-gtk3 -, libdbusmenu +{ lib, stdenv, makeWrapper, fetchurl, rpmextract, autoPatchelfHook, alsa-lib +, cups, gdk-pixbuf, glib, gtk3, libnotify, libuuid, libX11, libXScrnSaver +, libXcomposite, libXcursor, libXdamage, libXext, libXfixes, libXi, libXrandr +, libXrender, libXtst, libxcb, libxshmfence, mesa, nspr, nss, pango, systemd +, libappindicator-gtk3, libdbusmenu }: @@ -39,11 +11,11 @@ stdenv.mkDerivation rec { version = "1.1.0"; src = fetchurl { - url = "https://rpm.tuxedocomputers.com/opensuse/15.2/x86_64/tuxedo-control-center_${version}.rpm"; + url = + "https://rpm.tuxedocomputers.com/opensuse/15.2/x86_64/tuxedo-control-center_${version}.rpm"; sha256 = "0rqhfi1slnh0kkn1vnxqynxm6yb4w1mhk4vi92vj0lrxlwdxf80c"; }; - nativeBuildInputs = [ rpmextract makeWrapper @@ -112,9 +84,9 @@ stdenv.mkDerivation rec { runHook postInstall ''; - meta = with lib; { - description = "A tool to help you control performance, energy, fan and comfort settings on TUXEDO laptops."; + description = + "A tool to help you control performance, energy, fan and comfort settings on TUXEDO laptops."; homepage = "github.com/tuxedocomputers/tuxedo-control-center"; license = licenses.gpl3Only; maintainers = with maintainers; [ ]; diff --git a/packages/tuxedo-control-center/default.nix b/packages/tuxedo-control-center/default.nix index ea7c0e3..a8b858c 100644 --- a/packages/tuxedo-control-center/default.nix +++ b/packages/tuxedo-control-center/default.nix @@ -1,9 +1,8 @@ { pkgs, lib, stdenv, makeDesktopItem, desktop-file-utils, - python, +python, - makeWrapper, nodejs, electron_9, fetchFromGitHub -}: +makeWrapper, nodejs, electron_9, fetchFromGitHub }: let baseName = "tuxedo-control-center"; @@ -27,13 +26,13 @@ let # # This means we have to provide our own electron binaries when # wrapping this program. - ELECTRON_SKIP_BINARY_DOWNLOAD=1; + ELECTRON_SKIP_BINARY_DOWNLOAD = 1; # Angular prompts for analytics, which in turn fails the build. # # We can disable analytics using false or empty string # (See https://github.com/angular/angular-cli/blob/1a39c5202a6fe159f8d7db85a1c186176240e437/packages/angular/cli/models/analytics.ts#L506) - NG_CLI_ANALYTICS="false"; + NG_CLI_ANALYTICS = "false"; }; desktopItem = makeDesktopItem { @@ -44,9 +43,8 @@ let icon = "tuxedo-control-center"; categories = "System;"; }; -in -stdenv.mkDerivation rec { +in stdenv.mkDerivation rec { name = "${baseName}-${version}"; src = "${nodePackages}/lib/node_modules/tuxedo-control-center/"; @@ -70,7 +68,7 @@ stdenv.mkDerivation rec { substituteInPlace src/common/classes/TccPaths.ts \ --replace "/etc/tcc" "/var/lib/tcc" \ --replace "/opt/tuxedo-control-center/resources/dist/tuxedo-control-center/data/service/tccd" "$out/bin/tccd" - ''; + ''; buildPhase = '' set -x diff --git a/packages/tuxedo-control-center/node-composition.nix b/packages/tuxedo-control-center/node-composition.nix index 7cd99e8..d90588f 100644 --- a/packages/tuxedo-control-center/node-composition.nix +++ b/packages/tuxedo-control-center/node-composition.nix @@ -1,8 +1,7 @@ # This file has been generated by node2nix 1.9.0. Do not edit! -{pkgs ? import { - inherit system; - }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-14_x"}: +{ pkgs ? import { inherit system; }, system ? builtins.currentSystem +, nodejs ? pkgs."nodejs-14_x" }: let nodeEnv = import ./node-env.nix { @@ -10,8 +9,7 @@ let inherit pkgs nodejs; libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null; }; -in -import ./node-packages.nix { +in import ./node-packages.nix { inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit; inherit nodeEnv; } diff --git a/packages/tuxedo-control-center/node-env.nix b/packages/tuxedo-control-center/node-env.nix index 21089c4..7643dc7 100644 --- a/packages/tuxedo-control-center/node-env.nix +++ b/packages/tuxedo-control-center/node-env.nix @@ -1,6 +1,6 @@ # This file originates from node2nix -{lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile}: +{ lib, stdenv, nodejs, python2, pkgs, libtool, runCommand, writeTextFile }: let # Workaround to cope with utillinux in Nixpkgs 20.09 and util-linux in Nixpkgs master @@ -9,7 +9,7 @@ let python = if nodejs ? python then nodejs.python else python2; # Create a tar wrapper that filters all the 'Ignoring unknown extended header keyword' noise - tarWrapper = runCommand "tarWrapper" {} '' + tarWrapper = runCommand "tarWrapper" { } '' mkdir -p $out/bin cat > $out/bin/tar < $out/bin/shell < {}; +with import { }; stdenv.mkDerivation rec { name = "vaultsink"; version = "0.1.8"; src = fetchurl { - url = "https://github.com/cookiefactory/vault-sink/releases/download/v${version}/vault-sink-linux-amd64"; + url = + "https://github.com/cookiefactory/vault-sink/releases/download/v${version}/vault-sink-linux-amd64"; sha256 = "057799e7f907186993b591e3b2f743b69d7a9fed"; }; - nativeBuildInputs = [ - autoPatchelfHook - ]; + nativeBuildInputs = [ autoPatchelfHook ]; installPhase = '' install -m 755 -D vault-sink-linux-amd64 $out/bin/sink diff --git a/roles/admin.nix b/roles/admin.nix index a96771d..e93eb03 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -1,7 +1,6 @@ -{ pkgs, options, ...}: +{ pkgs, options, ... }: -let - unstable = import {}; +let unstable = import { }; in { environment.systemPackages = with pkgs; [ cryptsetup @@ -29,8 +28,8 @@ in { ]; virtualisation.docker = { - enable = true; - storageDriver = "zfs"; + enable = true; + storageDriver = "zfs"; }; virtualisation.libvirtd.enable = true; } diff --git a/roles/base.nix b/roles/base.nix index 1cb5552..d08c792 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -1,7 +1,6 @@ { config, lib, pkgs, ... }: -let - unstable = import {}; +let unstable = import { }; in { environment.systemPackages = with pkgs; [ acpi @@ -42,9 +41,7 @@ in { ]; environment = { - etc = { - "starship.toml".source = ../dotfiles/starship.toml; - }; + etc = { "starship.toml".source = ../dotfiles/starship.toml; }; variables = { BAT_THEME = "ansi"; @@ -141,9 +138,9 @@ in { services.lorri.enable = true; security.wrappers.gvfsd-nfs = { - source = "${pkgs.gnome.gvfs}/libexec/gvfsd-nfs"; - owner = "nobody"; - group = "nogroup"; + source = "${pkgs.gnome.gvfs}/libexec/gvfsd-nfs"; + owner = "nobody"; + group = "nogroup"; capabilities = "cap_net_bind_service+ep"; }; services.gvfs = { diff --git a/roles/desktop.nix b/roles/desktop.nix index d88935e..e44898a 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -26,21 +26,15 @@ in { wf-recorder xwayland ]; - extraSessionCommands = '' - ''; + extraSessionCommands = ""; }; xdg.portal = { enable = true; gtkUsePortal = true; - extraPortals = with pkgs; [ - xdg-desktop-portal-gtk - xdg-desktop-portal-wlr - ]; + extraPortals = with pkgs; [ xdg-desktop-portal-gtk xdg-desktop-portal-wlr ]; }; - boot.extraModulePackages = with config.boot.kernelPackages; [ - v4l2loopback - ]; + boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ]; colors = { background = "#282a36"; @@ -50,7 +44,7 @@ in { green = "#50fa7b"; yellow = "#f1fa8c"; cyan = "#8be9fd"; - magenta ="#bd93f9"; + magenta = "#bd93f9"; blue = "#61bfff"; white = "#ffffff"; }; @@ -60,37 +54,37 @@ in { "sway/config".source = ../dotfiles/sway/config; "sway/status.toml".source = ../dotfiles/sway/status.toml; "xdg/alacritty/alacritty.yml".text = '' -font: - normal: - family: CaskaydiaCove Nerd Font - size: 12 + font: + normal: + family: CaskaydiaCove Nerd Font + size: 12 -background_opacity: 0.98 -draw_bold_text_with_bright_colors: true + background_opacity: 0.98 + draw_bold_text_with_bright_colors: true -colors: - primary: - background: "${colors.background}" - foreground: "${colors.foreground}" + colors: + primary: + background: "${colors.background}" + foreground: "${colors.foreground}" - normal: - black: "${colors.black}" - red: "${colors.red}" - green: "${colors.green}" - yellow: "${colors.yellow}" - cyan: "${colors.cyan}" - magenta: "${colors.magenta}" - blue: "${colors.blue}" - white: "${colors.white}" + normal: + black: "${colors.black}" + red: "${colors.red}" + green: "${colors.green}" + yellow: "${colors.yellow}" + cyan: "${colors.cyan}" + magenta: "${colors.magenta}" + blue: "${colors.blue}" + white: "${colors.white}" -window: - dynamic_title: true + window: + dynamic_title: true -env: - TERM: xterm-256color + env: + TERM: xterm-256color -key_bindings: - - { key: Escape, mods: Control, action: ToggleViMode } + key_bindings: + - { key: Escape, mods: Control, action: ToggleViMode } ''; }; }; @@ -105,9 +99,7 @@ key_bindings: jack.enable = true; config.pipewire = { - "context.properties" = { - "default.clock.rate" = 48000; - }; + "context.properties" = { "default.clock.rate" = 48000; }; }; }; services.udev.packages = [ @@ -128,13 +120,11 @@ key_bindings: fira-code noto-fonts noto-fonts-emoji - (nerdfonts.override { - fonts = [ "CascadiaCode" "Meslo" ]; - }) + (nerdfonts.override { fonts = [ "CascadiaCode" "Meslo" ]; }) ]; nixpkgs.config.allowUnfree = true; - environment.pathsToLink = ["/libexec"]; + environment.pathsToLink = [ "/libexec" ]; environment.systemPackages = with pkgs; [ polkit_gnome @@ -194,31 +184,29 @@ key_bindings: xfce.thunar xfce.thunar-volman ydotool - ( - pkgs.writeTextFile { - name = "startsway"; - destination = "/bin/startsway"; - executable = true; - text = '' - #! ${pkgs.bash}/bin/bash + (pkgs.writeTextFile { + name = "startsway"; + destination = "/bin/startsway"; + executable = true; + text = '' + #! ${pkgs.bash}/bin/bash - export GTK_ICON_THEME=Dracula - export GTK_THEME=Dracula - export _JAVA_AWT_WM_NOREPARENTING=1 - export MOZ_ENABLE_WAYLAND=1 - export MOZ_USE_XINPUT2=1 - export QT_AUTO_SCREEN_SCALE_FACTOR=0 - export QT_QPA_PLATFORM=wayland-egl - export QT_WAYLAND_FORCE_DPI=96 - export SDL_VIDEODRIVER=wayland - export XDG_CURRENT_DESKTOP=sway - export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS - export XDG_SESSION_TYPE=wayland + export GTK_ICON_THEME=Dracula + export GTK_THEME=Dracula + export _JAVA_AWT_WM_NOREPARENTING=1 + export MOZ_ENABLE_WAYLAND=1 + export MOZ_USE_XINPUT2=1 + export QT_AUTO_SCREEN_SCALE_FACTOR=0 + export QT_QPA_PLATFORM=wayland-egl + export QT_WAYLAND_FORCE_DPI=96 + export SDL_VIDEODRIVER=wayland + export XDG_CURRENT_DESKTOP=sway + export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS + export XDG_SESSION_TYPE=wayland - ${pkgs.dbus}/bin/dbus-run-session ${pkgs.sway}/bin/sway - ''; - } - ) + ${pkgs.dbus}/bin/dbus-run-session ${pkgs.sway}/bin/sway + ''; + }) ]; hardware.bluetooth.enable = true; @@ -233,14 +221,9 @@ key_bindings: }; services.printing.enable = true; - services.printing.drivers = [ - pkgs.gutenprint - ]; + services.printing.drivers = [ pkgs.gutenprint ]; services.avahi.enable = true; services.avahi.nssmdns = true; - - hardware.opengl = { - enable = true; - }; + hardware.opengl = { enable = true; }; } diff --git a/roles/dev.nix b/roles/dev.nix index 857ffec..13a2c69 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -1,7 +1,6 @@ { config, lib, pkgs, ... }: -let - unstable = import {}; +let unstable = import { }; in { environment.systemPackages = with pkgs; [ @@ -15,12 +14,8 @@ in { #unstable.esphome nodePackages.pyright - (python39.withPackages(python-packages: with python-packages; [ - black - pyyaml - requests - black - ])) + (python39.withPackages + (python-packages: with python-packages; [ black pyyaml requests black ])) mariadb-client musl @@ -35,6 +30,12 @@ in { tig unstable.bazel - openssl pkg-config nasm cmake zlib gcc binutils-unwrapped + openssl + pkg-config + nasm + cmake + zlib + gcc + binutils-unwrapped ]; } diff --git a/roles/mail.nix b/roles/mail.nix index 0f81277..ba6373f 100644 --- a/roles/mail.nix +++ b/roles/mail.nix @@ -2,7 +2,7 @@ let unstable = import { config.allowUnfree = true; }; - notcoal = pkgs.callPackage (import ../packages/notcoal) {}; + notcoal = pkgs.callPackage (import ../packages/notcoal) { }; in { environment.systemPackages = with pkgs; [ unstable.astroid diff --git a/roles/network.nix b/roles/network.nix index c56b4bf..4dce0d4 100644 --- a/roles/network.nix +++ b/roles/network.nix @@ -1,7 +1,6 @@ { config, lib, pkgs, ... }: -let - unstable = import { config.allowUnfree = true; }; +let unstable = import { config.allowUnfree = true; }; in { networking.networkmanager.enable = true; diff --git a/roles/private.nix b/roles/private.nix index 1d8f031..e7916dc 100644 --- a/roles/private.nix +++ b/roles/private.nix @@ -1,30 +1,30 @@ { config, lib, pkgs, ... }: -let - unstable = import {}; +let unstable = import { }; in { - environment.systemPackages = with pkgs; [ - # embedded - #arduino - #avrdude - #gcc-arm-embedded - #openocd - #pkgsCross.avr.avrlibc - #pkgsCross.avr.buildPackages.binutils - #pkgsCross.avr.buildPackages.gcc8 - #pkgsCross.avr.libcCross + environment.systemPackages = with pkgs; + [ + # embedded + #arduino + #avrdude + #gcc-arm-embedded + #openocd + #pkgsCross.avr.avrlibc + #pkgsCross.avr.buildPackages.binutils + #pkgsCross.avr.buildPackages.gcc8 + #pkgsCross.avr.libcCross - #cura - #candle - openscad - #kicad - #blender - #python3Packages.numpy - #python3Packages.shapely + #cura + #candle + openscad + #kicad + #blender + #python3Packages.numpy + #python3Packages.shapely - #steam - #unstable.obs-studio - ]; + #steam + #unstable.obs-studio + ]; # stm32 debugger users.extraGroups.plugdev = { }; diff --git a/roles/vpn.nix b/roles/vpn.nix index d262069..79bcd23 100644 --- a/roles/vpn.nix +++ b/roles/vpn.nix @@ -2,7 +2,5 @@ { networking.wireguard.enable = true; - environment.systemPackages = with pkgs; [ - wireguard - ]; + environment.systemPackages = with pkgs; [ wireguard ]; } diff --git a/roles/work.nix b/roles/work.nix index 917c586..0de8954 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -2,8 +2,9 @@ let unstable = import { config.allowUnfree = true; }; - cloudstation = pkgs.callPackage (import ../packages/cloudstation.nix) {}; - nagstamon = pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) {}; + cloudstation = pkgs.callPackage (import ../packages/cloudstation.nix) { }; + nagstamon = + pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) { }; in { security.pki.certificateFiles = [ From b30e69334a4429f48c586f1eeb3fad2e606d478a Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 14 Feb 2022 08:57:43 +0100 Subject: [PATCH 164/227] fix alacritty opacity --- roles/desktop.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index e44898a..b7fd76e 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -59,7 +59,6 @@ in { family: CaskaydiaCove Nerd Font size: 12 - background_opacity: 0.98 draw_bold_text_with_bright_colors: true colors: @@ -79,6 +78,7 @@ in { window: dynamic_title: true + opacity: 0.98 env: TERM: xterm-256color From 0b615ebd3422bd2c42094f54d74bb4b1f9918b8f Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 26 Feb 2022 02:13:40 +0100 Subject: [PATCH 165/227] fix notcoal package --- packages/notcoal/Cargo.lock.patch | 435 +++++++++++++----------------- packages/notcoal/default.nix | 13 +- roles/mail.nix | 5 +- 3 files changed, 192 insertions(+), 261 deletions(-) diff --git a/packages/notcoal/Cargo.lock.patch b/packages/notcoal/Cargo.lock.patch index 63de9ff..cb7b42a 100644 --- a/packages/notcoal/Cargo.lock.patch +++ b/packages/notcoal/Cargo.lock.patch @@ -1,31 +1,27 @@ diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 -index 0000000..1bcb060 +index 0000000..a7de0d9 --- /dev/null +++ b/Cargo.lock -@@ -0,0 +1,616 @@ +@@ -0,0 +1,543 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. -+[[package]] -+name = "ahash" -+version = "0.3.8" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "e8fd72866655d1904d6b0997d0b07ba561047d070fbe29de039031c641b61217" ++version = 3 + +[[package]] +name = "aho-corasick" -+version = "0.7.13" ++version = "0.7.18" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "043164d8ba5c4c3035fec9bbee8647c0261d788f3474306f93bb65901cae0e86" ++checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" +dependencies = [ + "memchr", +] + +[[package]] +name = "ansi_term" -+version = "0.11.0" ++version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" ++checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" +dependencies = [ + "winapi", +] @@ -38,9 +34,9 @@ index 0000000..1bcb060 + +[[package]] +name = "arrayvec" -+version = "0.5.1" ++version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8" ++checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" + +[[package]] +name = "atty" @@ -54,43 +50,32 @@ index 0000000..1bcb060 +] + +[[package]] -+name = "autocfg" -+version = "1.0.0" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d" -+ -+[[package]] +name = "base64" -+version = "0.10.1" ++version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" ++checksum = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" +dependencies = [ + "byteorder", ++ "safemem", +] + +[[package]] +name = "base64" -+version = "0.11.0" ++version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7" -+ -+[[package]] -+name = "base64" -+version = "0.12.3" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" ++checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" + +[[package]] +name = "bitflags" -+version = "1.2.1" ++version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" ++checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "blake2b_simd" -+version = "0.5.10" ++version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "d8fb2d74254a3a0b5cac33ac9f8ed0e44aa50378d9dbb2e5d83bd21ed1dc2c8a" ++checksum = "afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587" +dependencies = [ + "arrayref", + "arrayvec", @@ -99,31 +84,21 @@ index 0000000..1bcb060 + +[[package]] +name = "byteorder" -+version = "1.3.4" ++version = "1.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "08c48aae112d48ed9f069b33538ea9e3e90aa263cfa3d1c24309612b1f7472de" ++checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" + +[[package]] +name = "cfg-if" -+version = "0.1.10" ++version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" -+ -+[[package]] -+name = "charset" -+version = "0.1.2" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "4f426e64df1c3de26cbf44593c6ffff5dbfd43bbf9de0d075058558126b3fc73" -+dependencies = [ -+ "base64 0.10.1", -+ "encoding_rs", -+] ++checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "clap" -+version = "2.33.1" ++version = "2.34.0" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "bdfa80d47f954d53a35a64987ca1422f495b8d6483c0fe9f7117b36c2a792129" ++checksum = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c" +dependencies = [ + "ansi_term", + "atty", @@ -142,30 +117,19 @@ index 0000000..1bcb060 + +[[package]] +name = "crossbeam-utils" -+version = "0.7.2" ++version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" ++checksum = "b5e5bed1f1c269533fa816a0a5492b3545209a205ca1a54842be180eb63a16a6" +dependencies = [ -+ "autocfg", + "cfg-if", + "lazy_static", +] + +[[package]] +name = "dirs" -+version = "2.0.2" ++version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3" -+dependencies = [ -+ "cfg-if", -+ "dirs-sys", -+] -+ -+[[package]] -+name = "dirs-sys" -+version = "0.3.5" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "8e93d7f5705de3e49895a2b5e0b8855a1c27f080192ae9c32a6432d50741a57a" ++checksum = "3fd78930633bd1c6e35c4b42b1df7b0cbc6bc191146e512bb3bedf243fcc3901" +dependencies = [ + "libc", + "redox_users", @@ -173,28 +137,74 @@ index 0000000..1bcb060 +] + +[[package]] -+name = "dlv-list" -+version = "0.2.2" ++name = "encoding" ++version = "0.2.33" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "1b391911b9a786312a10cb9d2b3d0735adfd5a8113eb3648de26a75e91b0826c" ++checksum = "6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec" +dependencies = [ -+ "rand", ++ "encoding-index-japanese", ++ "encoding-index-korean", ++ "encoding-index-simpchinese", ++ "encoding-index-singlebyte", ++ "encoding-index-tradchinese", +] + +[[package]] -+name = "encoding_rs" -+version = "0.8.23" ++name = "encoding-index-japanese" ++version = "1.20141219.5" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "e8ac63f94732332f44fe654443c46f6375d1939684c17b0afb6cb56b0456e171" ++checksum = "04e8b2ff42e9a05335dbf8b5c6f7567e5591d0d916ccef4e0b1710d32a0d0c91" +dependencies = [ -+ "cfg-if", ++ "encoding_index_tests", +] + +[[package]] ++name = "encoding-index-korean" ++version = "1.20141219.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "4dc33fb8e6bcba213fe2f14275f0963fd16f0a02c878e3095ecfdf5bee529d81" ++dependencies = [ ++ "encoding_index_tests", ++] ++ ++[[package]] ++name = "encoding-index-simpchinese" ++version = "1.20141219.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "d87a7194909b9118fc707194baa434a4e3b0fb6a5a757c73c3adb07aa25031f7" ++dependencies = [ ++ "encoding_index_tests", ++] ++ ++[[package]] ++name = "encoding-index-singlebyte" ++version = "1.20141219.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a" ++dependencies = [ ++ "encoding_index_tests", ++] ++ ++[[package]] ++name = "encoding-index-tradchinese" ++version = "1.20141219.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18" ++dependencies = [ ++ "encoding_index_tests", ++] ++ ++[[package]] ++name = "encoding_index_tests" ++version = "0.1.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569" ++ ++[[package]] +name = "getrandom" -+version = "0.1.14" ++version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "7abc8dd8451921606d809ba32e95b6111925cd2906060d2dcc29c070220503eb" ++checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" +dependencies = [ + "cfg-if", + "libc", @@ -202,38 +212,28 @@ index 0000000..1bcb060 +] + +[[package]] -+name = "hashbrown" -+version = "0.7.2" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "96282e96bfcd3da0d3aa9938bedf1e50df3269b6db08b4876d2da0bb1a0841cf" -+dependencies = [ -+ "ahash", -+ "autocfg", -+] -+ -+[[package]] +name = "heck" -+version = "0.3.1" ++version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "20564e78d53d2bb135c343b3f47714a56af2061f1c928fdb541dc7b9fdd94205" ++checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "hermit-abi" -+version = "0.1.15" ++version = "0.1.19" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9" ++checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" +dependencies = [ + "libc", +] + +[[package]] +name = "itoa" -+version = "0.4.6" ++version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6" ++checksum = "1aab8fc367588b89dcee83ab0fd66b72b50b72fa1904d7095045ace2b0c81c35" + +[[package]] +name = "lazy_static" @@ -243,30 +243,30 @@ index 0000000..1bcb060 + +[[package]] +name = "libc" -+version = "0.2.73" ++version = "0.2.119" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "bd7d4bd64732af4bf3a67f367c27df8520ad7e230c5817b8ff485864d80242b9" ++checksum = "1bf2e165bb3457c8e098ea76f3e3bc9db55f87aa90d52d0e6be741470916aaa4" + +[[package]] +name = "mailparse" -+version = "0.12.2" ++version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "336d59e50513349423fa89bdadef5b5c49972a6ce0b66d3b2c7c8b7ab3969faf" ++checksum = "99c0af7aaefb167bb908763399ea2904dab08ca4fd8c2a3277516d4e488b5fe3" +dependencies = [ -+ "base64 0.12.3", -+ "charset", ++ "base64 0.9.3", ++ "encoding", + "quoted_printable", +] + +[[package]] +name = "memchr" -+version = "2.3.3" ++version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400" ++checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" + +[[package]] +name = "notcoal" -+version = "0.4.0" ++version = "0.3.0" +dependencies = [ + "dirs", + "mailparse", @@ -280,118 +280,55 @@ index 0000000..1bcb060 + +[[package]] +name = "notmuch" -+version = "0.6.0" ++version = "0.5.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "831623c1b68968505126423f34dc887aa610daf543efc05df948c673e4e022e9" +dependencies = [ + "libc", + "supercow", +] + +[[package]] -+name = "ordered-multimap" -+version = "0.2.4" ++name = "proc-macro2" ++version = "0.4.30" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "e88f947c6799d5eff50e6cf8a2365c17ac4aa8f8f43aceeedc29b616d872a358" ++checksum = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759" +dependencies = [ -+ "dlv-list", -+ "hashbrown", -+] -+ -+[[package]] -+name = "ppv-lite86" -+version = "0.2.8" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "237a5ed80e274dbc66f86bd59c1e25edc039660be53194b5fe0a482e0f2612ea" -+ -+[[package]] -+name = "proc-macro-error" -+version = "1.0.3" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "fc175e9777c3116627248584e8f8b3e2987405cabe1c0adf7d1dd28f09dc7880" -+dependencies = [ -+ "proc-macro-error-attr", -+ "proc-macro2", -+ "quote", -+ "syn", -+ "version_check", -+] -+ -+[[package]] -+name = "proc-macro-error-attr" -+version = "1.0.3" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "3cc9795ca17eb581285ec44936da7fc2335a3f34f2ddd13118b6f4d515435c50" -+dependencies = [ -+ "proc-macro2", -+ "quote", -+ "syn", -+ "syn-mid", -+ "version_check", ++ "unicode-xid 0.1.0", +] + +[[package]] +name = "proc-macro2" -+version = "1.0.19" ++version = "1.0.36" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "04f5f085b5d71e2188cb8271e5da0161ad52c3f227a661a3c135fdf28e258b12" ++checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029" +dependencies = [ -+ "unicode-xid", ++ "unicode-xid 0.2.2", +] + +[[package]] +name = "quote" -+version = "1.0.7" ++version = "0.6.13" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37" ++checksum = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1" +dependencies = [ -+ "proc-macro2", ++ "proc-macro2 0.4.30", ++] ++ ++[[package]] ++name = "quote" ++version = "1.0.15" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "864d3e96a899863136fc6e99f3d7cae289dafe43bf2c5ac19b70df7210c0a145" ++dependencies = [ ++ "proc-macro2 1.0.36", +] + +[[package]] +name = "quoted_printable" -+version = "0.4.2" ++version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "47b080c5db639b292ac79cbd34be0cfc5d36694768d8341109634d90b86930e2" -+ -+[[package]] -+name = "rand" -+version = "0.7.3" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" -+dependencies = [ -+ "getrandom", -+ "libc", -+ "rand_chacha", -+ "rand_core", -+ "rand_hc", -+] -+ -+[[package]] -+name = "rand_chacha" -+version = "0.2.2" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" -+dependencies = [ -+ "ppv-lite86", -+ "rand_core", -+] -+ -+[[package]] -+name = "rand_core" -+version = "0.5.1" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" -+dependencies = [ -+ "getrandom", -+] -+ -+[[package]] -+name = "rand_hc" -+version = "0.2.0" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" -+dependencies = [ -+ "rand_core", -+] ++checksum = "3fee2dce59f7a43418e3382c766554c614e06a552d53a8f07ef499ea4b332c0f" + +[[package]] +name = "redox_syscall" @@ -401,9 +338,9 @@ index 0000000..1bcb060 + +[[package]] +name = "redox_users" -+version = "0.3.4" ++version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "09b23093265f8d200fa7b4c2c76297f47e681c655f6f1285a8780d6a022f7431" ++checksum = "de0737333e7a9502c789a36d7c7fa6092a49895d4faa31ca5df163857ded2e9d" +dependencies = [ + "getrandom", + "redox_syscall", @@ -412,29 +349,28 @@ index 0000000..1bcb060 + +[[package]] +name = "regex" -+version = "1.3.9" ++version = "1.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "9c3780fcf44b193bc4d09f36d2a3c87b251da4a046c87795a0d35f4f927ad8e6" ++checksum = "d07a8629359eb56f1e2fb1652bb04212c072a87ba68546a04065d525673ac461" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", -+ "thread_local", +] + +[[package]] +name = "regex-syntax" -+version = "0.6.18" ++version = "0.6.25" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "26412eb97c6b088a6997e05f69403a802a92d520de2f8e63c2b65f9e0f47c4e8" ++checksum = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b" + +[[package]] +name = "rust-argon2" -+version = "0.7.0" ++version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "2bc8af4bda8e1ff4932523b94d3dd20ee30a87232323eda55903ffd71d2fb017" ++checksum = "4b18820d944b33caa75a71378964ac46f58517c92b6ae5f762636247c09e78fb" +dependencies = [ -+ "base64 0.11.0", ++ "base64 0.13.0", + "blake2b_simd", + "constant_time_eq", + "crossbeam-utils", @@ -442,45 +378,47 @@ index 0000000..1bcb060 + +[[package]] +name = "rust-ini" -+version = "0.15.3" ++version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "7a3679dd538c876a7b606f3bb951c8a20fc281a0ff7795f59f7cb490e3f979e1" -+dependencies = [ -+ "cfg-if", -+ "ordered-multimap", -+] ++checksum = "3e52c148ef37f8c375d49d5a73aa70713125b7f19095948a923f80afdeb22ec2" + +[[package]] +name = "ryu" -+version = "1.0.5" ++version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" ++checksum = "73b4b750c782965c211b42f022f59af1fbceabdd026623714f104152f1ec149f" ++ ++[[package]] ++name = "safemem" ++version = "0.3.3" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072" + +[[package]] +name = "serde" -+version = "1.0.114" ++version = "1.0.136" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "5317f7588f0a5078ee60ef675ef96735a1442132dc645eb1d12c018620ed8cd3" ++checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" -+version = "1.0.114" ++version = "1.0.136" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "2a0be94b04690fbaed37cddffc5c134bf537c8e3329d53e982fe04c374978f8e" ++checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9" +dependencies = [ -+ "proc-macro2", -+ "quote", -+ "syn", ++ "proc-macro2 1.0.36", ++ "quote 1.0.15", ++ "syn 1.0.86", +] + +[[package]] +name = "serde_json" -+version = "1.0.57" ++version = "1.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "164eacbdb13512ec2745fb09d51fd5b22b0d65ed294a1dcf7285a360c80a675c" ++checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95" +dependencies = [ + "itoa", + "ryu", @@ -495,26 +433,24 @@ index 0000000..1bcb060 + +[[package]] +name = "structopt" -+version = "0.3.15" ++version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "de2f5e239ee807089b62adce73e48c625e0ed80df02c7ab3f068f5db5281065c" ++checksum = "16c2cdbf9cc375f15d1b4141bc48aeef444806655cd0e904207edc8d68d86ed7" +dependencies = [ + "clap", -+ "lazy_static", + "structopt-derive", +] + +[[package]] +name = "structopt-derive" -+version = "0.4.8" ++version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "510413f9de616762a4fbeab62509bf15c729603b72d7cd71280fbca431b1c118" ++checksum = "53010261a84b37689f9ed7d395165029f9cc7abb9f56bbfe86bee2597ed25107" +dependencies = [ + "heck", -+ "proc-macro-error", -+ "proc-macro2", -+ "quote", -+ "syn", ++ "proc-macro2 0.4.30", ++ "quote 0.6.13", ++ "syn 0.15.44", +] + +[[package]] @@ -525,24 +461,24 @@ index 0000000..1bcb060 + +[[package]] +name = "syn" -+version = "1.0.36" ++version = "0.15.44" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "4cdb98bcb1f9d81d07b536179c269ea15999b5d14ea958196413869445bb5250" ++checksum = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5" +dependencies = [ -+ "proc-macro2", -+ "quote", -+ "unicode-xid", ++ "proc-macro2 0.4.30", ++ "quote 0.6.13", ++ "unicode-xid 0.1.0", +] + +[[package]] -+name = "syn-mid" -+version = "0.5.0" ++name = "syn" ++version = "1.0.86" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "7be3539f6c128a931cf19dcee741c1af532c7fd387baa739c03dd2e96479338a" ++checksum = "8a65b3f4ffa0092e9887669db0eae07941f023991ab58ea44da8fe8e2d511c6b" +dependencies = [ -+ "proc-macro2", -+ "quote", -+ "syn", ++ "proc-macro2 1.0.36", ++ "quote 1.0.15", ++ "unicode-xid 0.2.2", +] + +[[package]] @@ -555,31 +491,28 @@ index 0000000..1bcb060 +] + +[[package]] -+name = "thread_local" -+version = "1.0.1" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14" -+dependencies = [ -+ "lazy_static", -+] -+ -+[[package]] +name = "unicode-segmentation" -+version = "1.6.0" ++version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "e83e153d1053cbb5a118eeff7fd5be06ed99153f00dbcd8ae310c5fb2b22edc0" ++checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99" + +[[package]] +name = "unicode-width" -+version = "0.1.8" ++version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" ++checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" + +[[package]] +name = "unicode-xid" -+version = "0.2.1" ++version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" ++checksum = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" ++ ++[[package]] ++name = "unicode-xid" ++version = "0.2.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++checksum = "8ccb82d61f80a663efe1f787a51b16b5a51e3314d6ac365b08639f52387b33f3" + +[[package]] +name = "vec_map" @@ -588,12 +521,6 @@ index 0000000..1bcb060 +checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" + +[[package]] -+name = "version_check" -+version = "0.9.2" -+source = "registry+https://github.com/rust-lang/crates.io-index" -+checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed" -+ -+[[package]] +name = "wasi" +version = "0.9.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" diff --git a/packages/notcoal/default.nix b/packages/notcoal/default.nix index 7a17f70..ec2b27d 100644 --- a/packages/notcoal/default.nix +++ b/packages/notcoal/default.nix @@ -1,18 +1,21 @@ -{ lib, stdenv, rustPlatform, notmuch, bash }: +{ lib, stdenv, rustPlatform, fetchFromGitHub, pkgs }: rustPlatform.buildRustPackage rec { pname = "notcoal"; version = "0.3.0"; - src = fetchTarball { - url = "https://ghom.niij.org/eaon/notcoal/archive/v0.3.0.tar.gz"; + src = fetchFromGitHub { + owner = "eaon"; + repo = pname; + rev = "v${version}"; sha256 = "19gaba6asid5vplcy9q0ama40dvwwxglc40ks5240lydrvgfrimq"; }; + cargoPatches = [ ./Cargo.lock.patch ]; - cargoSha256 = "0kgjxq2319l2gh1xc0f3ir1pa6z7p62z3fccswwxrz7gbn7nc07c"; + cargoSha256 = "09bmlpl6rx2pk5w6vv2i1lsl6vr1733zy9jjvi5kkk1mqwinq8ai"; cargoBuildFlags = [ "--features=standalone" ]; - buildInputs = [ bash notmuch ]; + buildInputs = with pkgs; [ bash notmuch ]; meta = with lib; { description = "An email tagger for notmuch"; diff --git a/roles/mail.nix b/roles/mail.nix index ba6373f..f2cd7e0 100644 --- a/roles/mail.nix +++ b/roles/mail.nix @@ -2,15 +2,16 @@ let unstable = import { config.allowUnfree = true; }; - notcoal = pkgs.callPackage (import ../packages/notcoal) { }; + notcoal = pkgs.callPackage ../packages/notcoal { }; in { environment.systemPackages = with pkgs; [ - unstable.astroid isync khal msmtp notmuch + notcoal thunderbird + unstable.astroid vdirsyncer ]; } From 0856dd61189c419df2f7cf4195cdae2115063f07 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 26 Feb 2022 02:14:17 +0100 Subject: [PATCH 166/227] fix vim fzf --- packages/neovim.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/neovim.nix b/packages/neovim.nix index 3cbe234..933ab1c 100644 --- a/packages/neovim.nix +++ b/packages/neovim.nix @@ -69,7 +69,7 @@ neovim.override { let g:which_key_map = {} let g:which_key_map.f = { 'name': '+files' } - noremap ff :FZF + noremap ff :Files noremap fn :NnnPicker %:p:h noremap fc :saveas %:p:h @@ -110,7 +110,8 @@ neovim.override { airline easymotion editorconfig-vim - fzf + fzfWrapper + fzf-vim fzf-lsp-nvim LanguageClient-neovim ncm2 From e19e87289f55862ad4c5b5b3a77c1f6dc085024e Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 26 Feb 2022 02:15:19 +0100 Subject: [PATCH 167/227] fix qt5 styles --- roles/desktop.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index b7fd76e..c4a159e 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -8,7 +8,8 @@ let schema = pkgs.gsettings-desktop-schemas; datadir = "${schema}/share/gsettings-schemas/${schema.name}"; unstable = import { config.allowUnfree = true; }; -in { +in +{ programs.sway = { enable = true; @@ -89,6 +90,8 @@ in { }; }; + programs.qt5ct.enable = true; + hardware.pulseaudio.enable = false; security.rtkit.enable = true; security.polkit.enable = true; @@ -153,6 +156,7 @@ in { gtk-engine-murrine gtk_engines hicolor-icon-theme + libsForQt5.qtstyleplugins lxappearance numix-icon-theme @@ -161,7 +165,6 @@ in { libqrencode libreoffice libsecret - lxappearance mpv mumble neofetch From 490ac47d460abaeeee8ebf81a6caa197b633b149 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 26 Feb 2022 02:15:47 +0100 Subject: [PATCH 168/227] cleanup private config --- roles/private.nix | 31 ++++++------------------------- 1 file changed, 6 insertions(+), 25 deletions(-) diff --git a/roles/private.nix b/roles/private.nix index e7916dc..dd28440 100644 --- a/roles/private.nix +++ b/roles/private.nix @@ -1,29 +1,14 @@ { config, lib, pkgs, ... }: -let unstable = import { }; -in { +let + unstable = import { }; + openscad-ls = pkgs.callPackage ../packages/openscad-language-server.nix { }; +in +{ environment.systemPackages = with pkgs; [ - # embedded - #arduino - #avrdude - #gcc-arm-embedded - #openocd - #pkgsCross.avr.avrlibc - #pkgsCross.avr.buildPackages.binutils - #pkgsCross.avr.buildPackages.gcc8 - #pkgsCross.avr.libcCross - - #cura - #candle openscad - #kicad - #blender - #python3Packages.numpy - #python3Packages.shapely - - #steam - #unstable.obs-studio + openscad-ls ]; # stm32 debugger @@ -31,10 +16,6 @@ in { users.extraUsers.stefan.extraGroups = [ "plugdev" "dialout" ]; services.udev.packages = [ pkgs.openocd ]; - # steam dependencies - #hardware.opengl.driSupport32Bit = true; - #hardware.opengl.driSupport = true; - fileSystems."/mnt/nfs" = { device = "10.1.20.29:/srv/nfs"; fsType = "nfs"; From eb792b55e58dc77b2f3b0f538617ee3c13dd60ce Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 26 Feb 2022 02:15:47 +0100 Subject: [PATCH 169/227] cleanup private config --- packages/openscad-language-server.nix | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 packages/openscad-language-server.nix diff --git a/packages/openscad-language-server.nix b/packages/openscad-language-server.nix new file mode 100644 index 0000000..9709618 --- /dev/null +++ b/packages/openscad-language-server.nix @@ -0,0 +1,23 @@ +{ pkgs, lib, rustPlatform }: + +let + pname = "openscad-language-server"; + version = "0.1.0"; + src = pkgs.fetchFromGitHub { + owner = "dzhu"; + repo = pname; + rev = version; + sha256 = "00msajwwy531ji93xk83lbnbp19asyk1b8ai0hi2awb63vpdr4xg"; + }; +in +rustPlatform.buildRustPackage { + inherit pname; + inherit version; + inherit src; + + cargoSha256 = "0w245d5n0v8b02y0rc1lqx1svi9dnif4gvsas46h9g68206yijcf"; + + meta = with lib; { + description = "openscad language server"; + }; +} From b8273ae5509c10c65d34853987d7d0b05b6cf39f Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 17 Feb 2022 17:35:32 +0100 Subject: [PATCH 170/227] document sections --- configuration.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/configuration.nix b/configuration.nix index ca4a3ca..e2e0a3a 100644 --- a/configuration.nix +++ b/configuration.nix @@ -6,11 +6,13 @@ { imports = [ + # custom modules ./modules/colors.nix # Include the results of the hardware scan. ./hardware-configuration.nix + # roles ./roles/admin.nix ./roles/base.nix ./roles/desktop.nix From 437196a6e0fa71d1f551f6f5067b3042f1b877af Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 17 Feb 2022 17:35:50 +0100 Subject: [PATCH 171/227] fix current alacritty version --- dotfiles/alacritty.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dotfiles/alacritty.yml b/dotfiles/alacritty.yml index eac8077..4d524b9 100644 --- a/dotfiles/alacritty.yml +++ b/dotfiles/alacritty.yml @@ -3,7 +3,6 @@ font: family: CaskaydiaCove Nerd Font size: 12 -background_opacity: 0.9 draw_bold_text_with_bright_colors: true colors: @@ -23,6 +22,7 @@ colors: window: dynamic_title: true + opacity: 0.9 env: TERM: xterm-256color From 140df0d25887806acc21babc8c14e55816bdc437 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 17 Feb 2022 17:36:01 +0100 Subject: [PATCH 172/227] allow systemd user services to access keyring --- dotfiles/sway/config | 1 + 1 file changed, 1 insertion(+) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index b3bd122..c2a76dd 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -148,6 +148,7 @@ exec emacs --daemon exec swayidle before-sleep "$lock" exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 exec redshift -l 49.8988135:10.9027636 +exec systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR # pastebin exec wl-paste --primary -t text --watch clipman store From ffb330106c49d7ffb7de55fde6c9b29ef12e9dc8 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 17 Feb 2022 17:36:16 +0100 Subject: [PATCH 173/227] fix battery default icon --- dotfiles/sway/status.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 60ef6eb..90c512f 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -23,7 +23,7 @@ backlight_full = "" backlight_partial1 = "" backlight_partial2 = "" backlight_partial3 = "" -bat = "" +bat = "" bat_charging = "" bat_discharging = "" bat_empty = "" From 8b6b8f07ffd6850369ed919c4f6426bddae7d73c Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 21 Mar 2022 13:47:46 +0100 Subject: [PATCH 174/227] fix cloudstation startup --- packages/cloudstation.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/cloudstation.nix b/packages/cloudstation.nix index 3196d59..745c4e4 100644 --- a/packages/cloudstation.nix +++ b/packages/cloudstation.nix @@ -57,6 +57,7 @@ in buildFHSUserEnv { runScript = writeScript "cloudstation" '' #!/usr/bin/env bash export QT_PLUGIN_PATH="${pkgs.qt5.qtbase.bin}/${pkgs.qt5.qtbase.qtPluginPrefix}" + export QT_QPA_PLATFORM=xcb ${cloudstation}/bin/launcher export LD_LIBRARY_PATH="/home/stefan/.CloudStation/CloudStation.app/lib:$LD_LIBRARY_PATH" From f03c408d70061486f074b53b89cc8da4b243d5bc Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 21 Mar 2022 13:48:10 +0100 Subject: [PATCH 175/227] add umlaut layer with wtype --- dotfiles/sway/config | 13 +++++++++++++ roles/desktop.nix | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index c2a76dd..4fdd32b 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -115,6 +115,19 @@ mode "resize" { } bindsym $mod+r mode "resize" +mode "umlaut" { + bindsym s exec wtype ß + bindsym a exec wtype ä + bindsym o exec wtype ö + bindsym u exec wtype ü + bindsym Shift+a exec wtype Ä + bindsym Shift+o exec wtype Ö + bindsym Shift+u exec wtype Ü + bindsym Return mode "default" + bindsym Escape mode "default" +} +bindsym $mod+u mode "umlaut" + bar { font $font position bottom diff --git a/roles/desktop.nix b/roles/desktop.nix index c4a159e..36313d3 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -186,7 +186,7 @@ in xdg_utils xfce.thunar xfce.thunar-volman - ydotool + wtype (pkgs.writeTextFile { name = "startsway"; destination = "/bin/startsway"; From 4446e0c151ce96f3e0ca556f63ac1a07b1301fc1 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 4 Apr 2022 11:48:43 +0200 Subject: [PATCH 176/227] add alias for docker-compose --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index d08c792..80b0bc3 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -82,6 +82,7 @@ in { alias cat="bat -pp" alias docker="sudo -g docker docker" + alias docker-compose="sudo -g docker docker-compose" alias less="bat -p" alias ls="ls --color=auto" alias vim="nvim" From 17838d5715afe82d88cac15276064a450cda055b Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 4 Apr 2022 11:48:50 +0200 Subject: [PATCH 177/227] update to latest go --- roles/dev.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/dev.nix b/roles/dev.nix index 13a2c69..d1dd033 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -5,7 +5,7 @@ in { environment.systemPackages = with pkgs; [ gnumake - go + go_1_17 rustup shellcheck unstable.golangci-lint From a9be78fd11fdd46edac8f341b2cd44c78b2110d4 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 5 Apr 2022 16:02:40 +0200 Subject: [PATCH 178/227] fix thunderbird starting firefox remotely --- roles/desktop.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index 36313d3..b355ae9 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -197,6 +197,7 @@ in export GTK_ICON_THEME=Dracula export GTK_THEME=Dracula export _JAVA_AWT_WM_NOREPARENTING=1 + export MOZ_DBUS_REMOTE=1 export MOZ_ENABLE_WAYLAND=1 export MOZ_USE_XINPUT2=1 export QT_AUTO_SCREEN_SCALE_FACTOR=0 From 1c594a1a0be38516ff67f3695af9d1f0318104b4 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 6 Apr 2022 12:09:28 +0200 Subject: [PATCH 179/227] update nagstamon to 3.8 --- packages/nagstamon.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index 85a5b08..61d2b4b 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -1,14 +1,17 @@ -{ stdenv, lib, fetchFromGitHub, python38Packages, wrapQtAppsHook }: +{ stdenv, lib, fetchFromGitHub, python39Packages, wrapQtAppsHook }: -python38Packages.buildPythonApplication rec { +let pname = "nagstamon"; - version = "3.7.0-alpha"; + version = "v3.8.0"; +in python39Packages.buildPythonApplication rec { + inherit pname; + inherit version; src = fetchFromGitHub { owner = "HenriWahl"; repo = "Nagstamon"; - rev = "dba37dc034589dfb312c6e8a7cc768bcd1952db9"; - sha256 = "1l095halb55qinaik51p3lxiln1s034dr28k7ra6xzrrv9l1x1xw"; + rev = "${version}"; + sha256 = "0a8aqw44z58pabsgxlvndnmzzvc50wrb4g12yp6zgajn40b2l8pw"; }; doCheck = false; @@ -19,7 +22,7 @@ python38Packages.buildPythonApplication rec { wrapQtApp $out/bin/nagstamon.py ''; - propagatedBuildInputs = with python38Packages; [ + propagatedBuildInputs = with python39Packages; [ beautifulsoup4 configparser dateutil @@ -30,6 +33,7 @@ python38Packages.buildPythonApplication rec { pyqt5_with_qtmultimedia requests requests-kerberos + setuptools xlib ]; From 3299de933c5726b7f3a9c3c1423d170650791d3f Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 6 Apr 2022 13:26:10 +0200 Subject: [PATCH 180/227] update for nixpkgs --- packages/nagstamon.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index 61d2b4b..cf9b903 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchFromGitHub, python39Packages, wrapQtAppsHook }: +{ lib, fetchFromGitHub, python39Packages, wrapQtAppsHook }: let pname = "nagstamon"; @@ -17,7 +17,6 @@ in python39Packages.buildPythonApplication rec { doCheck = false; nativeBuildInputs = [ wrapQtAppsHook ]; - dontWrapQtApps = true; postFixup = '' wrapQtApp $out/bin/nagstamon.py ''; From 78094a611898ef62f43c4d8f3448164fd5a11556 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 2 May 2022 08:34:47 +0200 Subject: [PATCH 181/227] use stable alacritty --- roles/desktop.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index b355ae9..355f909 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -172,7 +172,7 @@ in pavucontrol pcmanfm pulseeffects-pw - unstable.alacritty + alacritty unstable.keepassxc unstable.noisetorch From 0cac1911ce8c2ae24f79750fb27701b64ec8d4ee Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 2 May 2022 11:17:04 +0200 Subject: [PATCH 182/227] add restic to base packages --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index 80b0bc3..7a01387 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -29,6 +29,7 @@ in { openssl patchelf pv + restic ripgrep starship sysstat From 191ce8ed67b077dc32675ef73967383952bb2f29 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 2 Jun 2022 10:58:07 +0200 Subject: [PATCH 183/227] fix typo --- dotfiles/sway/config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 4fdd32b..5d86c6c 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -152,7 +152,7 @@ exec_always { gsettings set $gnome-schema cursor-theme 'Capitaine Cursors - White' } -# autostarts +# autostarts exec mako --font "$font" \ --background-color=$black \ --border-color=$violet \ From 91d385c41738be612de73cffcc25f8b39e89343f Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 2 Jun 2022 10:58:14 +0200 Subject: [PATCH 184/227] remove redshift (22.05) --- dotfiles/sway/config | 1 - 1 file changed, 1 deletion(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 5d86c6c..df2b422 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -160,7 +160,6 @@ exec mako --font "$font" \ exec emacs --daemon exec swayidle before-sleep "$lock" exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 -exec redshift -l 49.8988135:10.9027636 exec systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR # pastebin From 125778ba150e1ae5b9a1356ef43a1a44c4cca28f Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 2 Jun 2022 10:58:26 +0200 Subject: [PATCH 185/227] start cloudstation on work machine --- dotfiles/sway/config | 1 + 1 file changed, 1 insertion(+) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index df2b422..1ae619f 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -161,6 +161,7 @@ exec emacs --daemon exec swayidle before-sleep "$lock" exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 exec systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR +exec bash -c '[ "$HOSTNAME" == sphere ] && cloudstation' # pastebin exec wl-paste --primary -t text --watch clipman store From 125c5fe0a5b447e6014e80b19b3f34660d2ff2be Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 2 Jun 2022 10:58:48 +0200 Subject: [PATCH 186/227] use latest kernel --- hardware/xps15-sphere.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index 8b5d78b..d2299a1 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -51,7 +51,6 @@ in { powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; # custom - #boot.kernelPackages = pkgs.linuxPackages_latest; boot.loader.systemd-boot.enable = true; hardware.cpu.intel.updateMicrocode = true; networking.hostId = "eff291c4"; From 46d58735cc73a28546492a3c28f3c9b315601e7b Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 2 Jun 2022 10:59:21 +0200 Subject: [PATCH 187/227] nixos 22.05 fixes --- packages/cloudstation.nix | 2 +- roles/desktop.nix | 10 ++++------ roles/vpn.nix | 2 +- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/packages/cloudstation.nix b/packages/cloudstation.nix index 745c4e4..8532b00 100644 --- a/packages/cloudstation.nix +++ b/packages/cloudstation.nix @@ -35,7 +35,7 @@ in buildFHSUserEnv { with xorg; [ cloudstation curl - dbus_libs + dbus fontconfig freetype glib diff --git a/roles/desktop.nix b/roles/desktop.nix index 355f909..efea983 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -16,11 +16,11 @@ in extraPackages = with pkgs; [ bemenu brightnessctl + gammastep grim i3status-rust kanshi mako - redshift-wlr slurp swayidle swaylock @@ -160,9 +160,10 @@ in lxappearance numix-icon-theme + alacritty imv inkscape - libqrencode + keepassxc libreoffice libsecret mpv @@ -172,15 +173,12 @@ in pavucontrol pcmanfm pulseeffects-pw - alacritty - unstable.keepassxc - unstable.noisetorch + qrencode solaar gdk-pixbuf clipman - gebaar-libinput wdisplays wl-clipboard xdg_utils diff --git a/roles/vpn.nix b/roles/vpn.nix index 79bcd23..b3a801a 100644 --- a/roles/vpn.nix +++ b/roles/vpn.nix @@ -2,5 +2,5 @@ { networking.wireguard.enable = true; - environment.systemPackages = with pkgs; [ wireguard ]; + environment.systemPackages = with pkgs; [ wireguard-tools ]; } From 3efdeb2f4d13208c49dd700308a78a16594d4c71 Mon Sep 17 00:00:00 2001 From: foosinn Date: Sat, 7 May 2022 10:58:54 +0200 Subject: [PATCH 188/227] use stable keepassxc unstable wont start on wayland From 820e327ea390c09098f49aa8e81c4e1d4890ca04 Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 7 Jun 2022 11:23:09 +0200 Subject: [PATCH 189/227] install ferdi for slack --- roles/desktop.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index efea983..b2c6722 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -161,6 +161,7 @@ in numix-icon-theme alacritty + ferdi imv inkscape keepassxc From cfd000a8e7007d1ffabf7c1b45a95353b728b9ad Mon Sep 17 00:00:00 2001 From: foosinn Date: Tue, 7 Jun 2022 11:23:44 +0200 Subject: [PATCH 190/227] Revert "remove i3config" This reverts commit 9d44ab40b1e428248476b1ddf191f7cbab7a12fe. --- roles/desktop.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/desktop.nix b/roles/desktop.nix index b2c6722..ca0b359 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -52,6 +52,7 @@ in environment = { etc = { + "i3/config".source = ../dotfiles/i3/config; "sway/config".source = ../dotfiles/sway/config; "sway/status.toml".source = ../dotfiles/sway/status.toml; "xdg/alacritty/alacritty.yml".text = '' From 788f405ed41d562d72c50bdecebbfb050244e549 Mon Sep 17 00:00:00 2001 From: foosinn Date: Wed, 13 Jul 2022 08:39:02 +0200 Subject: [PATCH 191/227] remove kerberos from nagstamon --- packages/nagstamon.nix | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index cf9b903..86fe18f 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -25,13 +25,11 @@ in python39Packages.buildPythonApplication rec { beautifulsoup4 configparser dateutil - kerberos keyring lxml psutil pyqt5_with_qtmultimedia requests - requests-kerberos setuptools xlib ]; From 665f3d1b7646fe2d1f8ac807176154465f848c02 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 1 Aug 2022 15:43:04 +0200 Subject: [PATCH 192/227] add terraform to default setup --- roles/admin.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/roles/admin.nix b/roles/admin.nix index e93eb03..c0fbe8b 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -11,7 +11,9 @@ in { kubectl kubeseal pwgen + terraform whois + unstable.argocd unstable.kubernetes-helm unstable.kustomize From 47b85bcad914207b5dda13469f72be00a57ef9d9 Mon Sep 17 00:00:00 2001 From: foosinn Date: Mon, 1 Aug 2022 15:43:39 +0200 Subject: [PATCH 193/227] add terraform language server --- roles/admin.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/admin.nix b/roles/admin.nix index c0fbe8b..7a58cb8 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -17,6 +17,7 @@ in { unstable.argocd unstable.kubernetes-helm unstable.kustomize + unstable.terraform-ls unstable.vault docker-compose From 937bf0572e719ad0aaf7eb83ae445bc8f4067b26 Mon Sep 17 00:00:00 2001 From: foosinn Date: Thu, 4 Aug 2022 10:07:33 +0200 Subject: [PATCH 194/227] add memcache support to python --- roles/dev.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/roles/dev.nix b/roles/dev.nix index d1dd033..a2cb814 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -15,7 +15,12 @@ in { nodePackages.pyright (python39.withPackages - (python-packages: with python-packages; [ black pyyaml requests black ])) + (python-packages: with python-packages; [ + black + pymemcache + pyyaml + requests + ])) mariadb-client musl From e92cf8f9cdb638c31d80512ed23f66eda81ed322 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 12 Aug 2022 08:19:17 +0200 Subject: [PATCH 195/227] ignore dupes and leading spaces in bash history --- roles/base.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/base.nix b/roles/base.nix index 7a01387..2764f21 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -48,6 +48,7 @@ in { BAT_THEME = "ansi"; EDITOR = "nvim"; STARSHIP_CONFIG = "/etc/starship.toml"; + HISTCONTROL = "ignoreboth"; }; }; From efab382ce23ea99536523acdce4d4007b6e2e290 Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 12 Aug 2022 08:19:33 +0200 Subject: [PATCH 196/227] use always latest pyright required for up2date with python --- roles/dev.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/dev.nix b/roles/dev.nix index a2cb814..9c5a762 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -13,7 +13,7 @@ in { unstable.rust-analyzer #unstable.esphome - nodePackages.pyright + unstable.nodePackages.pyright (python39.withPackages (python-packages: with python-packages; [ black From 75289b6cd3a8e5800f366330bd25b8940280063b Mon Sep 17 00:00:00 2001 From: foosinn Date: Fri, 30 Sep 2022 09:41:10 +0200 Subject: [PATCH 197/227] x --- configuration.nix | 6 +- dotfiles/i3/config | 167 ++++++++++++++++++++++++++++++++++++++ dotfiles/i3/status.toml | 107 ++++++++++++++++++++++++ dotfiles/sway/config | 3 + dotfiles/sway/status.toml | 8 -- hardware/xps15-sphere.nix | 5 +- roles/desktop.nix | 35 +++++++- roles/dev.nix | 1 + roles/work.nix | 3 + 9 files changed, 322 insertions(+), 13 deletions(-) create mode 100644 dotfiles/i3/config create mode 100644 dotfiles/i3/status.toml diff --git a/configuration.nix b/configuration.nix index e2e0a3a..364eb1e 100644 --- a/configuration.nix +++ b/configuration.nix @@ -21,8 +21,7 @@ ./roles/network.nix ./roles/nix.nix ./roles/vpn.nix - ./roles/private.nix - ./roles/game.nix + ./roles/work.nix ]; networking.useDHCP = false; @@ -35,7 +34,8 @@ nixpkgs.config.permittedInsecurePackages = [ "openssl-1.0.2u" ]; - system.autoUpgrade.enable = true; + # removed for mobile working + # system.autoUpgrade.enable = true; system.stateVersion = "20.03"; # We can stay here } diff --git a/dotfiles/i3/config b/dotfiles/i3/config new file mode 100644 index 0000000..1620807 --- /dev/null +++ b/dotfiles/i3/config @@ -0,0 +1,167 @@ +# config +set $mod Mod1 +set $left h +set $down j +set $up k +set $right l +set $term alacritty +set $wallpaper /home/stefan/Downloads/bg.jpg +set $lock swaylock -t -i $wallpaper --scaling=fill +set $font CaskaydiaCove Nerd Font 10 +set $menucolor --ff=#f8f8f2 --nf=#f8f8f2 --tf=#bd93f9 --hf=#bd93f9 --tb=#282a36 --fb=#282a36 --nb=#282a36 --hb=#282a36 --sb=#282a36 +set $menu dmenu_run + +#input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de +#input "0:0:TUXEDO_Keyboard" xkb_layout de +# +#output * bg $wallpaper fill +#output "BenQ Corporation BenQ SW2700 83H03922SL0" res --custom 2560x1440@60Hz +#output "Dell Inc. Dell U4919DW HZVZWP2" res 5120x1440 + +# user keybinds +bindsym $mod+Return exec $term +bindsym $mod+Shift+q kill +bindsym $mod+d exec $menu +floating_modifier $mod normal +bindsym $mod+Shift+c reload +bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit' +bindsym $mod+o exec keepassxc +bindsym $mod+z exec $lock +bindsym $mod+Up exec light -A 5 +bindsym $mod+Down exec light -U 5 +bindsym $mod+c exec alacritty --class float -t pyCalc -e python +bindsym $mod+i exec alacritty --class float -t insect -e insect +bindsym $mod+Space exec swayr switch-to +bindsym $mod+n exec swayr switch-to-urgent-or-lru-window +bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png +#bindswitch --reload --locked lid:on output eDP-1 disable +#bindswitch --reload --locked lid:off output eDP-1 enable + +# app rules +#for_window [app_id="org.keepassxc.KeePassXC"] floating enable +#for_window [title="Firefox — Sharing Indicator"] floating enable +#for_window [title="Picture-in-Picture"] floating enable +#for_window [title="pyCalc"] floating enable +#for_window [title="insect"] floating enable + +# font +font $font + +# colors +set $black #282a36 +set $red #ff6188 +set $cyan #78dce8 +set $white #fcfcfa +set $yellow #f1fa8c +set $violet #bd93f9 +set $black2 #323232 + +# border backgnd text indicator childborder +client.focused $violet $black $white $violet $violet +client.focused_inactive $black $black $white $black2 $black +client.unfocused $black $black $white $black2 $black +client.urgent $red $red $black $black2 $white + + +# movement +bindsym $mod+$left focus left +bindsym $mod+$down focus down +bindsym $mod+$up focus up +bindsym $mod+$right focus right +bindsym $mod+Shift+$left move left +bindsym $mod+Shift+$down move down +bindsym $mod+Shift+$up move up +bindsym $mod+Shift+$right move right + +bindsym $mod+1 workspace 1 +bindsym $mod+2 workspace 2 +bindsym $mod+3 workspace 3 +bindsym $mod+4 workspace 4 +bindsym $mod+5 workspace 5 +bindsym $mod+6 workspace 6 +bindsym $mod+7 workspace 7 +bindsym $mod+8 workspace 8 +bindsym $mod+9 workspace 9 +bindsym $mod+0 workspace 10 +bindsym $mod+Shift+1 move container to workspace 1 +bindsym $mod+Shift+2 move container to workspace 2 +bindsym $mod+Shift+3 move container to workspace 3 +bindsym $mod+Shift+4 move container to workspace 4 +bindsym $mod+Shift+5 move container to workspace 5 +bindsym $mod+Shift+6 move container to workspace 6 +bindsym $mod+Shift+7 move container to workspace 7 +bindsym $mod+Shift+8 move container to workspace 8 +bindsym $mod+Shift+9 move container to workspace 9 +bindsym $mod+Shift+0 move container to workspace 10 + +bindsym $mod+b splith +bindsym $mod+v splitv +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +bindsym $mod+e layout toggle split +bindsym $mod+f fullscreen +bindsym $mod+Shift+space floating toggle +bindsym $mod+space focus mode_toggle +bindsym $mod+a focus parent + +bindsym $mod+Shift+minus move scratchpad +bindsym $mod+minus scratchpad show + +mode "resize" { + bindsym $left resize shrink width 10px + bindsym $down resize grow height 10px + bindsym $up resize shrink height 10px + bindsym $right resize grow width 10px + bindsym Return mode "default" + bindsym Escape mode "default" +} +bindsym $mod+r mode "resize" + +mode "umlaut" { + bindsym s exec wtype ß + bindsym a exec wtype ä + bindsym o exec wtype ö + bindsym u exec wtype ü + bindsym Shift+a exec wtype Ä + bindsym Shift+o exec wtype Ö + bindsym Shift+u exec wtype Ü + bindsym Return mode "default" + bindsym Escape mode "default" +} +bindsym $mod+u mode "umlaut" + +bar { + font $font + position bottom + colors { + background $black + statusline $white + separator $violet + + # border back text + focused_workspace $violet $violet $black + active_workspace $violet $violet $black + urgent_workspace $red $red $white + inactive_workspace $black $black $white + } + status_command i3status-rs /etc/sway/status.toml +} + +set $gnome-schema org.gnome.desktop.interface +exec_always { + gsettings set $gnome-schema gtk-theme 'Dracula' + gsettings set $gnome-schema icon-theme 'Dracula' + gsettings set $gnome-schema cursor-theme 'Capitaine Cursors - White' +} + +# autostarts +exec dunst +exec emacs --daemon +#exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 +exec systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR +exec bash -c '[ "$HOSTNAME" == sphere ] && cloudstation' +#exec swayrd + +# pastebin +#exec wl-paste --primary -t text --watch clipman store +#bindsym $mod+p exec clipman pick -t "bemenu" --tool-args='-b --fn "$font" -l 10 $menucolor' diff --git a/dotfiles/i3/status.toml b/dotfiles/i3/status.toml new file mode 100644 index 0000000..7f94a43 --- /dev/null +++ b/dotfiles/i3/status.toml @@ -0,0 +1,107 @@ +[theme] +name = "plain" +[theme.overrides] +idle_bg = "#282a36" +idle_fg = "#f8f8f2" +info_bg = "#282a36" +info_fg = "#f8f8f2" +good_bg = "#282a36" +good_fg = "#50fa7b" +warning_bg = "#282a36" +warning_fg = "#f1fa8c" +critical_bg = "#282a36" +critical_fg = "#ff5555" +separator_bg = "#282a36" +separator_fg = "#bd93f9" +separator = "|" + +[icons] +name = "none" +[icons.overrides] +backlight_empty = "" +backlight_full = "" +backlight_partial1 = "" +backlight_partial2 = "" +backlight_partial3 = "" +bat = "" +bat_charging = "" +bat_discharging = "" +bat_empty = "" +bat_quarter = "" +bat_half = "" +bat_three_quarters = "" +bat_full = "" +cogs = "龍" +disk_drive = "" +headphones = "  " +memory_mem = "" +net_down = "DOWN" +net_up = "UP" +net_vpn = " " +net_wired = "" +net_wireless = " " +thermometer = "  " +time = "" +volume_empty = "" +volume_full = "" +volume_half = "" +volume_muted= " MUTE" + + +[[block]] +block = "net" +device = "wg" +hide_inactive = true +hide_missing = true + +[[block]] +block = "net" +device = "wlo1" +hide_inactive = true +hide_missing = true + +[[block]] +block = "custom" +command = '''echo " $(cat /sys/class/thermal/thermal_zone0/temp | head -c 2) °C"''' + +[[block]] +block = "disk_space" +path = "/" +info_type = "available" +unit = "GB" +format = "{icon} {available}" +interval = 20 +warning = 20.0 +alert = 10.0 + +[[block]] +block = "memory" +display_type = "memory" +format_mem = "{mem_total_used_percents}" +icons_format = " {icon}" +clickable = false + +[[block]] +block = "load" +interval = 1 +format = "{1m}" + +[[block]] +block = "sound" +driver = "pulseaudio" + +[[block]] +block = "backlight" + +[[block]] +block = "battery" +device = "BAT0" +interval = 10 +format = "{percentage} ({time})" +full_format = "{percentage} ({time}) " +icons_format = " {icon} " + +[[block]] +block = "time" +interval = 60 +format = "%Y-%m-%d %H:%M" diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 1ae619f..3359a4f 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -31,6 +31,8 @@ bindsym $mod+Up exec light -A 5 bindsym $mod+Down exec light -U 5 bindsym $mod+c exec alacritty --class float -t pyCalc -e python bindsym $mod+i exec alacritty --class float -t insect -e insect +bindsym $mod+Space exec swayr switch-to +bindsym $mod+n exec swayr switch-to-urgent-or-lru-window bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png bindswitch --reload --locked lid:on output eDP-1 disable bindswitch --reload --locked lid:off output eDP-1 enable @@ -162,6 +164,7 @@ exec swayidle before-sleep "$lock" exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 exec systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR exec bash -c '[ "$HOSTNAME" == sphere ] && cloudstation' +exec swayrd # pastebin exec wl-paste --primary -t text --watch clipman store diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 90c512f..7f94a43 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -101,14 +101,6 @@ format = "{percentage} ({time})" full_format = "{percentage} ({time}) " icons_format = " {icon} " -[[block]] -block = "battery" -device = "BAT1" -interval = 10 -format = "{percentage} ({time})" -full_format = "{percentage} ({time}) " -icons_format = " {icon} " - [[block]] block = "time" interval = 60 diff --git a/hardware/xps15-sphere.nix b/hardware/xps15-sphere.nix index d2299a1..f16c81c 100644 --- a/hardware/xps15-sphere.nix +++ b/hardware/xps15-sphere.nix @@ -10,7 +10,7 @@ in { boot.extraModulePackages = [ ]; boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; - boot.initrd.kernelModules = [ ]; + boot.initrd.kernelModules = [ "i915" ]; boot.kernelModules = [ "kvm-intel" ]; boot.kernelParams = [ "intel_pstate=active" ]; boot.extraModprobeConfig = '' @@ -29,6 +29,9 @@ in { libvdpau-va-gl ]; }; + environment.variables = { + VDPAU_DRIVER = lib.mkIf config.hardware.opengl.enable (lib.mkDefault "va_gl"); + }; fileSystems."/" = { device = "tank/work/nixos"; diff --git a/roles/desktop.nix b/roles/desktop.nix index ca0b359..d8e9780 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -11,6 +11,37 @@ let in { + services.autorandr.enable = true; + services.xserver = { + enable = true; + dpi = 96; + + displayManager = { + sddm.enable = true; + defaultSession = "none+i3"; + }; + + libinput = { + enable = true; + }; + + windowManager.i3 = { + enable = true; + extraPackages = with pkgs; [ + autorandr + dmenu + dunst + feh + i3lock + i3status-rust + maim + xclip + ]; + }; + }; + + + programs.dconf.enable = true; programs.sway = { enable = true; extraPackages = with pkgs; [ @@ -21,10 +52,13 @@ in i3status-rust kanshi mako + picom slurp swayidle swaylock + swayr wf-recorder + wofi xwayland ]; extraSessionCommands = ""; @@ -162,7 +196,6 @@ in numix-icon-theme alacritty - ferdi imv inkscape keepassxc diff --git a/roles/dev.nix b/roles/dev.nix index 9c5a762..92cda0c 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -17,6 +17,7 @@ in { (python39.withPackages (python-packages: with python-packages; [ black + diagrams pymemcache pyyaml requests diff --git a/roles/work.nix b/roles/work.nix index 0de8954..8a7485e 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -20,6 +20,9 @@ in { 172.20.0.2 dashboard.kind 172.20.0.2 grafana.kind 172.20.0.2 alert.kind + + #127.0.0.1 auth-dev.thobits.com + 127.0.0.1 database ''; environment.systemPackages = with pkgs; [ From b4a40fa36d99e9b7f0144a9b9fdd4806d3771995 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Mon, 20 Feb 2023 10:55:17 +0100 Subject: [PATCH 198/227] feat(wallpaper): fix wallpaper --- dotfiles/sway/config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 3359a4f..c6487e0 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -5,7 +5,7 @@ set $down j set $up k set $right l set $term alacritty -set $wallpaper /home/stefan/Downloads/bg.jpg +set $wallpaper /home/stefan/wall.png set $lock swaylock -t -i $wallpaper --scaling=fill set $font CaskaydiaCove Nerd Font 10 set $menucolor --ff=#f8f8f2 --nf=#f8f8f2 --tf=#bd93f9 --hf=#bd93f9 --tb=#282a36 --fb=#282a36 --nb=#282a36 --hb=#282a36 --sb=#282a36 From ed4af6d356971d276383aa5e6e1e22efbb9f57b8 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Mon, 20 Feb 2023 10:55:34 +0100 Subject: [PATCH 199/227] fix(sway): keybindings --- dotfiles/sway/config | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index c6487e0..39ba6ac 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -31,8 +31,8 @@ bindsym $mod+Up exec light -A 5 bindsym $mod+Down exec light -U 5 bindsym $mod+c exec alacritty --class float -t pyCalc -e python bindsym $mod+i exec alacritty --class float -t insect -e insect -bindsym $mod+Space exec swayr switch-to -bindsym $mod+n exec swayr switch-to-urgent-or-lru-window +bindsym $mod+m exec swayr switch-to +bindsym $mod+n exec emacsclient -cn bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png bindswitch --reload --locked lid:on output eDP-1 disable bindswitch --reload --locked lid:off output eDP-1 enable From 458ce0ccf6df6e30d177581db8926a2aa8117c72 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:32:53 +0100 Subject: [PATCH 200/227] fix(sway): remove cursor theme resetting (breaks it) --- dotfiles/sway/config | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 39ba6ac..471ed1a 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -17,6 +17,7 @@ input "0:0:TUXEDO_Keyboard" xkb_layout de output * bg $wallpaper fill output "BenQ Corporation BenQ SW2700 83H03922SL0" res --custom 2560x1440@60Hz output "Dell Inc. Dell U4919DW HZVZWP2" res 5120x1440 +output eDP-1 scale 1.25 # user keybinds bindsym $mod+Return exec $term @@ -149,9 +150,8 @@ bar { set $gnome-schema org.gnome.desktop.interface exec_always { - gsettings set $gnome-schema gtk-theme 'Dracula' - gsettings set $gnome-schema icon-theme 'Dracula' - gsettings set $gnome-schema cursor-theme 'Capitaine Cursors - White' + gsettings set $gnome-schema icon-theme 'capitaine-cursors-white' + gsettings set $gnome-schema cursor-theme 'capitaine-cursors-white' } # autostarts @@ -163,8 +163,11 @@ exec emacs --daemon exec swayidle before-sleep "$lock" exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 exec systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR +exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP exec bash -c '[ "$HOSTNAME" == sphere ] && cloudstation' exec swayrd +exec xinput set-prop "PIXA3854:00 093A:0274 Touchpad" 365 1 + # pastebin exec wl-paste --primary -t text --watch clipman store From 5f1cd851b9df793aef5179e82625c83d7398a684 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:33:08 +0100 Subject: [PATCH 201/227] fix(status): use correct battery number for framework --- dotfiles/sway/status.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 7f94a43..5586edd 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -95,7 +95,7 @@ block = "backlight" [[block]] block = "battery" -device = "BAT0" +device = "BAT1" interval = 10 format = "{percentage} ({time})" full_format = "{percentage} ({time}) " From 0d4265f5f1e9d484635da6e97b4cb96263e8c54e Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:33:20 +0100 Subject: [PATCH 202/227] feat(alacritty): smaller fontsize --- dotfiles/alacritty.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dotfiles/alacritty.yml b/dotfiles/alacritty.yml index 4d524b9..6e675f3 100644 --- a/dotfiles/alacritty.yml +++ b/dotfiles/alacritty.yml @@ -1,7 +1,7 @@ font: normal: family: CaskaydiaCove Nerd Font - size: 12 + size: 8 draw_bold_text_with_bright_colors: true From b528bbd88f435125e652b52f83f22c0aa407877d Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:33:29 +0100 Subject: [PATCH 203/227] feat(hardware): framework --- hardware/framework.nix | 85 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 hardware/framework.nix diff --git a/hardware/framework.nix b/hardware/framework.nix new file mode 100644 index 0000000..4dbb97c --- /dev/null +++ b/hardware/framework.nix @@ -0,0 +1,85 @@ +# 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, ... }: + +let + #nixkernel = import {}; +in +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "thunderbolt" "nvme" "uas" "usb_storage" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" "i915" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "workpool/nixos/root"; + fsType = "zfs"; + }; + + fileSystems."/home" = + { device = "workpool/nixos/home"; + fsType = "zfs"; + }; + + fileSystems."/var/lib/docker" = + { device = "workpool/nixos/docker"; + fsType = "zfs"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/AA17-42AD"; + fsType = "vfat"; + }; + + swapDevices = + [ { device = "/dev/disk/by-uuid/18ae41eb-e32e-46a3-9e22-3395c37782df"; } + ]; + + # 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.wlp166s0.useDHCP = lib.mkDefault true; + + powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + + # custom + boot.loader.systemd-boot.enable = true; + networking.hostId = "f0000001"; + networking.hostName = "sphere"; + services.tlp.enable = true; + services.hardware.bolt.enable = true; + + # framework hardware + #boot.kernelPackages = nixkernel.linuxPackages_5_19; + #boot.kernelPackages = pkgs.linuxPackages_latest; + boot.kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages; + boot.kernelParams = [ + "mem_sleep_default=deep" + "nvme.noacpi=1" + "i915.enable_psr=1" + ]; + boot.blacklistedKernelModules = [ "hid-sensor-hub" ]; + hardware.acpilight.enable = true; + hardware.video.hidpi.enable = lib.mkDefault true; + services.xserver.dpi = 125; + environment.variables = { + VDPAU_DRIVER = lib.mkIf config.hardware.opengl.enable (lib.mkDefault "va_gl"); + }; + hardware.opengl.extraPackages = with pkgs; [ + vaapiIntel + libvdpau-va-gl + intel-media-driver + ]; + services.tlp.settings = { + CPU_ENERGY_PERF_POLICY_ON_AC = "performance"; + CPU_ENERGY_PERF_POLICY_ON_BAT = "performance"; + }; +} From f40031327f06694a09ef7a95491f53c245fcbe31 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:33:39 +0100 Subject: [PATCH 204/227] fix(nagstamon): fix package and update to 3.10 --- packages/nagstamon.nix | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index 86fe18f..1e72611 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -1,17 +1,17 @@ -{ lib, fetchFromGitHub, python39Packages, wrapQtAppsHook }: +{ lib, fetchFromGitHub, python310Packages, wrapQtAppsHook, pkgs }: let pname = "nagstamon"; - version = "v3.8.0"; -in python39Packages.buildPythonApplication rec { + version = "v3.10.1"; +in python310Packages.buildPythonApplication rec { inherit pname; inherit version; src = fetchFromGitHub { owner = "HenriWahl"; repo = "Nagstamon"; - rev = "${version}"; - sha256 = "0a8aqw44z58pabsgxlvndnmzzvc50wrb4g12yp6zgajn40b2l8pw"; + rev = version; + sha256 = "sha256-TdwvHQDDQqZ6uvdCTJCMCdivM/vaZpMrpLRMKN2y76Y="; }; doCheck = false; @@ -21,17 +21,18 @@ in python39Packages.buildPythonApplication rec { wrapQtApp $out/bin/nagstamon.py ''; - propagatedBuildInputs = with python39Packages; [ - beautifulsoup4 - configparser - dateutil - keyring - lxml - psutil - pyqt5_with_qtmultimedia - requests - setuptools - xlib + propagatedBuildInputs = [ + python310Packages.beautifulsoup4 + python310Packages.configparser + python310Packages.dateutil + python310Packages.keyring + python310Packages.lxml + python310Packages.psutil + python310Packages.pyqt5_with_qtmultimedia + python310Packages.requests + python310Packages.requests-kerberos + python310Packages.setuptools + python310Packages.xlib ]; meta = with lib; { @@ -42,4 +43,3 @@ in python39Packages.buildPythonApplication rec { inherit version; }; } - From 959c3c0fe94e8815fddd17fb1c740b14e0f82034 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:34:11 +0100 Subject: [PATCH 205/227] feat(work): add google cloud sdk plugins --- roles/work.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/roles/work.nix b/roles/work.nix index 8a7485e..1026c2e 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -34,11 +34,13 @@ in { nagstamon drone-cli - go-jira govc ttyd unstable.discord - unstable.google-cloud-sdk + unstable.go-jira + (unstable.google-cloud-sdk.withExtraComponents [ + unstable.google-cloud-sdk.components.gke-gcloud-auth-plugin + ]) unstable.slack unstable.velero From f8690d90e6e7f09add077683c5d5f9a1300f8fe6 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:34:23 +0100 Subject: [PATCH 206/227] feat(network): add openconnect vpn support --- roles/network.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/roles/network.nix b/roles/network.nix index 4dce0d4..843b7c8 100644 --- a/roles/network.nix +++ b/roles/network.nix @@ -9,5 +9,6 @@ in { environment.systemPackages = with pkgs; [ networkmanagerapplet networkmanager-vpnc + openconnect_openssl ]; } From e361a43b48ebab3073421b28a3d604b99d74ef66 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:34:48 +0100 Subject: [PATCH 207/227] feat(golang): update to 1.19 --- roles/dev.nix | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/roles/dev.nix b/roles/dev.nix index 92cda0c..f74fbce 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -3,9 +3,16 @@ let unstable = import { }; in { + services.emacs.package = pkgs.emacsPgtk; + nixpkgs.overlays = [ + (import (builtins.fetchTarball { + url = https://github.com/nix-community/emacs-overlay/archive/master.tar.gz; + })) + ]; + environment.systemPackages = with pkgs; [ gnumake - go_1_17 + go_1_19 rustup shellcheck unstable.golangci-lint @@ -27,7 +34,7 @@ in { musl dbeaver - emacs + emacs-gtk gitAndTools.delta lazygit ltrace From 58a0d3f1d8a446ec862c9ea044656c348c1a1526 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:35:21 +0100 Subject: [PATCH 208/227] feat(admin): add nmap and ipcalc --- roles/admin.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/roles/admin.nix b/roles/admin.nix index 7a58cb8..e7614e9 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -10,9 +10,11 @@ in { kind kubectl kubeseal + nmap pwgen terraform whois + ipcalc unstable.argocd unstable.kubernetes-helm From 2660ebc7afcba003774069f3a8f0f8a9c2b2f139 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:35:35 +0100 Subject: [PATCH 209/227] feat(desktop): desktop changes --- roles/desktop.nix | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index d8e9780..405171b 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -14,7 +14,6 @@ in services.autorandr.enable = true; services.xserver = { enable = true; - dpi = 96; displayManager = { sddm.enable = true; @@ -28,6 +27,7 @@ in windowManager.i3 = { enable = true; extraPackages = with pkgs; [ + arandr autorandr dmenu dunst @@ -41,9 +41,10 @@ in }; - programs.dconf.enable = true; + programs.droidcam.enable = true; programs.sway = { enable = true; + wrapperFeatures.gtk = true; extraPackages = with pkgs; [ bemenu brightnessctl @@ -59,16 +60,11 @@ in swayr wf-recorder wofi - xwayland ]; extraSessionCommands = ""; }; + xdg.portal.enable = true; - xdg.portal = { - enable = true; - gtkUsePortal = true; - extraPortals = with pkgs; [ xdg-desktop-portal-gtk xdg-desktop-portal-wlr ]; - }; boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ]; colors = { @@ -125,11 +121,10 @@ in }; }; - programs.qt5ct.enable = true; + qt5.platformTheme = "qt5ct"; hardware.pulseaudio.enable = false; security.rtkit.enable = true; - security.polkit.enable = true; services.pipewire = { enable = true; alsa.enable = true; @@ -194,6 +189,7 @@ in libsForQt5.qtstyleplugins lxappearance numix-icon-theme + numix-cursor-theme alacritty imv @@ -209,6 +205,7 @@ in pcmanfm pulseeffects-pw qrencode + uxplay solaar gdk-pixbuf @@ -259,8 +256,14 @@ in services.printing.enable = true; services.printing.drivers = [ pkgs.gutenprint ]; - services.avahi.enable = true; - services.avahi.nssmdns = true; - - hardware.opengl = { enable = true; }; + services.avahi = { + enable = true; + nssmdns = true; + publish = { + enable = true; + addresses = true; + workstation = true; + userServices = true; + }; + }; } From c426807bceeef64d57a980a267e0809b10f756b1 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:35:53 +0100 Subject: [PATCH 210/227] fix(configuration): allow broken kerberos package --- configuration.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/configuration.nix b/configuration.nix index 364eb1e..23c4c58 100644 --- a/configuration.nix +++ b/configuration.nix @@ -32,7 +32,10 @@ services.openssh.enable = true; networking.firewall.enable = true; - nixpkgs.config.permittedInsecurePackages = [ "openssl-1.0.2u" ]; + nixpkgs.config.permittedInsecurePackages = [ + "openssl-1.0.2u" + "python3.10-kerberos-1.3.1" + ]; # removed for mobile working # system.autoUpgrade.enable = true; From 18902b41c33a75b6643ea9be7d712d15b3f203a1 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 3 Mar 2023 10:38:23 +0100 Subject: [PATCH 211/227] chore: remove x --- dotfiles/i3/config | 167 ---------------------------------------- dotfiles/i3/status.toml | 107 ------------------------- roles/desktop.nix | 31 -------- 3 files changed, 305 deletions(-) delete mode 100644 dotfiles/i3/config delete mode 100644 dotfiles/i3/status.toml diff --git a/dotfiles/i3/config b/dotfiles/i3/config deleted file mode 100644 index 1620807..0000000 --- a/dotfiles/i3/config +++ /dev/null @@ -1,167 +0,0 @@ -# config -set $mod Mod1 -set $left h -set $down j -set $up k -set $right l -set $term alacritty -set $wallpaper /home/stefan/Downloads/bg.jpg -set $lock swaylock -t -i $wallpaper --scaling=fill -set $font CaskaydiaCove Nerd Font 10 -set $menucolor --ff=#f8f8f2 --nf=#f8f8f2 --tf=#bd93f9 --hf=#bd93f9 --tb=#282a36 --fb=#282a36 --nb=#282a36 --hb=#282a36 --sb=#282a36 -set $menu dmenu_run - -#input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de -#input "0:0:TUXEDO_Keyboard" xkb_layout de -# -#output * bg $wallpaper fill -#output "BenQ Corporation BenQ SW2700 83H03922SL0" res --custom 2560x1440@60Hz -#output "Dell Inc. Dell U4919DW HZVZWP2" res 5120x1440 - -# user keybinds -bindsym $mod+Return exec $term -bindsym $mod+Shift+q kill -bindsym $mod+d exec $menu -floating_modifier $mod normal -bindsym $mod+Shift+c reload -bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit' -bindsym $mod+o exec keepassxc -bindsym $mod+z exec $lock -bindsym $mod+Up exec light -A 5 -bindsym $mod+Down exec light -U 5 -bindsym $mod+c exec alacritty --class float -t pyCalc -e python -bindsym $mod+i exec alacritty --class float -t insect -e insect -bindsym $mod+Space exec swayr switch-to -bindsym $mod+n exec swayr switch-to-urgent-or-lru-window -bindsym Print exec grim -g "$(slurp)" - | wl-copy -t image/png -#bindswitch --reload --locked lid:on output eDP-1 disable -#bindswitch --reload --locked lid:off output eDP-1 enable - -# app rules -#for_window [app_id="org.keepassxc.KeePassXC"] floating enable -#for_window [title="Firefox — Sharing Indicator"] floating enable -#for_window [title="Picture-in-Picture"] floating enable -#for_window [title="pyCalc"] floating enable -#for_window [title="insect"] floating enable - -# font -font $font - -# colors -set $black #282a36 -set $red #ff6188 -set $cyan #78dce8 -set $white #fcfcfa -set $yellow #f1fa8c -set $violet #bd93f9 -set $black2 #323232 - -# border backgnd text indicator childborder -client.focused $violet $black $white $violet $violet -client.focused_inactive $black $black $white $black2 $black -client.unfocused $black $black $white $black2 $black -client.urgent $red $red $black $black2 $white - - -# movement -bindsym $mod+$left focus left -bindsym $mod+$down focus down -bindsym $mod+$up focus up -bindsym $mod+$right focus right -bindsym $mod+Shift+$left move left -bindsym $mod+Shift+$down move down -bindsym $mod+Shift+$up move up -bindsym $mod+Shift+$right move right - -bindsym $mod+1 workspace 1 -bindsym $mod+2 workspace 2 -bindsym $mod+3 workspace 3 -bindsym $mod+4 workspace 4 -bindsym $mod+5 workspace 5 -bindsym $mod+6 workspace 6 -bindsym $mod+7 workspace 7 -bindsym $mod+8 workspace 8 -bindsym $mod+9 workspace 9 -bindsym $mod+0 workspace 10 -bindsym $mod+Shift+1 move container to workspace 1 -bindsym $mod+Shift+2 move container to workspace 2 -bindsym $mod+Shift+3 move container to workspace 3 -bindsym $mod+Shift+4 move container to workspace 4 -bindsym $mod+Shift+5 move container to workspace 5 -bindsym $mod+Shift+6 move container to workspace 6 -bindsym $mod+Shift+7 move container to workspace 7 -bindsym $mod+Shift+8 move container to workspace 8 -bindsym $mod+Shift+9 move container to workspace 9 -bindsym $mod+Shift+0 move container to workspace 10 - -bindsym $mod+b splith -bindsym $mod+v splitv -bindsym $mod+s layout stacking -bindsym $mod+w layout tabbed -bindsym $mod+e layout toggle split -bindsym $mod+f fullscreen -bindsym $mod+Shift+space floating toggle -bindsym $mod+space focus mode_toggle -bindsym $mod+a focus parent - -bindsym $mod+Shift+minus move scratchpad -bindsym $mod+minus scratchpad show - -mode "resize" { - bindsym $left resize shrink width 10px - bindsym $down resize grow height 10px - bindsym $up resize shrink height 10px - bindsym $right resize grow width 10px - bindsym Return mode "default" - bindsym Escape mode "default" -} -bindsym $mod+r mode "resize" - -mode "umlaut" { - bindsym s exec wtype ß - bindsym a exec wtype ä - bindsym o exec wtype ö - bindsym u exec wtype ü - bindsym Shift+a exec wtype Ä - bindsym Shift+o exec wtype Ö - bindsym Shift+u exec wtype Ü - bindsym Return mode "default" - bindsym Escape mode "default" -} -bindsym $mod+u mode "umlaut" - -bar { - font $font - position bottom - colors { - background $black - statusline $white - separator $violet - - # border back text - focused_workspace $violet $violet $black - active_workspace $violet $violet $black - urgent_workspace $red $red $white - inactive_workspace $black $black $white - } - status_command i3status-rs /etc/sway/status.toml -} - -set $gnome-schema org.gnome.desktop.interface -exec_always { - gsettings set $gnome-schema gtk-theme 'Dracula' - gsettings set $gnome-schema icon-theme 'Dracula' - gsettings set $gnome-schema cursor-theme 'Capitaine Cursors - White' -} - -# autostarts -exec dunst -exec emacs --daemon -#exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 -exec systemctl --user import-environment DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR -exec bash -c '[ "$HOSTNAME" == sphere ] && cloudstation' -#exec swayrd - -# pastebin -#exec wl-paste --primary -t text --watch clipman store -#bindsym $mod+p exec clipman pick -t "bemenu" --tool-args='-b --fn "$font" -l 10 $menucolor' diff --git a/dotfiles/i3/status.toml b/dotfiles/i3/status.toml deleted file mode 100644 index 7f94a43..0000000 --- a/dotfiles/i3/status.toml +++ /dev/null @@ -1,107 +0,0 @@ -[theme] -name = "plain" -[theme.overrides] -idle_bg = "#282a36" -idle_fg = "#f8f8f2" -info_bg = "#282a36" -info_fg = "#f8f8f2" -good_bg = "#282a36" -good_fg = "#50fa7b" -warning_bg = "#282a36" -warning_fg = "#f1fa8c" -critical_bg = "#282a36" -critical_fg = "#ff5555" -separator_bg = "#282a36" -separator_fg = "#bd93f9" -separator = "|" - -[icons] -name = "none" -[icons.overrides] -backlight_empty = "" -backlight_full = "" -backlight_partial1 = "" -backlight_partial2 = "" -backlight_partial3 = "" -bat = "" -bat_charging = "" -bat_discharging = "" -bat_empty = "" -bat_quarter = "" -bat_half = "" -bat_three_quarters = "" -bat_full = "" -cogs = "龍" -disk_drive = "" -headphones = "  " -memory_mem = "" -net_down = "DOWN" -net_up = "UP" -net_vpn = " " -net_wired = "" -net_wireless = " " -thermometer = "  " -time = "" -volume_empty = "" -volume_full = "" -volume_half = "" -volume_muted= " MUTE" - - -[[block]] -block = "net" -device = "wg" -hide_inactive = true -hide_missing = true - -[[block]] -block = "net" -device = "wlo1" -hide_inactive = true -hide_missing = true - -[[block]] -block = "custom" -command = '''echo " $(cat /sys/class/thermal/thermal_zone0/temp | head -c 2) °C"''' - -[[block]] -block = "disk_space" -path = "/" -info_type = "available" -unit = "GB" -format = "{icon} {available}" -interval = 20 -warning = 20.0 -alert = 10.0 - -[[block]] -block = "memory" -display_type = "memory" -format_mem = "{mem_total_used_percents}" -icons_format = " {icon}" -clickable = false - -[[block]] -block = "load" -interval = 1 -format = "{1m}" - -[[block]] -block = "sound" -driver = "pulseaudio" - -[[block]] -block = "backlight" - -[[block]] -block = "battery" -device = "BAT0" -interval = 10 -format = "{percentage} ({time})" -full_format = "{percentage} ({time}) " -icons_format = " {icon} " - -[[block]] -block = "time" -interval = 60 -format = "%Y-%m-%d %H:%M" diff --git a/roles/desktop.nix b/roles/desktop.nix index 405171b..b8d115a 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -10,37 +10,6 @@ let unstable = import { config.allowUnfree = true; }; in { - - services.autorandr.enable = true; - services.xserver = { - enable = true; - - displayManager = { - sddm.enable = true; - defaultSession = "none+i3"; - }; - - libinput = { - enable = true; - }; - - windowManager.i3 = { - enable = true; - extraPackages = with pkgs; [ - arandr - autorandr - dmenu - dunst - feh - i3lock - i3status-rust - maim - xclip - ]; - }; - }; - - programs.droidcam.enable = true; programs.sway = { enable = true; From a4bff2a186f16daab7b8c6d1985247539bbea133 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 24 Mar 2023 08:44:05 +0100 Subject: [PATCH 212/227] feat(sway): lightmode --- dotfiles/sway/config | 66 ++++++++++++++++++++++----------------- dotfiles/sway/status.toml | 25 ++++++++------- 2 files changed, 51 insertions(+), 40 deletions(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 471ed1a..41b5865 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -1,15 +1,33 @@ +# colors +set $black #000000 +set $red #e75544 +set $cyan #3c74f6 +set $white #fafafa +set $yellow #908550 +set $violet #a73ca6 +#set $black2 #323232 +set $white2 #f0f0f0 + # config set $mod Mod1 set $left h set $down j set $up k set $right l -set $term alacritty +set $term wezterm set $wallpaper /home/stefan/wall.png set $lock swaylock -t -i $wallpaper --scaling=fill set $font CaskaydiaCove Nerd Font 10 -set $menucolor --ff=#f8f8f2 --nf=#f8f8f2 --tf=#bd93f9 --hf=#bd93f9 --tb=#282a36 --fb=#282a36 --nb=#282a36 --hb=#282a36 --sb=#282a36 +set $menucolor \ + --tf=$white --tb=$cyan \ + --ff=$black --fb=$white \ + --cf=$cyan --cb=$white \ + --nf=$black --nb=$white \ + --af=$black --ab=$white2 \ + --hf=$white --hb=$cyan \ + --sf=$white --sb=$cyan set $menu bemenu-run -H 23 -b -p run $menucolor +font $font input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de input "0:0:TUXEDO_Keyboard" xkb_layout de @@ -45,23 +63,11 @@ for_window [title="Picture-in-Picture"] floating enable for_window [title="pyCalc"] floating enable for_window [title="insect"] floating enable -# font -font $font - -# colors -set $black #282a36 -set $red #ff6188 -set $cyan #78dce8 -set $white #fcfcfa -set $yellow #f1fa8c -set $violet #bd93f9 -set $black2 #323232 - # border backgnd text indicator childborder -client.focused $violet $black $white $violet $violet -client.focused_inactive $black $black $white $black2 $black -client.unfocused $black $black $white $black2 $black -client.urgent $red $red $black $black2 $white +client.focused $cyan $white $black $violet $cyan +client.focused_inactive $white2 $white2 $black $white2 $white +client.unfocused $white2 $white2 $black $white2 $white +client.urgent $red $red $white $white2 $black # movement @@ -135,30 +141,34 @@ bar { font $font position bottom colors { - background $black - statusline $white - separator $violet + background $white + statusline $black + separator $cyan # border back text - focused_workspace $violet $violet $black - active_workspace $violet $violet $black - urgent_workspace $red $red $white - inactive_workspace $black $black $white + focused_workspace $cyan $cyan $white + active_workspace $cyan $cyan $white + urgent_workspace $red $red $black + inactive_workspace $white $white $black } + status_command i3status-rs /etc/sway/status.toml } set $gnome-schema org.gnome.desktop.interface exec_always { + gsettings set $gnome-schema cursor-theme Adwaita gsettings set $gnome-schema icon-theme 'capitaine-cursors-white' gsettings set $gnome-schema cursor-theme 'capitaine-cursors-white' } # autostarts exec mako --font "$font" \ - --background-color=$black \ - --border-color=$violet \ - --text-color=$white + --background-color "$white" \ + --border-colo "$red" \ + --text-color "$black" \ + --default-timeout 1000 \ + --padding 10 exec emacs --daemon exec swayidle before-sleep "$lock" exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 5586edd..357d6bb 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -1,20 +1,21 @@ [theme] name = "plain" [theme.overrides] -idle_bg = "#282a36" -idle_fg = "#f8f8f2" -info_bg = "#282a36" -info_fg = "#f8f8f2" -good_bg = "#282a36" -good_fg = "#50fa7b" -warning_bg = "#282a36" -warning_fg = "#f1fa8c" -critical_bg = "#282a36" -critical_fg = "#ff5555" -separator_bg = "#282a36" -separator_fg = "#bd93f9" +idle_bg = "#fafafa" +idle_fg = "#000000" +info_bg = "#fafafa" +info_fg = "#000000" +good_bg = "#fafafa" +good_fg = "#000000" +warning_bg = "#fafafa" +warning_fg = "#908550" +critical_bg = "#fafafa" +critical_fg = "#e75544" +separator_bg = "#fafafa" +separator_fg = "#3c74f6" separator = "|" + [icons] name = "none" [icons.overrides] From 210bc59571fafd50d6c712ed9b877828113da42e Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 24 Mar 2023 08:44:33 +0100 Subject: [PATCH 213/227] feat(wezterm): add wezterm --- dotfiles/wezterm.lua | 42 ++++++++++++++++++++++++++++++++++++++++++ roles/desktop.nix | 4 +++- 2 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 dotfiles/wezterm.lua diff --git a/dotfiles/wezterm.lua b/dotfiles/wezterm.lua new file mode 100644 index 0000000..8c3982e --- /dev/null +++ b/dotfiles/wezterm.lua @@ -0,0 +1,42 @@ +local wezterm = require 'wezterm'; + +return { + audible_bell = "Disabled", + bold_brightens_ansi_colors = true, + color_scheme = "One Light (base16)", + enable_tab_bar = false, + enable_wayland = true, + font_size = 12, + font = wezterm.font("CaskaydiaCove Nerd Font"), + window_background_opacity = 0.97, + window_close_confirmation = 'NeverPrompt', + default_prog = { '/run/current-system/sw/bin/bash' }, + + selection_fg = 'black', + selection_bg = '#fafafa', + + keys = { + { + key = 'Escape', + mods = 'CTRL', + action = wezterm.action.QuickSelect, + }, + }, + + window_padding = { + left = 0, + right = 0, + top = 0, + bottom = 0, + }, + + quick_select_patterns = { + '^([^ ]+) +(?:ClusterIP|Bound)', + '^([^ ]+) +(?:[0-9]+/[0-9]+)', + '^([^ ]+) +(?:[0-9]+ )', + '^([^ ]+) +(?:Opaque|kubernetes\\.io|helm\\.sh)', + '^([^ ]+) +(?:Active)', + '[^ ]+@[^ ]+.service', + 'git push.*', + }, +} diff --git a/roles/desktop.nix b/roles/desktop.nix index b8d115a..d449adc 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -51,7 +51,6 @@ in environment = { etc = { - "i3/config".source = ../dotfiles/i3/config; "sway/config".source = ../dotfiles/sway/config; "sway/status.toml".source = ../dotfiles/sway/status.toml; "xdg/alacritty/alacritty.yml".text = '' @@ -87,6 +86,7 @@ in key_bindings: - { key: Escape, mods: Control, action: ToggleViMode } ''; + "wezterm.lua".source = ../dotfiles/wezterm.lua; }; }; @@ -175,6 +175,7 @@ in pulseeffects-pw qrencode uxplay + wezterm solaar gdk-pixbuf @@ -203,6 +204,7 @@ in export QT_QPA_PLATFORM=wayland-egl export QT_WAYLAND_FORCE_DPI=96 export SDL_VIDEODRIVER=wayland + export WEZTERM_CONFIG_FILE=/etc/wezterm.lua export XDG_CURRENT_DESKTOP=sway export XDG_DATA_DIRS=${datadir}:$XDG_DATA_DIRS export XDG_SESSION_TYPE=wayland From 2622bdb1444937f529ac6275e53cde4047b54be1 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 24 Mar 2023 08:44:56 +0100 Subject: [PATCH 214/227] feat(yubikey): add support --- roles/base.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/roles/base.nix b/roles/base.nix index 2764f21..f3c625c 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -175,4 +175,7 @@ in { }; }; + # yubikey support + services.udev.packages = [ pkgs.yubikey-personalization ]; + services.pcscd.enable = true; } From 698e0b6ec2b49326da9de79eb9fc83b4837b8d19 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 24 Mar 2023 08:46:34 +0100 Subject: [PATCH 215/227] feat(kubectx): test kubectl --- roles/admin.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/roles/admin.nix b/roles/admin.nix index e7614e9..0e76052 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -9,6 +9,7 @@ in { k9s kind kubectl + kubectx kubeseal nmap pwgen @@ -32,6 +33,11 @@ in { (import ../packages/certmanager.nix) ]; + programs.bash.shellAliases = { + kx = "kubectx"; + kns = "kubens"; + }; + virtualisation.docker = { enable = true; storageDriver = "zfs"; From 49ae5f39817fd35a7b84962028eb2801115afab3 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Wed, 3 Jan 2024 15:26:33 +0100 Subject: [PATCH 216/227] work --- dotfiles/alacritty.yml | 30 ++++++++----- dotfiles/sway/config | 14 +++++-- dotfiles/sway/status.toml | 88 +++++++++++++++++---------------------- dotfiles/wezterm.lua | 3 -- hardware/framework.nix | 1 - packages/nagstamon.nix | 31 +++++++------- roles/base.nix | 5 +-- roles/desktop.nix | 15 ++++--- roles/dev.nix | 22 ++++------ roles/work.nix | 27 +++++++++++- 10 files changed, 129 insertions(+), 107 deletions(-) diff --git a/dotfiles/alacritty.yml b/dotfiles/alacritty.yml index 6e675f3..81419b5 100644 --- a/dotfiles/alacritty.yml +++ b/dotfiles/alacritty.yml @@ -7,18 +7,28 @@ draw_bold_text_with_bright_colors: true colors: primary: - background: "0x19181A" - foreground: "0xFCFCFA" + background: '0xf8f8f8' + foreground: '0x2a2b33' normal: - black: "0x19181A" - red: "0xcc6666" - green: "0xa9dc76" - yellow: "0xffd866" - cyan: "0x78dce8" - magenta: "0xFC9867" - blue: "0xAB9DF2" - white: "0xFCFCFA" + black: '0x000000' + red: '0xde3d35' + green: '0x3e953a' + yellow: '0xd2b67b' + blue: '0x2f5af3' + magenta: '0xa00095' + cyan: '0x3e953a' + white: '0xbbbbbb' + + bright: + black: '0x000000' + red: '0xde3d35' + green: '0x3e953a' + yellow: '0xd2b67b' + blue: '0x2f5af3' + magenta: '0xa00095' + cyan: '0x3e953a' + white: '0xffffff' window: dynamic_title: true diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 41b5865..95de070 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -14,11 +14,12 @@ set $left h set $down j set $up k set $right l -set $term wezterm +#set $term wezterm +set $term alacritty set $wallpaper /home/stefan/wall.png set $lock swaylock -t -i $wallpaper --scaling=fill set $font CaskaydiaCove Nerd Font 10 -set $menucolor \ +set $menucolor -H 23 -b \ --tf=$white --tb=$cyan \ --ff=$black --fb=$white \ --cf=$cyan --cb=$white \ @@ -26,14 +27,20 @@ set $menucolor \ --af=$black --ab=$white2 \ --hf=$white --hb=$cyan \ --sf=$white --sb=$cyan -set $menu bemenu-run -H 23 -b -p run $menucolor +set $menu bemenu-run -p run $menucolor +set $otpmenu ykman oath accounts code -s "$(ykman oath accounts list | bemenu -i $menucolor)" | wl-copy font $font input "1:1:AT_Translated_Set_2_keyboard" xkb_layout de input "0:0:TUXEDO_Keyboard" xkb_layout de +input 1130:35:HID_046a:0023 xkb_layout de +input "2362:628:PIXA3854:00_093A:0274_Touchpad" click_method clickfinger output * bg $wallpaper fill output "BenQ Corporation BenQ SW2700 83H03922SL0" res --custom 2560x1440@60Hz +output "BenQ Corporation BenQ SW2700 83H03922SL0" pos 1440 720 +output "BNQ BenQ PD2705Q W4N00777019" transform 270 +output "BNQ BenQ PD2705Q W4N00777019" pos 0 0 output "Dell Inc. Dell U4919DW HZVZWP2" res 5120x1440 output eDP-1 scale 1.25 @@ -45,6 +52,7 @@ floating_modifier $mod normal bindsym $mod+Shift+c reload bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit' bindsym $mod+o exec keepassxc +bindsym $mod+Shift+o exec $otpmenu bindsym $mod+z exec $lock bindsym $mod+Up exec light -A 5 bindsym $mod+Down exec light -U 5 diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 357d6bb..4696623 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -1,5 +1,5 @@ [theme] -name = "plain" +theme = "plain" [theme.overrides] idle_bg = "#fafafa" idle_fg = "#000000" @@ -17,49 +17,45 @@ separator = "|" [icons] -name = "none" +icons = "none" [icons.overrides] -backlight_empty = "" -backlight_full = "" -backlight_partial1 = "" -backlight_partial2 = "" -backlight_partial3 = "" -bat = "" -bat_charging = "" -bat_discharging = "" -bat_empty = "" -bat_quarter = "" -bat_half = "" -bat_three_quarters = "" -bat_full = "" -cogs = "龍" -disk_drive = "" -headphones = "  " -memory_mem = "" -net_down = "DOWN" -net_up = "UP" +backlight = [ + "󰌶", + "󱩏", + "󱩒", + "󱩕", + "󰛨", +] +bat = [ + "󱃍 ", + "󰁻", + "󰁾", + "󰂁", + "󰁹", +] +bat_charging = "" +cogs = "" +disk_drive = "󱛟" +headphones = "  " +memory_mem = "󰍛" +net_down = "󰅛" +net_up = "󰱓" net_vpn = " " net_wired = "" -net_wireless = " " -thermometer = "  " -time = "" -volume_empty = "" -volume_full = "" -volume_half = "" -volume_muted= " MUTE" - +net_wireless = " 󰖩" +thermometer = " 󰔏 " +time = "󰥔" +volume_muted = "󰖁 MUTE" +volume = [ + "", + "󰕾", + "", +] [[block]] block = "net" -device = "wg" -hide_inactive = true -hide_missing = true - -[[block]] -block = "net" -device = "wlo1" -hide_inactive = true -hide_missing = true +device = "wlp166s0" +format = " $icon $ip$frequency " [[block]] block = "custom" @@ -69,23 +65,19 @@ command = '''echo " $(cat /sys/class/thermal/thermal_zone0/temp | head -c 2) block = "disk_space" path = "/" info_type = "available" -unit = "GB" -format = "{icon} {available}" +format = " $icon $available " interval = 20 warning = 20.0 alert = 10.0 [[block]] block = "memory" -display_type = "memory" -format_mem = "{mem_total_used_percents}" -icons_format = " {icon}" -clickable = false +format = " $icon $mem_used/$mem_total " [[block]] block = "load" interval = 1 -format = "{1m}" +format = " $icon $1m " [[block]] block = "sound" @@ -98,11 +90,9 @@ block = "backlight" block = "battery" device = "BAT1" interval = 10 -format = "{percentage} ({time})" -full_format = "{percentage} ({time}) " -icons_format = " {icon} " +format = " $icon $percentage ($time) " [[block]] block = "time" interval = 60 -format = "%Y-%m-%d %H:%M" +format = " $timestamp.datetime(f:'%Y-%m-%d %H:%M') " diff --git a/dotfiles/wezterm.lua b/dotfiles/wezterm.lua index 8c3982e..de74238 100644 --- a/dotfiles/wezterm.lua +++ b/dotfiles/wezterm.lua @@ -12,9 +12,6 @@ return { window_close_confirmation = 'NeverPrompt', default_prog = { '/run/current-system/sw/bin/bash' }, - selection_fg = 'black', - selection_bg = '#fafafa', - keys = { { key = 'Escape', diff --git a/hardware/framework.nix b/hardware/framework.nix index 4dbb97c..d9f1e62 100644 --- a/hardware/framework.nix +++ b/hardware/framework.nix @@ -68,7 +68,6 @@ in ]; boot.blacklistedKernelModules = [ "hid-sensor-hub" ]; hardware.acpilight.enable = true; - hardware.video.hidpi.enable = lib.mkDefault true; services.xserver.dpi = 125; environment.variables = { VDPAU_DRIVER = lib.mkIf config.hardware.opengl.enable (lib.mkDefault "va_gl"); diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index 1e72611..aa48c23 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -1,9 +1,10 @@ -{ lib, fetchFromGitHub, python310Packages, wrapQtAppsHook, pkgs }: +{ lib, fetchFromGitHub, python311Packages, wrapQtAppsHook, pkgs }: let pname = "nagstamon"; - version = "v3.10.1"; -in python310Packages.buildPythonApplication rec { + version = "v3.12.0"; + +in python311Packages.buildPythonApplication rec { inherit pname; inherit version; @@ -11,7 +12,7 @@ in python310Packages.buildPythonApplication rec { owner = "HenriWahl"; repo = "Nagstamon"; rev = version; - sha256 = "sha256-TdwvHQDDQqZ6uvdCTJCMCdivM/vaZpMrpLRMKN2y76Y="; + sha256 = "sha256-SI0FPTqJquaVyl/gpp883eGLq7tZ6J0fqn0jp77M8GM="; }; doCheck = false; @@ -22,17 +23,17 @@ in python310Packages.buildPythonApplication rec { ''; propagatedBuildInputs = [ - python310Packages.beautifulsoup4 - python310Packages.configparser - python310Packages.dateutil - python310Packages.keyring - python310Packages.lxml - python310Packages.psutil - python310Packages.pyqt5_with_qtmultimedia - python310Packages.requests - python310Packages.requests-kerberos - python310Packages.setuptools - python310Packages.xlib + python311Packages.beautifulsoup4 + python311Packages.configparser + python311Packages.dateutil + python311Packages.keyring + python311Packages.lxml + python311Packages.psutil + python311Packages.pyqt5_with_qtmultimedia + python311Packages.requests + python311Packages.requests-kerberos + python311Packages.setuptools + python311Packages.xlib ]; meta = with lib; { diff --git a/roles/base.nix b/roles/base.nix index f3c625c..1186c9b 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -49,6 +49,7 @@ in { EDITOR = "nvim"; STARSHIP_CONFIG = "/etc/starship.toml"; HISTCONTROL = "ignoreboth"; + NIXOS_OZONE_WL = "y"; }; }; @@ -174,8 +175,4 @@ in { LC_IDENTIFICATION = "de_DE.UTF-8"; }; }; - - # yubikey support - services.udev.packages = [ pkgs.yubikey-personalization ]; - services.pcscd.enable = true; } diff --git a/roles/desktop.nix b/roles/desktop.nix index d449adc..dd63c44 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -90,7 +90,7 @@ in }; }; - qt5.platformTheme = "qt5ct"; + qt.platformTheme = "qt5ct"; hardware.pulseaudio.enable = false; security.rtkit.enable = true; @@ -99,10 +99,6 @@ in alsa.enable = true; pulse.enable = true; jack.enable = true; - - config.pipewire = { - "context.properties" = { "default.clock.rate" = 48000; }; - }; }; services.udev.packages = [ (pkgs.writeTextFile { @@ -114,9 +110,9 @@ in }) ]; - fonts.enableDefaultFonts = true; + fonts.enableDefaultPackages = true; fonts.fontconfig.antialias = true; - fonts.fonts = with pkgs; [ + fonts.packages = with pkgs; [ corefonts emacs-all-the-icons-fonts fira-code @@ -161,6 +157,7 @@ in numix-cursor-theme alacritty + gimp imv inkscape keepassxc @@ -175,7 +172,9 @@ in pulseeffects-pw qrencode uxplay - wezterm + unstable.wezterm + unstable.prusa-slicer + unstable.super-slicer-latest solaar gdk-pixbuf diff --git a/roles/dev.nix b/roles/dev.nix index f74fbce..c4fd14c 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -1,14 +1,10 @@ -{ config, lib, pkgs, ... }: +{ config, lib, buildPythonPackage, pkgs, fetchPypi,... }: -let unstable = import { }; +let + unstable = import { }; in { - services.emacs.package = pkgs.emacsPgtk; - nixpkgs.overlays = [ - (import (builtins.fetchTarball { - url = https://github.com/nix-community/emacs-overlay/archive/master.tar.gz; - })) - ]; + services.emacs.package = pkgs.emacs29-pgtk; environment.systemPackages = with pkgs; [ gnumake @@ -18,23 +14,23 @@ in { unstable.golangci-lint unstable.gopls unstable.rust-analyzer - #unstable.esphome - unstable.nodePackages.pyright - (python39.withPackages + (python310.withPackages (python-packages: with python-packages; [ black diagrams pymemcache pyyaml requests - ])) + python-lsp-server + ]) + ) mariadb-client musl dbeaver - emacs-gtk + emacs29-pgtk gitAndTools.delta lazygit ltrace diff --git a/roles/work.nix b/roles/work.nix index 1026c2e..fc60c0a 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -7,6 +7,15 @@ let pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) { }; in { + environment.variables = { + USE_GKE_GCLOUD_AUTH_PLUGIN = "True"; + }; + + services.tailscale = { + enable = true; + package = unstable.tailscale; + }; + security.pki.certificateFiles = [ ../dotfiles/certs/NetzmarktCA.crt ../dotfiles/certs/vcenter.netzmarkt.lan.crt @@ -21,8 +30,12 @@ in { 172.20.0.2 grafana.kind 172.20.0.2 alert.kind + #192.168.2.111 hass.home.f2o.io + #127.0.0.1 auth-dev.thobits.com 127.0.0.1 database + 127.0.0.1 youtube.com + 127.0.0.1 www.youtube.com ''; environment.systemPackages = with pkgs; [ @@ -32,6 +45,10 @@ in { # (import ../packages/vaultsink.nix) needs opensource verson cloudstation nagstamon + yubikey-manager + anydesk + chromium + nodejs drone-cli govc @@ -41,10 +58,18 @@ in { (unstable.google-cloud-sdk.withExtraComponents [ unstable.google-cloud-sdk.components.gke-gcloud-auth-plugin ]) - unstable.slack + slack unstable.velero unstable.obs-studio unstable.obs-studio-plugins.wlrobs + + unstable.mindustry-wayland + prusa-slicer ]; + + # yubikey support + services.udev.packages = [ pkgs.yubikey-personalization ]; + services.pcscd.enable = true; + } From ddf25a45b0167cb9339f9383b7ece41b9bb6c22d Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Wed, 3 Jan 2024 16:20:36 +0100 Subject: [PATCH 217/227] fix nixos 23.11 --- roles/desktop.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index dd63c44..aef3f36 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -169,7 +169,6 @@ in nodePackages.insect pavucontrol pcmanfm - pulseeffects-pw qrencode uxplay unstable.wezterm From d492658eccd1f8c18e552d7a09a9f7b1d071ebdd Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Wed, 3 Jan 2024 16:20:44 +0100 Subject: [PATCH 218/227] fix(slack): enable screenshare --- roles/work.nix | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/roles/work.nix b/roles/work.nix index fc60c0a..ac89906 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -3,8 +3,18 @@ let unstable = import { config.allowUnfree = true; }; cloudstation = pkgs.callPackage (import ../packages/cloudstation.nix) { }; - nagstamon = - pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) { }; + nagstamon = pkgs.libsForQt5.callPackage (import ../packages/nagstamon.nix) { }; + myslack = pkgs.slack.overrideAttrs (oldAttrs: rec { + fixupPhase = '' + sed -i -e 's/,"WebRTCPipeWireCapturer"/,"LebRTCPipeWireCapturer"/' $out/lib/slack/resources/app.asar + + rm $out/bin/slack + makeWrapper $out/lib/slack/slack $out/bin/slack \ + --prefix XDG_DATA_DIRS : $GSETTINGS_SCHEMAS_PATH \ + --suffix PATH : ${lib.makeBinPath [ pkgs.xdg-utils ]} \ + --add-flags "--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations,WebRTCPipeWireCapturer" + ''; + }); in { environment.variables = { @@ -58,7 +68,7 @@ in { (unstable.google-cloud-sdk.withExtraComponents [ unstable.google-cloud-sdk.components.gke-gcloud-auth-plugin ]) - slack + myslack unstable.velero unstable.obs-studio From 4eb2a0dd1bf96c38de9dc3b26ac9211fe96568ae Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Wed, 3 Jan 2024 16:48:00 +0100 Subject: [PATCH 219/227] fix(nagstamon): working on wayland --- packages/nagstamon.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/nagstamon.nix b/packages/nagstamon.nix index aa48c23..c78c154 100644 --- a/packages/nagstamon.nix +++ b/packages/nagstamon.nix @@ -19,7 +19,7 @@ in python311Packages.buildPythonApplication rec { nativeBuildInputs = [ wrapQtAppsHook ]; postFixup = '' - wrapQtApp $out/bin/nagstamon.py + makeQtWrapper $out/bin/nagstamon.py $out/bin/nagstamon ''; propagatedBuildInputs = [ @@ -34,6 +34,7 @@ in python311Packages.buildPythonApplication rec { python311Packages.requests-kerberos python311Packages.setuptools python311Packages.xlib + pkgs.libsForQt5.qt5.qtwayland ]; meta = with lib; { From 6a911794f1419d2073f95aec6cb2ce2531e9d1e1 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 15 Mar 2024 11:15:00 +0100 Subject: [PATCH 220/227] switch notify daemon --- dotfiles/sway/config | 7 +------ dotfiles/sway/status.toml | 12 ++++++++++++ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 95de070..513f932 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -171,12 +171,7 @@ exec_always { } # autostarts -exec mako --font "$font" \ - --background-color "$white" \ - --border-colo "$red" \ - --text-color "$black" \ - --default-timeout 1000 \ - --padding 10 +exec swaync exec emacs --daemon exec swayidle before-sleep "$lock" exec /run/current-system/sw/libexec/polkit-gnome-authentication-agent-1 diff --git a/dotfiles/sway/status.toml b/dotfiles/sway/status.toml index 4696623..6add7e0 100644 --- a/dotfiles/sway/status.toml +++ b/dotfiles/sway/status.toml @@ -91,8 +91,20 @@ block = "battery" device = "BAT1" interval = 10 format = " $icon $percentage ($time) " +full_format = " $icon $percentage " [[block]] block = "time" interval = 60 format = " $timestamp.datetime(f:'%Y-%m-%d %H:%M') " + +[[block]] +block = "notify" +driver = "swaync" +format = " $icon {($notification_count.eng(w:1)) |}" +[[block.click]] +button = "left" +action = "show" +[[block.click]] +button = "right" +action = "toggle_paused" From 5446d3aaceb5c24c070d0a31bc3704a3cc313dfd Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 15 Mar 2024 11:15:40 +0100 Subject: [PATCH 221/227] libvirt uefi still not working --- roles/admin.nix | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/roles/admin.nix b/roles/admin.nix index 0e76052..541f26b 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -1,6 +1,7 @@ { pkgs, options, ... }: -let unstable = import { }; +let +unstable = import { config.allowUnfree = true; }; in { environment.systemPackages = with pkgs; [ cryptsetup @@ -42,5 +43,11 @@ in { enable = true; storageDriver = "zfs"; }; - virtualisation.libvirtd.enable = true; + virtualisation.libvirtd = { + enable = true; + qemu = { + swtpm.enable = true; + ovmf.enable = true; + }; + }; } From 44ed4f7a5c1377a65fe042cbacb76e35d400211c Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 15 Mar 2024 11:15:51 +0100 Subject: [PATCH 222/227] fix lorri confi --- roles/base.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/roles/base.nix b/roles/base.nix index 1186c9b..032f4d7 100644 --- a/roles/base.nix +++ b/roles/base.nix @@ -90,6 +90,8 @@ in { alias ls="ls --color=auto" alias vim="nvim" alias k="kubectl" + alias n="nix-shell -p" + alias nu="nix-shell -I nixpkgs=/nix/var/nix/profiles/per-user/root/channels/nixos-unstable -p" sink() { VAULT_TOKEN=$(vault token lookup -format=json | jq -r .data.id) \ @@ -139,7 +141,12 @@ in { services.fwupd.enable = true; services.resolved.enable = true; + services.lorri.enable = true; + systemd.user.services.lorri.serviceConfig = { + ProtectSystem = pkgs.lib.mkForce "full"; + ProtectHome = pkgs.lib.mkForce false; + }; security.wrappers.gvfsd-nfs = { source = "${pkgs.gnome.gvfs}/libexec/gvfsd-nfs"; From 3e522cebfd6a48f3741ce3cf0bdf673048b11eca Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 15 Mar 2024 11:16:02 +0100 Subject: [PATCH 223/227] up --- roles/desktop.nix | 6 +++--- roles/work.nix | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/roles/desktop.nix b/roles/desktop.nix index aef3f36..bade0d7 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -26,6 +26,7 @@ in slurp swayidle swaylock + swaynotificationcenter swayr wf-recorder wofi @@ -170,10 +171,9 @@ in pavucontrol pcmanfm qrencode - uxplay + remmina unstable.wezterm - unstable.prusa-slicer - unstable.super-slicer-latest + uxplay solaar gdk-pixbuf diff --git a/roles/work.nix b/roles/work.nix index ac89906..46c3d9d 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -41,6 +41,7 @@ in { 172.20.0.2 alert.kind #192.168.2.111 hass.home.f2o.io + #192.168.2.111 sync.home.f2o.io #127.0.0.1 auth-dev.thobits.com 127.0.0.1 database @@ -59,6 +60,7 @@ in { anydesk chromium nodejs + vscodium drone-cli govc From 2a39913fde75780574c24f90a0beac4cee998fe4 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Mon, 22 Apr 2024 08:40:54 +0200 Subject: [PATCH 224/227] feat: remove unused helm2 --- packages/helm2.nix | 27 --------------------------- roles/admin.nix | 1 - roles/work.nix | 1 - 3 files changed, 29 deletions(-) delete mode 100644 packages/helm2.nix diff --git a/packages/helm2.nix b/packages/helm2.nix deleted file mode 100644 index ebd69e7..0000000 --- a/packages/helm2.nix +++ /dev/null @@ -1,27 +0,0 @@ -with import { }; - -stdenv.mkDerivation rec { - name = "helm2"; - version = "2.14.3"; - src = fetchurl { - url = "https://get.helm.sh/helm-v${version}-linux-amd64.tar.gz"; - sha256 = "38614a665859c0f01c9c1d84fa9a5027364f936814d1e47839b05327e400bf55"; - }; - - nativeBuildInputs = [ autoPatchelfHook ]; - - unpackPhase = '' - tar xvpzf $src - ''; - - installPhase = '' - install -m 755 -D linux-amd64/helm $out/bin/helm2 - ''; - - meta = with lib; { - homepage = "https://helm.sh"; - description = "helms depricated v2 verison"; - platforms = platforms.linux; - maintainers = with maintainers; [ foosinn ]; - }; -} diff --git a/roles/admin.nix b/roles/admin.nix index 541f26b..182ab4d 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -30,7 +30,6 @@ in { virt-manager (import ../packages/skaffold.nix) - (import ../packages/helm2.nix) (import ../packages/certmanager.nix) ]; diff --git a/roles/work.nix b/roles/work.nix index 46c3d9d..c697556 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -76,7 +76,6 @@ in { unstable.obs-studio unstable.obs-studio-plugins.wlrobs - unstable.mindustry-wayland prusa-slicer ]; From 599d34d9cb71676487aa61e5f3dd31adf4209f66 Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Tue, 8 Oct 2024 13:06:54 +0200 Subject: [PATCH 225/227] updates --- configuration.nix | 1 + roles/admin.nix | 12 ++++++------ roles/desktop.nix | 8 ++++---- roles/dev.nix | 9 ++++----- roles/mail.nix | 3 +-- roles/network.nix | 2 +- roles/private.nix | 1 - roles/work.nix | 19 +++++++++++-------- 8 files changed, 28 insertions(+), 27 deletions(-) diff --git a/configuration.nix b/configuration.nix index 23c4c58..ec8fc82 100644 --- a/configuration.nix +++ b/configuration.nix @@ -30,6 +30,7 @@ time.timeZone = "Europe/Berlin"; services.openssh.enable = true; + networking.firewall.enable = true; nixpkgs.config.permittedInsecurePackages = [ diff --git a/roles/admin.nix b/roles/admin.nix index 182ab4d..7256f86 100644 --- a/roles/admin.nix +++ b/roles/admin.nix @@ -1,7 +1,6 @@ { pkgs, options, ... }: let -unstable = import { config.allowUnfree = true; }; in { environment.systemPackages = with pkgs; [ cryptsetup @@ -18,11 +17,12 @@ in { whois ipcalc - unstable.argocd - unstable.kubernetes-helm - unstable.kustomize - unstable.terraform-ls - unstable.vault + argocd + kubernetes-helm + kustomize + pre-commit + terraform-ls + vault docker-compose fuse-overlayfs diff --git a/roles/desktop.nix b/roles/desktop.nix index bade0d7..ae794fb 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -1,4 +1,4 @@ -# Do not modify this file! It was generated by ‘nixos-generate-config’ +#g 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, ... }: @@ -7,7 +7,6 @@ let colors = config.colors; schema = pkgs.gsettings-desktop-schemas; datadir = "${schema}/share/gsettings-schemas/${schema.name}"; - unstable = import { config.allowUnfree = true; }; in { programs.droidcam.enable = true; @@ -110,6 +109,7 @@ in destination = "/etc/udev/rules.d/80-uinput.rules"; }) ]; + services.ratbagd.enable = true; fonts.enableDefaultPackages = true; fonts.fontconfig.antialias = true; @@ -172,7 +172,7 @@ in pcmanfm qrencode remmina - unstable.wezterm + wezterm uxplay solaar @@ -227,7 +227,7 @@ in services.printing.drivers = [ pkgs.gutenprint ]; services.avahi = { enable = true; - nssmdns = true; + nssmdns4 = true; publish = { enable = true; addresses = true; diff --git a/roles/dev.nix b/roles/dev.nix index c4fd14c..28172b9 100644 --- a/roles/dev.nix +++ b/roles/dev.nix @@ -8,28 +8,28 @@ in { environment.systemPackages = with pkgs; [ gnumake - go_1_19 + go rustup shellcheck unstable.golangci-lint unstable.gopls unstable.rust-analyzer - (python310.withPackages + (python311.withPackages (python-packages: with python-packages; [ black diagrams pymemcache pyyaml requests - python-lsp-server + ruff-lsp ]) ) mariadb-client musl - dbeaver + dbeaver-bin emacs29-pgtk gitAndTools.delta lazygit @@ -37,7 +37,6 @@ in { parallel sops tig - unstable.bazel openssl pkg-config diff --git a/roles/mail.nix b/roles/mail.nix index f2cd7e0..7615422 100644 --- a/roles/mail.nix +++ b/roles/mail.nix @@ -1,7 +1,6 @@ { config, lib, pkgs, ... }: let - unstable = import { config.allowUnfree = true; }; notcoal = pkgs.callPackage ../packages/notcoal { }; in { environment.systemPackages = with pkgs; [ @@ -11,7 +10,7 @@ in { notmuch notcoal thunderbird - unstable.astroid + astroid vdirsyncer ]; } diff --git a/roles/network.nix b/roles/network.nix index 843b7c8..a7b3b84 100644 --- a/roles/network.nix +++ b/roles/network.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: -let unstable = import { config.allowUnfree = true; }; +let in { networking.networkmanager.enable = true; diff --git a/roles/private.nix b/roles/private.nix index dd28440..408652f 100644 --- a/roles/private.nix +++ b/roles/private.nix @@ -1,7 +1,6 @@ { config, lib, pkgs, ... }: let - unstable = import { }; openscad-ls = pkgs.callPackage ../packages/openscad-language-server.nix { }; in { diff --git a/roles/work.nix b/roles/work.nix index c697556..502c1ae 100644 --- a/roles/work.nix +++ b/roles/work.nix @@ -42,11 +42,16 @@ in { #192.168.2.111 hass.home.f2o.io #192.168.2.111 sync.home.f2o.io + 192.168.2.111 pl.home.f2o.io #127.0.0.1 auth-dev.thobits.com 127.0.0.1 database 127.0.0.1 youtube.com 127.0.0.1 www.youtube.com + + 34.49.192.42 www.tbone.audio + 34.49.192.42 jobs.thomann.de + ''; environment.systemPackages = with pkgs; [ @@ -65,16 +70,15 @@ in { drone-cli govc ttyd - unstable.discord - unstable.go-jira - (unstable.google-cloud-sdk.withExtraComponents [ - unstable.google-cloud-sdk.components.gke-gcloud-auth-plugin + discord + (google-cloud-sdk.withExtraComponents [ + google-cloud-sdk.components.gke-gcloud-auth-plugin ]) myslack - unstable.velero + velero - unstable.obs-studio - unstable.obs-studio-plugins.wlrobs + obs-studio + obs-studio-plugins.wlrobs prusa-slicer ]; @@ -82,5 +86,4 @@ in { # yubikey support services.udev.packages = [ pkgs.yubikey-personalization ]; services.pcscd.enable = true; - } From 359b7cf8d041cc764c630903bcc22e1ede854aad Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Fri, 15 Nov 2024 11:05:08 +0100 Subject: [PATCH 226/227] up --- packages/neovim.nix | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/neovim.nix b/packages/neovim.nix index 933ab1c..2138777 100644 --- a/packages/neovim.nix +++ b/packages/neovim.nix @@ -98,7 +98,7 @@ neovim.override { noremap ml :fzf_lsp_layout let g:which_key_map.g = { 'name': '+git' } - noremap gs :!lazygit + noremap gs :call LazyGit " lang specifics let g:rustfmt_autosave = 1 @@ -110,10 +110,11 @@ neovim.override { airline easymotion editorconfig-vim - fzfWrapper - fzf-vim fzf-lsp-nvim + fzf-vim + fzfWrapper LanguageClient-neovim + lazygit-nvim ncm2 nnn-vim surround From aaf916de7507e5ca975c8735adf94dd5dbca1acd Mon Sep 17 00:00:00 2001 From: Stefan Schwarz Date: Mon, 20 Jan 2025 09:03:31 +0100 Subject: [PATCH 227/227] fix --- dotfiles/sway/config | 1 - hardware/framework.nix | 2 +- roles/desktop.nix | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/dotfiles/sway/config b/dotfiles/sway/config index 513f932..08d076c 100644 --- a/dotfiles/sway/config +++ b/dotfiles/sway/config @@ -39,7 +39,6 @@ input "2362:628:PIXA3854:00_093A:0274_Touchpad" click_method clickfinger output * bg $wallpaper fill output "BenQ Corporation BenQ SW2700 83H03922SL0" res --custom 2560x1440@60Hz output "BenQ Corporation BenQ SW2700 83H03922SL0" pos 1440 720 -output "BNQ BenQ PD2705Q W4N00777019" transform 270 output "BNQ BenQ PD2705Q W4N00777019" pos 0 0 output "Dell Inc. Dell U4919DW HZVZWP2" res 5120x1440 output eDP-1 scale 1.25 diff --git a/hardware/framework.nix b/hardware/framework.nix index d9f1e62..dd83777 100644 --- a/hardware/framework.nix +++ b/hardware/framework.nix @@ -72,7 +72,7 @@ in environment.variables = { VDPAU_DRIVER = lib.mkIf config.hardware.opengl.enable (lib.mkDefault "va_gl"); }; - hardware.opengl.extraPackages = with pkgs; [ + hardware.graphics.extraPackages = with pkgs; [ vaapiIntel libvdpau-va-gl intel-media-driver diff --git a/roles/desktop.nix b/roles/desktop.nix index ae794fb..9eea2de 100644 --- a/roles/desktop.nix +++ b/roles/desktop.nix @@ -181,7 +181,7 @@ in clipman wdisplays wl-clipboard - xdg_utils + xdg-utils xfce.thunar xfce.thunar-volman wtype