diff options
-rw-r--r-- | krebs/5pkgs/haskell/scanner.nix | 9 | ||||
-rw-r--r-- | krebs/5pkgs/simple/TabFS/default.nix | 6 | ||||
-rw-r--r-- | krebs/5pkgs/simple/TabFS/src.json | 10 | ||||
-rw-r--r-- | krebs/5pkgs/simple/git-preview.nix | 17 | ||||
m--------- | submodules/krops | 0 | ||||
-rw-r--r-- | tv/1systems/mu/config.nix | 6 | ||||
-rw-r--r-- | tv/3modules/slock.nix | 5 | ||||
-rw-r--r-- | tv/5pkgs/haskell/xmonad-tv/src/main.hs | 8 | ||||
-rw-r--r-- | tv/5pkgs/simple/pinentry-urxvt/default.nix | 56 |
9 files changed, 87 insertions, 30 deletions
diff --git a/krebs/5pkgs/haskell/scanner.nix b/krebs/5pkgs/haskell/scanner.nix index 071fd757f..28f89b069 100644 --- a/krebs/5pkgs/haskell/scanner.nix +++ b/krebs/5pkgs/haskell/scanner.nix @@ -1,12 +1,13 @@ { mkDerivation, base, fetchgit, stdenv }: mkDerivation { pname = "scanner"; - version = "1.0.0"; + version = "1.0.1"; src = fetchgit { - url = http://cgit.ni.krebsco.de/scanner; - rev = "7f091a3bc152ad3974a1873b460fa1759bf8dcad"; + url = "http://cgit.ni.krebsco.de/scanner"; sha256 = "1lgl158axczsm4fx53fyq1d4116v91jsx4dbz66ka4k1ljqrmhgn"; + rev = "7f091a3bc152ad3974a1873b460fa1759bf8dcad"; + fetchSubmodules = true; }; libraryHaskellDepends = [ base ]; - license = stdenv.lib.licenses.wtfpl; + license = stdenv.lib.licenses.mit; } diff --git a/krebs/5pkgs/simple/TabFS/default.nix b/krebs/5pkgs/simple/TabFS/default.nix index 23fdf519d..69de919eb 100644 --- a/krebs/5pkgs/simple/TabFS/default.nix +++ b/krebs/5pkgs/simple/TabFS/default.nix @@ -3,11 +3,7 @@ stdenv.mkDerivation rec { name = "TabFS"; - src = pkgs.fetchgit { - url = https://cgit.krebsco.de/TabFS; - rev = "1fc4845283a0e6aa46a8d8978f356d5ccdcedd13"; - sha256 = "0bsm5fhxrr6zwbnm9p10h9pwm85llr02g2ch97a62r62dhjjrc8h"; - }; + src = pkgs.fetchgit (lib.importJSON ./src.json); phases = [ "unpackPhase" diff --git a/krebs/5pkgs/simple/TabFS/src.json b/krebs/5pkgs/simple/TabFS/src.json new file mode 100644 index 000000000..24e36aef3 --- /dev/null +++ b/krebs/5pkgs/simple/TabFS/src.json @@ -0,0 +1,10 @@ +{ + "url": "https://cgit.krebsco.de/TabFS", + "rev": "a6045e0e29b85e3e66c468f3561009ded1db6ec5", + "date": "2021-01-14T23:56:09+01:00", + "path": "/nix/store/mbcywm1yq5vr7awxqb533faz34minfax-TabFS", + "sha256": "1z0kj95zh0jl8laa0whra1jys8pws3199sy29vmlv2nxrkz13blv", + "fetchSubmodules": false, + "deepClone": false, + "leaveDotGit": false +} diff --git a/krebs/5pkgs/simple/git-preview.nix b/krebs/5pkgs/simple/git-preview.nix deleted file mode 100644 index d6c9579a7..000000000 --- a/krebs/5pkgs/simple/git-preview.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ coreutils, git, writeDashBin }: - -writeDashBin "git-preview" '' - set -efu - head_commit=$(${git}/bin/git log -1 --format=%H) - merge_commit=$1; shift - merge_message='Merge for git-preview' - preview_dir=$(${coreutils}/bin/mktemp --tmpdir -d git-preview.XXXXXXXX) - preview_branch=$(${coreutils}/bin/basename "$preview_dir") - ${git}/bin/git worktree add -b "$preview_branch" "$preview_dir" >/dev/null - ${git}/bin/git -C "$preview_dir" checkout "$head_commit" - ${git}/bin/git -C "$preview_dir" merge -m "$merge_message" "$merge_commit" - ${git}/bin/git -C "$preview_dir" diff "$head_commit.." "$@" & - ${git}/bin/git branch -fd "$preview_branch" - ${coreutils}/bin/rm -fR "$preview_dir" - wait -'' diff --git a/submodules/krops b/submodules/krops -Subproject 5ea125514e48c630120fbb6a44e9ae0c7932a12 +Subproject c2fa48550f2bb46009b9cecdb9ac838dc402ce1 diff --git a/tv/1systems/mu/config.nix b/tv/1systems/mu/config.nix index d5169281d..8fd6ee45b 100644 --- a/tv/1systems/mu/config.nix +++ b/tv/1systems/mu/config.nix @@ -17,6 +17,7 @@ with import <stockholm/lib>; boot.initrd.luks.devices.muca.device = "/dev/sda2"; boot.initrd.availableKernelModules = [ "ahci" ]; boot.kernelModules = [ "fbcon" "kvm-intel" ]; + boot.kernelParams = [ "fsck.repair=yes" ]; boot.extraModulePackages = [ ]; fileSystems = { @@ -109,9 +110,8 @@ with import <stockholm/lib>; services.xserver.desktopManager.plasma5.enable = true; - services.xserver.displayManager.lightdm.autoLogin.enable = true; - services.xserver.displayManager.lightdm.autoLogin.user = "vv"; - services.xserver.displayManager.lightdm.enable = true; + services.xserver.displayManager.autoLogin.enable = true; + services.xserver.displayManager.autoLogin.user = "vv"; users.users.vv = { inherit (config.krebs.users.vv) home uid; diff --git a/tv/3modules/slock.nix b/tv/3modules/slock.nix index 53f7f1f62..926adc8e0 100644 --- a/tv/3modules/slock.nix +++ b/tv/3modules/slock.nix @@ -28,6 +28,9 @@ in { }); ''; systemd.services."slock-${cfg.user.name}@" = { + conflicts = [ + "picom@%i.target" + ]; environment = { DISPLAY = ":%I"; LD_PRELOAD = pkgs.runCommandCC "slock-${cfg.user.name}.so" { @@ -61,6 +64,8 @@ in { restartIfChanged = false; serviceConfig = { ExecStart = "${pkgs.slock}/bin/slock"; + ExecStopPost = + "+${pkgs.systemd}/bin/systemctl start xsession@%i.target"; OOMScoreAdjust = -1000; Restart = "on-failure"; RestartSec = "100ms"; diff --git a/tv/5pkgs/haskell/xmonad-tv/src/main.hs b/tv/5pkgs/haskell/xmonad-tv/src/main.hs index b8ddd27e8..50b03d81c 100644 --- a/tv/5pkgs/haskell/xmonad-tv/src/main.hs +++ b/tv/5pkgs/haskell/xmonad-tv/src/main.hs @@ -8,6 +8,7 @@ import System.Exit (exitFailure) import Control.Exception import Control.Monad.Extra (whenJustM) +import qualified Data.List import Graphics.X11.ExtraTypes.XF86 import Text.Read (readEither) import XMonad @@ -59,6 +60,11 @@ main = getArgs >>= \case args -> hPutStrLn stderr ("bad arguments: " <> show args) >> exitFailure +queryPrefix :: Query String -> String -> Query Bool +queryPrefix query prefix = + fmap (Data.List.isPrefixOf prefix) query + + mainNoArgs :: IO () mainNoArgs = do workspaces0 <- getWorkspaces0 @@ -82,7 +88,7 @@ mainNoArgs = do , manageHook = composeAll [ appName =? "fzmenu-urxvt" --> doCenterFloat - , appName =? "pinentry" --> doCenterFloat + , appName `queryPrefix` "pinentry" --> doCenterFloat , title =? "Upload to Imgur" --> doRectFloat (W.RationalRect 0 0 (1 % 8) (1 % 8)) , placeHook (smart (1,0)) diff --git a/tv/5pkgs/simple/pinentry-urxvt/default.nix b/tv/5pkgs/simple/pinentry-urxvt/default.nix new file mode 100644 index 000000000..65b76c077 --- /dev/null +++ b/tv/5pkgs/simple/pinentry-urxvt/default.nix @@ -0,0 +1,56 @@ +{ pkgs, ... }@args: + +let + lib = import <stockholm/lib>; + + # config cannot be declared in the input attribute set because that would + # cause callPackage to inject the wrong config. Instead, get it from ... + # via args. + config = args.config or {}; + + cfg = eval.config; + + eval = lib.evalModules { + modules = lib.singleton { + _file = toString ./default.nix; + imports = lib.singleton config; + options = { + appName = lib.mkOption { + default = "pinentry-urxvt"; + type = lib.types.str; + }; + display = lib.mkOption { + default = ":0"; + type = lib.types.str; + }; + }; + }; + }; + + +in + + pkgs.write "pinentry-urxvt" { + "/bin/pinentry".link = pkgs.writeDash "pinentry-urxvt-wrapper" '' + set -efu + exec 3<&0 4>&1 5>&2 + export DISPLAY=${lib.shell.escape cfg.display} + exec ${pkgs.rxvt_unicode}/bin/urxvt \ + -name ${lib.shell.escape cfg.appName} \ + -e ${pkgs.writeDash "pinentry-urxvt-tty" '' + set -efu + exec 2>&5 + TTY=$(${pkgs.coreutils}/bin/tty) + while read -r line <&3; do + case $line in + 'OPTION ttyname='*) + echo "OPTION ttyname=$TTY" + ;; + *) + echo "$line" + esac + done | ${pkgs.pinentry.tty}/bin/pinentry-tty "$@" >&4 + ''} \ + "$@" + ''; + } |