summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--krebs/5pkgs/simple/dic/default.nix6
-rw-r--r--krebs/5pkgs/simple/fzfmenu/default.nix130
-rw-r--r--krebs/5pkgs/simple/red.nix23
m---------submodules/krops0
-rw-r--r--tv/1systems/alnus/config.nix10
-rw-r--r--tv/1systems/mu/config.nix12
6 files changed, 122 insertions, 59 deletions
diff --git a/krebs/5pkgs/simple/dic/default.nix b/krebs/5pkgs/simple/dic/default.nix
index 6533a1b9b..a74899630 100644
--- a/krebs/5pkgs/simple/dic/default.nix
+++ b/krebs/5pkgs/simple/dic/default.nix
@@ -4,9 +4,9 @@ stdenv.mkDerivation {
name = "dic";
src = fetchgit {
- url = http://cgit.ni.krebsco.de/dic;
- rev = "refs/tags/v1.1.0";
- sha256 = "1xzn20b9kfz96nvjli8grpi11v80jbl0dmifksmirwcj5v81ndav";
+ url = https://cgit.ni.krebsco.de/dic;
+ rev = "refs/tags/v1.1.1";
+ sha256 = "1gbj967a5hj53fdkkxijqgwnl9hb8kskz0cmpjq7v65ffz3v6vag";
};
phases = [
diff --git a/krebs/5pkgs/simple/fzfmenu/default.nix b/krebs/5pkgs/simple/fzfmenu/default.nix
index 64e95d233..537b90f42 100644
--- a/krebs/5pkgs/simple/fzfmenu/default.nix
+++ b/krebs/5pkgs/simple/fzfmenu/default.nix
@@ -1,55 +1,97 @@
-{ pkgs, ... }:
+with import <stockholm/lib>;
+{ pkgs, ... }@args:
+
+let
+ # 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 = evalModules {
+ modules = singleton {
+ _file = toString ./profile.nix;
+ imports = singleton config;
+ options = {
+ appName = mkOption {
+ default = "fzfmenu";
+ type = types.label;
+ };
+ defaultPrompt = mkOption {
+ default = ">";
+ type = types.str;
+ };
+ printQuery = mkOption {
+ default = true;
+ type = types.bool;
+ };
+ reverse = mkOption {
+ default = true;
+ type = types.bool;
+ };
+ windowTitle = mkOption {
+ default = "fzfmenu";
+ type = types.str;
+ };
+ };
+ };
+ };
+in
pkgs.writeDashBin "fzfmenu" ''
set -efu
- PROMPT=">"
- for i in "$@"
- do
- case $i in
+
+ # Spawn terminal if called without one, like e.g. from a window manager.
+ if [ -z ''${TERM+x} ]; then
+ exec 3<&0
+ exec 4>&1
+ export FZFMENU_INPUT_FD=3
+ export FZFMENU_OUTPUT_FD=4
+ exec ${pkgs.rxvt_unicode}/bin/urxvt \
+ -name ${cfg.appName} \
+ -title ${shell.escape cfg.windowTitle} \
+ -e "$0" "$@"
+ else
+ exec 0<&''${FZFMENU_INPUT_FD-0}
+ exec 1>&''${FZFMENU_OUTPUT_FD-1}
+ fi
+
+ PROMPT=${shell.escape cfg.defaultPrompt}
+ for i in "$@"; do
+ case $i in
-p)
- PROMPT="$2"
- shift
- shift
- break
- ;;
+ PROMPT=$2
+ shift 2
+ break
+ ;;
-l)
- # no reason to filter number of lines
- LINES="$2"
- shift
- shift
- break
- ;;
+ # no reason to filter number of lines
+ LINES=$2
+ shift 2
+ break
+ ;;
-i)
- # we do this anyway
- shift
- break
- ;;
+ # we do this anyway
+ shift
+ break
+ ;;
*)
- echo "Unknown option $1" >&2
- shift
- ;;
- esac
+ echo "Unknown option $1" >&2
+ shift
+ ;;
+ esac
done
- INPUT=$(${pkgs.coreutils}/bin/cat)
- OUTPUT="$(${pkgs.coreutils}/bin/mktemp)"
- if [ -z ''${TERM+x} ]; then #check if we can print fzf in the shell
- ${pkgs.rxvt_unicode}/bin/urxvt \
- -name fzfmenu -title fzfmenu \
- -e ${pkgs.dash}/bin/dash -c \
- "echo \"$INPUT\" | ${pkgs.fzf}/bin/fzf \
- --history=/dev/null \
- --print-query \
- --prompt=\"$PROMPT\" \
- --reverse \
- > \"$OUTPUT\"" 2>/dev/null
- else
- echo "$INPUT" | ${pkgs.fzf}/bin/fzf \
+
+ if test -n "''${FZFMENU_FZF_DEFAULT_OPTS-}"; then
+ FZF_DEFAULT_OPTS=''${FZFMENU_FZF_DEFAULT_OPTS-}
+ export FZF_DEFAULT_OPTS
+ fi
+
+ ${pkgs.fzf}/bin/fzf \
--history=/dev/null \
- --print-query \
--prompt="$PROMPT" \
- --reverse \
- > "$OUTPUT"
- fi
- ${pkgs.coreutils}/bin/tail -1 "$OUTPUT"
- ${pkgs.coreutils}/bin/rm "$OUTPUT"
+ ${optionalString cfg.reverse "--reverse"} \
+ ${optionalString cfg.printQuery "--print-query"} \
+ ${optionalString cfg.printQuery "| ${pkgs.coreutils}/bin/tail -1"}
''
diff --git a/krebs/5pkgs/simple/red.nix b/krebs/5pkgs/simple/red.nix
new file mode 100644
index 000000000..51f02aa5c
--- /dev/null
+++ b/krebs/5pkgs/simple/red.nix
@@ -0,0 +1,23 @@
+{ buildGoModule, fetchFromGitHub, lib }:
+
+buildGoModule rec {
+ pname = "red";
+ version = "g${lib.substring 0 7 src.rev}";
+
+ src = fetchFromGitHub {
+ owner = "antonmedv";
+ repo = "red";
+ rev = "0bfb499760f391d09c6addec2527b0f77eaacdd6";
+ sha256 = "0i8f8ih3z97zzbkjkwy4y8z75izm1fscq0rr1g77q7z3kz1lrgrx";
+ };
+
+ modSha256 = "0640x6p5hi7yp001cw13z5a17bi9vgd3gij5fxa1y06d3848cv7l";
+
+ meta = {
+ description = "Terminal log analysis tools";
+ homepage = https://github.com/analysis/red;
+ license = lib.licenses.mit;
+ maintainers = [ lib.maintainers.tv ];
+ platforms = lib.platforms.linux;
+ };
+}
diff --git a/submodules/krops b/submodules/krops
-Subproject 55aa2c77ce8183f3d2b24f54efa33ab6a42e1e0
+Subproject 3e731035ed44659624e6d00bbb35570f2b8811f
diff --git a/tv/1systems/alnus/config.nix b/tv/1systems/alnus/config.nix
index 21583f741..66bd52ab2 100644
--- a/tv/1systems/alnus/config.nix
+++ b/tv/1systems/alnus/config.nix
@@ -12,7 +12,7 @@ with import <stockholm/lib>;
initrd = {
availableKernelModules = [ "ahci" ];
luks.cryptoModules = [ "aes" "sha512" "xts" ];
- luks.devices.luksroot.devices = "/dev/sda2";
+ luks.devices.luksroot.device = "/dev/sda2";
};
};
@@ -71,10 +71,10 @@ with import <stockholm/lib>;
};
desktopManager.xfce.enable = true;
- displayManager.auto = {
- enable = true;
- user = "dv";
- };
+
+ displayManager.lightdm.autoLogin.enable = true;
+ displayManager.lightdm.autoLogin.user = "dv";
+ displayManager.lightdm.enable = true;
};
users.users.dv = {
diff --git a/tv/1systems/mu/config.nix b/tv/1systems/mu/config.nix
index 145c73c06..b6a25a2b8 100644
--- a/tv/1systems/mu/config.nix
+++ b/tv/1systems/mu/config.nix
@@ -108,13 +108,11 @@ with import <stockholm/lib>;
twoFingerScroll = true;
};
- services.xserver.desktopManager.plasma5 = {
- enable = true;
- };
- services.xserver.displayManager.auto = {
- enable = true;
- user = "vv";
- };
+ 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;
users.users.vv = {
inherit (config.krebs.users.vv) home uid;