summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--krebs/3modules/makefu/default.nix15
-rw-r--r--krebs/5pkgs/simple/repo-sync/default.nix12
-rw-r--r--makefu/2configs/git/brain-retiolum.nix3
-rw-r--r--makefu/2configs/zsh-user.nix46
4 files changed, 69 insertions, 7 deletions
diff --git a/krebs/3modules/makefu/default.nix b/krebs/3modules/makefu/default.nix
index f80c397ee..21ea7e23c 100644
--- a/krebs/3modules/makefu/default.nix
+++ b/krebs/3modules/makefu/default.nix
@@ -6,6 +6,7 @@ with import <stockholm/lib>;
hosts = mapAttrs (_: setAttr "owner" config.krebs.users.makefu) {
drop = rec {
cores = 1;
+ managed = true;
nets = {
retiolum = {
ip4.addr = "10.243.177.9";
@@ -28,6 +29,7 @@ with import <stockholm/lib>;
};
studio = rec {
cores = 4;
+ managed = true;
ssh.privkey.path = <secrets/ssh_host_ed25519_key>;
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIqBR5gjJkR1TEIs2yx6JRoIOA7+/LJA6kjju8yCauFa studio";
nets = {
@@ -53,6 +55,7 @@ with import <stockholm/lib>;
fileleech = rec {
cores = 4;
+ managed = true;
ssh.privkey.path = <secrets/ssh_host_ed25519_key>;
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM+jB5QdPsAJc90alYDhAEP3sPDJb6eIj9bebj+rTBEJ fileleech";
nets = {
@@ -78,6 +81,7 @@ with import <stockholm/lib>;
pnp = {
cores = 1;
+ managed = true;
nets = {
retiolum = {
ip4.addr = "10.243.0.210";
@@ -101,6 +105,7 @@ with import <stockholm/lib>;
};
darth = {
cores = 4;
+ managed = true;
nets = {
retiolum = {
ip4.addr = "10.243.0.84";
@@ -171,6 +176,7 @@ with import <stockholm/lib>;
};
};
tsp = {
+ managed = true;
cores = 1;
nets = {
retiolum = {
@@ -198,6 +204,7 @@ with import <stockholm/lib>;
};
};
x = {
+ managed = true;
cores = 4;
nets = {
retiolum = {
@@ -243,6 +250,7 @@ with import <stockholm/lib>;
vbob = {
cores = 2;
+ managed = true;
nets = {
retiolum = {
ip4.addr = "10.243.1.91";
@@ -305,6 +313,7 @@ with import <stockholm/lib>;
};
wry = rec {
cores = 1;
+ managed = true;
extraZones = {
"krebsco.de" = ''
wry IN A ${nets.internet.ip4.addr}
@@ -349,6 +358,7 @@ with import <stockholm/lib>;
};
filepimp = rec {
cores = 1;
+ managed = true;
nets = {
lan = {
ip4.addr = "192.168.1.12";
@@ -378,6 +388,7 @@ with import <stockholm/lib>;
omo = rec {
cores = 2;
+ managed = true;
nets = {
lan = {
@@ -411,6 +422,7 @@ with import <stockholm/lib>;
};
wbob = rec {
cores = 4;
+ managed = true;
nets = {
siem = {
ip4.addr = "10.8.10.7";
@@ -452,6 +464,7 @@ with import <stockholm/lib>;
gum = rec {
cores = 2;
+ managed = true;
extraZones = {
"krebsco.de" = ''
@@ -514,6 +527,7 @@ with import <stockholm/lib>;
};
shoney = rec {
cores = 1;
+ managed = true;
nets = rec {
siem = {
via = internet;
@@ -562,6 +576,7 @@ with import <stockholm/lib>;
};
sdev = rec {
cores = 1;
+ managed = true;
ssh.privkey.path = <secrets/ssh_host_ed25519_key>;
ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILtm6ETzNgLcXNkrKs2VUEiGsTKBmOFpW2fazbzdUfOg sdev";
nets = {
diff --git a/krebs/5pkgs/simple/repo-sync/default.nix b/krebs/5pkgs/simple/repo-sync/default.nix
index 7cba87b09..20326901d 100644
--- a/krebs/5pkgs/simple/repo-sync/default.nix
+++ b/krebs/5pkgs/simple/repo-sync/default.nix
@@ -1,17 +1,19 @@
-{ lib, pkgs, python3Packages, fetchurl, ... }:
+{ lib, pkgs, python3Packages, fetchFromGitHub, ... }:
with python3Packages; buildPythonPackage rec {
name = "repo-sync-${version}";
- version = "0.2.6";
+ version = "0.2.7";
disabled = isPy26 || isPy27;
propagatedBuildInputs = [
docopt
GitPython
pkgs.git
];
- src = fetchurl {
- url = "https://pypi.python.org/packages/source/r/repo-sync/repo-sync-${version}.tar.gz";
- sha256 = "1hqa9qw9qg7mxgniqzys9szycs05llg4yik8a9wz94a437zzarsk";
+ src = fetchFromGitHub {
+ owner = "krebscode";
+ repo = "repo-sync";
+ rev = version;
+ sha256 = "1qjf1jmxf7xzwskybdys4vqncnwj9f3xwk1gv354zrla68s533cw";
};
meta = {
homepage = http://github.com/makefu/repo-sync;
diff --git a/makefu/2configs/git/brain-retiolum.nix b/makefu/2configs/git/brain-retiolum.nix
index 18275e3df..05754dc7f 100644
--- a/makefu/2configs/git/brain-retiolum.nix
+++ b/makefu/2configs/git/brain-retiolum.nix
@@ -8,6 +8,7 @@ let
krebs-repos = mapAttrs make-krebs-repo {
brain = { };
+ krebs-secrets = { };
};
@@ -33,7 +34,7 @@ let
set-owners repo [ config.krebs.users.makefu ] ++ set-ro-access repo krebsminister;
set-ro-access = with git; repo: user:
- optional repo.public {
+ singleton {
inherit user;
repo = [ repo ];
perm = fetch;
diff --git a/makefu/2configs/zsh-user.nix b/makefu/2configs/zsh-user.nix
index 453bfbe80..7615f4c0c 100644
--- a/makefu/2configs/zsh-user.nix
+++ b/makefu/2configs/zsh-user.nix
@@ -8,6 +8,7 @@ in
users.extraUsers.${mainUser}.shell = "/run/current-system/sw/bin/zsh";
programs.zsh= {
enable = true;
+ enableCompletion = false ; #manually at the end
interactiveShellInit = ''
HISTSIZE=900001
HISTFILESIZE=$HISTSIZE
@@ -29,7 +30,49 @@ in
unset SSH_AGENT_PID
export SSH_AUTH_SOCK="/run/user/$UID/gnupg/S.gpg-agent.ssh"
- '';
+
+ # fzf
+ __fsel_fzf() {
+ local cmd="''${FZF_CTRL_T_COMMAND:-"command find -L . -mindepth 1 \\( -path '*/\\.*' -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' -o -fstype 'proc' \\) -prune \
+ -o -type f -print \
+ -o -type d -print \
+ -o -type l -print 2> /dev/null | cut -b3-"}"
+ setopt localoptions pipefail 2> /dev/null
+ eval "$cmd" | FZF_DEFAULT_OPTS="--height ''${FZF_TMUX_HEIGHT:-40%} --reverse $FZF_DEFAULT_OPTS $FZF_CTRL_T_OPTS" $(__fzfcmd) -m "$@" | while read item; do
+ echo -n "''${(q)item} "
+ done
+ local ret=$?
+ echo
+ return $ret
+ }
+
+ __fzf_use_tmux__() {
+ [ -n "$TMUX_PANE" ] && [ "''${FZF_TMUX:-0}" != 0 ] && [ ''${LINES:-40} -gt 15 ]
+ }
+
+ __fzfcmd() {
+ __fzf_use_tmux__ &&
+ echo "fzf-tmux -d''${FZF_TMUX_HEIGHT:-40%}" || echo "fzf"
+ }
+
+ fzf-file-widget() {
+ LBUFFER="''${LBUFFER}$(__fsel_fzf)"
+ local ret=$?
+ zle redisplay
+ typeset -f zle-line-init >/dev/null && zle zle-line-init
+ return $ret
+ }
+ zle -N fzf-file-widget
+ bindkey '^T' fzf-file-widget
+
+ # Auto-Completion
+ for p in ''${(z)NIX_PROFILES}; do
+ fpath+=($p/share/zsh/site-functions $p/share/zsh/$ZSH_VERSION/functions $p/share/zsh/vendor-completions)
+ done
+ autoload -U compinit && compinit
+ compdef _pass brain
+ zstyle ':completion::complete:brain::' prefix "$HOME/brain"
+ '';
promptInit = ''
RPROMPT=""
@@ -47,5 +90,6 @@ in
krebs.per-user.${mainUser}.packages = [
pkgs.nix-zsh-completions
+ pkgs.fzf
];
}