diff --git a/modules/applications/tlp/default.nix b/modules/applications/tlp/default.nix deleted file mode 100644 index 19ed304..0000000 --- a/modules/applications/tlp/default.nix +++ /dev/null @@ -1,128 +0,0 @@ -{ stdenv -, lib -, checkbashisms -, coreutils -, ethtool -, fetchFromGitHub -, gawk -, gnugrep -, gnused -, hdparm -, iw -, kmod -, makeWrapper -, pciutils -, perl -, shellcheck -, smartmontools -, systemd -, utillinux -# , x86_energy_perf_policy - # RDW only works with NetworkManager, and thus is optional with default off -, enableRDW ? false -, networkmanager -}: stdenv.mkDerivation rec { - pname = "tlp"; - version = "1.3.1"; - - src = fetchFromGitHub { - owner = "linrunner"; - repo = "TLP"; - rev = version; - sha256 = "14fcnaz9pw534v4d8dddqq4wcvpf1kghr8zlrk62r5lrl46sp1p5"; - }; - - # XXX: See patch files for relevant explanations. - patches = [ ./patches/fix-makefile-sed.patch ./patches/tlp-sleep-service.patch ]; - - buildInputs = [ perl ]; - nativeBuildInputs = [ makeWrapper gnused ]; - - # XXX: While [1] states that DESTDIR should not be used, and that the correct - # variable to set is, in fact, PREFIX, tlp thinks otherwise. The Makefile for - # tlp concerns itself only with DESTDIR [2] (possibly incorrectly) and so we set - # that as opposed to PREFIX, despite what [1] says. - # - # [1]: https://github.com/NixOS/nixpkgs/issues/65718 - # [2]: https://github.com/linrunner/TLP/blob/ab788abf4936dfb44fbb408afc34af834230a64d/Makefile#L4-L46 - makeFlags = [ - "DESTDIR=${placeholder "out"}" - - "TLP_NO_INIT=1" - "TLP_WITH_ELOGIND=0" - "TLP_WITH_SYSTEMD=1" - - "TLP_BIN=/bin" - "TLP_CONFDEF=/share/tlp/defaults.conf" - "TLP_FLIB=/share/tlp/func.d" - "TLP_MAN=/share/man" - "TLP_META=/share/metainfo" - "TLP_SBIN=/sbin" - "TLP_SHCPL=/share/bash-completion/completions" - "TLP_TLIB=/share/tlp" - ]; - - installTargets = [ "install-tlp" "install-man" ] - ++ lib.optionals enableRDW [ "install-rdw" "install-man-rdw" ]; - - # XXX: This is disabled because it's basically just noise since upstream - # itself does not seem to care about the zillion shellcheck errors. - doCheck = false; - checkInputs = [ checkbashisms shellcheck ]; - checkTarget = [ "checkall" ]; - - postInstall = let - paths = lib.makeBinPath ( - [ - coreutils - ethtool - gawk - gnugrep - gnused - hdparm - iw - kmod - pciutils - perl - smartmontools - systemd - utillinux - # x86_energy_perf_policy - ] ++ lib.optional enableRDW networkmanager - ); - in - '' - fixup_perl=( - $out/share/tlp/tlp-pcilist - $out/share/tlp/tlp-readconfs - $out/share/tlp/tlp-usblist - $out/share/tlp/tpacpi-bat - ) - for f in "''${fixup_perl[@]}"; do - wrapProgram "$f" --prefix PATH : "${paths}" - done - - fixup_bash=( - $out/bin/* - $out/etc/NetworkManager/dispatcher.d/* - $out/lib/udev/tlp-* - $out/sbin/* - $out/share/tlp/func.d/* - $out/share/tlp/tlp-func-base - ) - for f in "''${fixup_bash[@]}"; do - sed -i '2iexport PATH=${paths}:$PATH' "$f" - done - mkdir -p $out/etc/default - cp ./defaults.conf $out/etc/default/tlp - ''; - - meta = with lib; { - description = "Advanced Power Management for Linux"; - homepage = - "https://linrunner.de/en/tlp/docs/tlp-linux-advanced-power-management.html"; - platforms = platforms.linux; - maintainers = with maintainers; [ abbradar lovesegfault ]; - license = licenses.gpl2Plus; - }; -} diff --git a/modules/applications/tlp/patches/fix-makefile-sed.patch b/modules/applications/tlp/patches/fix-makefile-sed.patch deleted file mode 100644 index 942c9a5..0000000 --- a/modules/applications/tlp/patches/fix-makefile-sed.patch +++ /dev/null @@ -1,46 +0,0 @@ -commit c44347b3b813e209fff537b4d46d23430727a5e2 -Author: Bernardo Meurer -Date: Tue Feb 25 21:27:39 2020 -0800 - - makefile: correctly sed paths - - The default Makefile for tlp makes a mess with catenating `DESTDIR` to - everything, but then not actualy using the catenated (_ prefixed) - variables to sed it's `.in` files. - - This patch makes sure that it correctly sets the paths, taking `DESTDIR` - in account where it makes sense (e.g. /bin where we want $out/bin) but - not where it doesn't (/etc/tlp.conf should be just that). - - The reason DESTDIR is used at all, as opposed to the more appropriate - PREFIX, is covered in the nix formula, and is (also) due to the Makefile - being a bit "different." - -diff --git a/Makefile b/Makefile -index b5af74e..95122df 100644 ---- a/Makefile -+++ b/Makefile -@@ -47,17 +47,17 @@ _TPACPIBAT = $(DESTDIR)$(TPACPIBAT) - - SED = sed \ - -e "s|@TLPVER@|$(TLPVER)|g" \ -- -e "s|@TLP_SBIN@|$(TLP_SBIN)|g" \ -- -e "s|@TLP_TLIB@|$(TLP_TLIB)|g" \ -- -e "s|@TLP_FLIB@|$(TLP_FLIB)|g" \ -- -e "s|@TLP_ULIB@|$(TLP_ULIB)|g" \ -+ -e "s|@TLP_SBIN@|$(_SBIN)|g" \ -+ -e "s|@TLP_TLIB@|$(_TLIB)|g" \ -+ -e "s|@TLP_FLIB@|$(_FLIB)|g" \ -+ -e "s|@TLP_ULIB@|$(_ULIB)|g" \ - -e "s|@TLP_CONFUSR@|$(TLP_CONFUSR)|g" \ - -e "s|@TLP_CONFDIR@|$(TLP_CONFDIR)|g" \ -- -e "s|@TLP_CONFDEF@|$(TLP_CONFDEF)|g" \ -+ -e "s|@TLP_CONFDEF@|$(_CONFDEF)|g" \ - -e "s|@TLP_CONF@|$(TLP_CONF)|g" \ - -e "s|@TLP_RUN@|$(TLP_RUN)|g" \ - -e "s|@TLP_VAR@|$(TLP_VAR)|g" \ -- -e "s|@TPACPIBAT@|$(TPACPIBAT)|g" -+ -e "s|@TPACPIBAT@|$(_TPACPIBAT)|g" - - INFILES = \ - tlp \ diff --git a/modules/applications/tlp/patches/tlp-sleep-service.patch b/modules/applications/tlp/patches/tlp-sleep-service.patch deleted file mode 100644 index b37c728..0000000 --- a/modules/applications/tlp/patches/tlp-sleep-service.patch +++ /dev/null @@ -1,95 +0,0 @@ -commit ca94cd56210067e2a55c1f413bd7713f7d338f9f -Author: Bernardo Meurer -Date: Wed Feb 26 10:46:23 2020 -0800 - - tlp-sleep.service: reintroduce - - This patch reintroduces tlp-sleep as a systemd unit as opposed to a - systemd system-sleep hook script. This is due to the recommendation by - systemd itself to not use the hook scripts. As per the manual: - - > Note that scripts or binaries dropped in /usr/lib/systemd/system-sleep/ - > are intended for local use only and should be considered hacks. If - > applications want to react to system suspend/hibernation and resume, - > they should rather use the Inhibitor interface[1]. - -diff --git a/Makefile b/Makefile -index 95122df..0e9230a 100644 ---- a/Makefile -+++ b/Makefile -@@ -70,6 +70,7 @@ INFILES = \ - tlp.rules \ - tlp-readconfs \ - tlp-run-on \ -+ tlp-sleep.service \ - tlp.service \ - tlp-stat \ - tlp.upstart \ -@@ -99,7 +100,6 @@ SHFILES = \ - tlp-rdw-udev.in \ - tlp-rf.in \ - tlp-run-on.in \ -- tlp-sleep \ - tlp-sleep.elogind \ - tlp-stat.in \ - tlp-usb-udev.in -@@ -147,7 +147,7 @@ ifneq ($(TLP_NO_INIT),1) - endif - ifneq ($(TLP_WITH_SYSTEMD),0) - install -D -m 644 tlp.service $(_SYSD)/tlp.service -- install -D -m 755 tlp-sleep $(_SDSL)/tlp -+ install -D -m 644 tlp-sleep.service $(_SYSD)/tlp-sleep.service - endif - ifneq ($(TLP_WITH_ELOGIND),0) - install -D -m 755 tlp-sleep.elogind $(_ELOD)/49-tlp-sleep -@@ -204,7 +204,7 @@ uninstall-tlp: - rm $(_ULIB)/rules.d/85-tlp.rules - rm -f $(_SYSV)/tlp - rm -f $(_SYSD)/tlp.service -- rm -f $(_SDSL)/tlp-sleep -+ rm -f $(_SYSD)/tlp-sleep.service - rm -f $(_ELOD)/49-tlp-sleep - rm -f $(_SHCPL)/tlp-stat - rm -f $(_SHCPL)/bluetooth -diff --git a/tlp-sleep b/tlp-sleep -deleted file mode 100644 -index 3de85ce..0000000 ---- a/tlp-sleep -+++ /dev/null -@@ -1,11 +0,0 @@ --#!/bin/sh -- --# tlp - systemd suspend/resume hook --# --# Copyright (c) 2020 Thomas Koch and others. --# This software is licensed under the GPL v2 or later. -- --case $1 in -- pre) tlp suspend ;; -- post) tlp resume ;; --esac -diff --git a/tlp-sleep.service.in b/tlp-sleep.service.in -new file mode 100644 -index 0000000..4ac17bd ---- /dev/null -+++ b/tlp-sleep.service.in -@@ -0,0 +1,19 @@ -+# tlp - systemd suspend/resume service -+# -+# Copyright (c) 2020 Thomas Koch and others. -+# This software is licensed under the GPL v2 or later. -+ -+[Unit] -+Description=TLP suspend/resume -+Before=sleep.target -+StopWhenUnneeded=yes -+Documentation=https://linrunner.de/tlp -+ -+[Service] -+Type=oneshot -+RemainAfterExit=yes -+ExecStart=@TLP_SBIN@/tlp suspend -+ExecStop=@TLP_SBIN@/tlp resume -+ -+[Install] -+WantedBy=sleep.target diff --git a/modules/services.nix b/modules/services.nix index 529df13..eb61538 100644 --- a/modules/services.nix +++ b/modules/services.nix @@ -31,7 +31,7 @@ in { drivers = [ pkgs.gutenprint ]; }; programs.dconf.enable = true; - programs.gnupg.agent.enable = true; + # programs.gnupg.agent.enable = true; services.accounts-daemon.enable = true; diff --git a/modules/workspace/misc.nix b/modules/workspace/misc.nix index 8bd3a8a..49a9be1 100644 --- a/modules/workspace/misc.nix +++ b/modules/workspace/misc.nix @@ -8,6 +8,12 @@ NIX_AUTO_RUN = "1"; }; + # GPG with SSH + environment.shellInit = '' + export GPG_TTY="$(tty)" + gpg-connect-agent /bye + ''; + services.atd.enable = true; home-manager.users.alukard = { @@ -29,6 +35,18 @@ }; }; }; + + # GPG with SSH + services.gpg-agent = { + enable = true; + enableSshSupport = true; + pinentryFlavor = "gtk2"; + sshKeys = [ "2356C0BF89D7EF7B322FA06C54A95E8E018FEBD2" ]; + }; + programs.gpg.enable = true; + home.sessionVariables.SSH_AUTH_SOCK = "/run/user/1000/gnupg/S.gpg-agent.ssh"; + # --END-- + programs.direnv = { enable = true; enableZshIntegration = true;