summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlassulus <lassulus@lassul.us>2021-01-18 21:13:46 +0100
committerlassulus <lassulus@lassul.us>2021-01-18 21:13:46 +0100
commitc5b36af49fdfac5934edd376c8de84a6947ebd4a (patch)
treed467593699cad09b06c779f60ce6164d55bf6f20
parentdba3ca21f28dbb213d6dc44cfc301a958f87a623 (diff)
parentff6f5ef5e1cdbd27b2211c54643fa2754f888cbb (diff)
Merge remote-tracking branch 'ni/master'
-rw-r--r--krebs/5pkgs/haskell/scanner.nix9
-rw-r--r--krebs/5pkgs/simple/TabFS/default.nix6
-rw-r--r--krebs/5pkgs/simple/TabFS/src.json10
-rw-r--r--krebs/5pkgs/simple/git-preview.nix17
m---------submodules/krops0
-rw-r--r--tv/1systems/mu/config.nix6
-rw-r--r--tv/3modules/slock.nix5
-rw-r--r--tv/5pkgs/haskell/xmonad-tv/src/main.hs8
-rw-r--r--tv/5pkgs/simple/pinentry-urxvt/default.nix56
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
+ ''} \
+ "$@"
+ '';
+ }