diff options
author | makefu <github@syntax-fehler.de> | 2015-12-28 21:00:27 +0100 |
---|---|---|
committer | makefu <github@syntax-fehler.de> | 2015-12-28 21:00:27 +0100 |
commit | c7c166ea5d1cbb30e373444c699cf8dc694a1151 (patch) | |
tree | 28054e7877fe8ef7077750765c2046be4cb5ae10 | |
parent | 1298a51af8626bc0b573b3c3371c7bea6cb91421 (diff) | |
parent | c44c38ccc854d0a0f0bf08ae46d4f42f31fcced1 (diff) |
Merge remote-tracking branch 'cd/master'
-rw-r--r-- | tv/2configs/backup.nix | 42 | ||||
-rw-r--r-- | tv/2configs/default.nix | 1 | ||||
-rw-r--r-- | tv/2configs/vim.nix | 34 | ||||
-rw-r--r-- | tv/2configs/xserver/default.nix | 2 |
4 files changed, 73 insertions, 6 deletions
diff --git a/tv/2configs/backup.nix b/tv/2configs/backup.nix new file mode 100644 index 0000000..51d3bb8 --- /dev/null +++ b/tv/2configs/backup.nix @@ -0,0 +1,42 @@ +{ config, lib, ... }: +with lib; +{ + krebs.backup.plans = addNames { + xu-test-cd = { + method = "push"; + + src = { host = config.krebs.hosts.xu; path = "/tmp/xu-test"; }; + dst = { host = config.krebs.hosts.cd; path = "/tmp/backups/xu-test"; }; + + #startAt = "0,6,12,18:00"; + startAt = "minutely"; + snapshots = { + minutely = { format = "%Y-%m-%dT%H:%M"; retain = 5; }; + hourly = { format = "%Y-%m-%dT%H"; retain = 4; }; + daily = { format = "%Y-%m-%d"; retain = 7; }; + weekly = { format = "%YW%W"; retain = 4; }; + monthly = { format = "%Y-%m"; retain = 12; }; + yearly = { format = "%Y"; }; + }; + }; + #xu-test-wu = { + # method = "push"; + # dst = { user = tv; host = wu; path = "/krebs/backup/xu-test"; }; + #}; + cd-test-xu = { + method = "pull"; + src = { host = config.krebs.hosts.cd; path = "/tmp/cd-test"; }; + dst = { host = config.krebs.hosts.xu; path = "/tmp/backups/cd-test"; }; + startAt = "minutely"; + snapshots = { + minutely = { format = "%Y-%m-%dT%H:%M"; retain = 5; }; + hourly = { format = "%Y-%m-%dT%H"; retain = 4; }; + daily = { format = "%Y-%m-%d"; retain = 7; }; + weekly = { format = "%YW%W"; retain = 4; }; + monthly = { format = "%Y-%m"; retain = 12; }; + yearly = { format = "%Y"; }; + }; + }; + + }; +} diff --git a/tv/2configs/default.nix b/tv/2configs/default.nix index 3400c13..c300633 100644 --- a/tv/2configs/default.nix +++ b/tv/2configs/default.nix @@ -28,6 +28,7 @@ with lib; imports = [ <secrets> + ./backup.nix ./vim.nix { # stockholm dependencies diff --git a/tv/2configs/vim.nix b/tv/2configs/vim.nix index 0822fb5..0537fa7 100644 --- a/tv/2configs/vim.nix +++ b/tv/2configs/vim.nix @@ -4,7 +4,7 @@ with lib; let out = { environment.systemPackages = [ - pkgs.vim + vim ]; # Nano really is just a stupid name for Vim. @@ -22,14 +22,38 @@ let "${pkgs.vimPlugins.undotree}/share/vim-plugins/undotree" ]; + dirs = { + backupdir = "$HOME/.cache/vim/backup"; + swapdir = "$HOME/.cache/vim/swap"; + undodir = "$HOME/.cache/vim/undo"; + }; + files = { + viminfo = "$HOME/.cache/vim/info"; + }; + + mkdirs = let + dirOf = s: let out = concatStringsSep "/" (init (splitString "/" s)); + in assert out != ""; out; + alldirs = attrValues dirs ++ map dirOf (attrValues files); + in unique (sort lessThan alldirs); + + vim = pkgs.writeScriptBin "vim" '' + #! ${pkgs.dash}/bin/dash + set -f + umask 0077 + ${concatStringsSep "\n" (map (x: "mkdir -p ${x}") mkdirs)} + umask 0022 + exec ${pkgs.vim}/bin/vim "$@" + ''; + vimrc = pkgs.writeText "vimrc" '' set nocompatible set autoindent set backspace=indent,eol,start set backup - set backupdir=$HOME/.vim/backup/ - set directory=$HOME/.vim/cache// + set backupdir=${dirs.backupdir}/ + set directory=${dirs.swapdir}// set hlsearch set incsearch set mouse=a @@ -40,11 +64,11 @@ let set showcmd set showmatch set ttimeoutlen=0 - set undodir=$HOME/.vim/undo + set undodir=${dirs.undodir} set undofile set undolevels=1000000 set undoreload=1000000 - set viminfo='20,<1000,s100,h,n$HOME/.vim/cache/info + set viminfo='20,<1000,s100,h,n${files.viminfo} set visualbell set wildignore+=*.o,*.class,*.hi,*.dyn_hi,*.dyn_o set wildmenu diff --git a/tv/2configs/xserver/default.nix b/tv/2configs/xserver/default.nix index f56da7d..facde4e 100644 --- a/tv/2configs/xserver/default.nix +++ b/tv/2configs/xserver/default.nix @@ -48,7 +48,7 @@ let "slock" ]; - systemd.services.display-manager = mkForce {}; + systemd.services.display-manager.enable = false; services.xserver.enable = true; |