1
0
Fork 0
This commit is contained in:
Malte Brandy 2018-05-31 14:03:03 +02:00
parent c18bcabd31
commit 9f1ec78d04
No known key found for this signature in database
GPG key ID: 226A2D41EF5378C9
21 changed files with 178 additions and 159 deletions

View file

@ -7,14 +7,20 @@
file
wget
curl
(pkgs.neovim.override {vimAlias = true;})
(pkgs.neovim.override {
vimAlias = true;
withPython3 = true;
})
gnupg
mutt
];
extra = pkgs: with pkgs; [
git-crypt
htop
tree
rxvt_unicode.terminfo
st.terminfo
st
socat
nmap
@ -29,5 +35,9 @@
pythonPackages.qrcode
ranger
pass
sshuttle
mtr
];
}

BIN
common/secret/default.nix Normal file

Binary file not shown.

View file

@ -1,116 +1,124 @@
{ pkgs, config, ... }:
{
imports = [
./zsh
./modules/taskwarrior.nix
./modules/force-copies.nix
./modules/battery.nix
./modules/laptop.nix
./modules/accounting.nix
./modules/rustdev.nix
./modules/latex.nix
./modules/sleep-nag.nix
./modules/graphical
./modules/home-options.nix
let
me = config.m-0.private.me;
meWork = config.m-0.private.meWork;
in {
imports = [
./zsh
./modules/taskwarrior.nix
./modules/force-copies.nix
./modules/battery.nix
./modules/laptop.nix
./modules/accounting.nix
./modules/rustdev.nix
./modules/latex.nix
./modules/sleep-nag.nix
./modules/graphical
./modules/home-options.nix
./modules/eventd.nix
../common/private-options.nix
../common/secret
# ./sort-mail.nix
# ./morgenreport.nix
# ./my-systems.nix
];
];
nixpkgs.config.packageOverrides = pkgs: with pkgs; {
tasktree = callPackage ./packages/tasktree {};
rust-scripts = callPackage ./packages/rust-scripts {};
jali = with pkgs; callPackage ./packages/jali {};
eventd = (import <unstable> {}).callPackage ./packages/eventd {};
st = (import packages/st) pkgs config.common.colors;
neovim = (import ./nvim) pkgs config.m-0.rustdev.enable;
nixpkgs.config.packageOverrides = pkgs: with pkgs; {
tasktree = callPackage ./packages/tasktree {};
rust-scripts = callPackage ./packages/rust-scripts {};
jali = with pkgs; callPackage ./packages/jali {};
eventd = (import <unstable> {}).callPackage ./packages/eventd {};
st = (import packages/st) pkgs config.m-0.colors;
neovim = (import ./nvim) pkgs config.m-0.rustdev.enable;
};
home.file.".tmux.conf".text = ''
set -g default-terminal "st-256color"
set -ga terminal-overrides ",st-256color:Tc"
set -g history-limit 50000
set -g status off
set -g escape-time 1
'';
programs = {
home-manager = {
enable = true;
path = https://github.com/rycee/home-manager/archive/master.tar.gz;
};
home.file.".tmux.conf".text = ''
set -g default-terminal "st-256color"
set -ga terminal-overrides ",st-256color:Tc"
set -g history-limit 50000
set -g status off
set -g escape-time 1
'';
programs = {
home-manager = {
enable = true;
path = https://github.com/rycee/home-manager/archive/master.tar.gz;
};
git = {
enable = true;
ignores = [
".syncthing*.tmp"
"*.swp"
"*.autosave~"
"*.aux"
"*.bbl"
"*.fls"
"*.idx"
"*.ilg"
"*.ind"
"*.log"
"*.out"
"*.toc"
"*.bcf"
"*.blg"
"*.fdb*"
"*.thm"
"*.run.xml"
"*.slnc"
"*.glade~"
"__pycache__"
".hledger-web_client_session_key.aes"
".nix-gc-roots"
git = {
enable = true;
ignores = [
".syncthing*.tmp"
"*.swp"
"*.autosave~"
"*.aux"
"*.bbl"
"*.fls"
"*.idx"
"*.ilg"
"*.ind"
"*.log"
"*.out"
"*.toc"
"*.bcf"
"*.blg"
"*.fdb*"
"*.thm"
"*.run.xml"
"*.slnc"
"*.glade~"
"__pycache__"
".hledger-web_client_session_key.aes"
".nix-gc-roots"
];
userEmail = me.mail;
userName = me.name;
};
htop = {
enable = true;
hideThreads = true;
hideUserlandThreads = true;
highlightBaseName = true;
shadowOtherUsers = true;
showProgramPath = false;
treeView = true;
};
ssh = {
controlMaster = "yes";
enable = true;
matchBlocks = let
matheGwProxy = "ssh -q gw nc -q0 %h %p";
kivaHost = "fb04386.mathematik.tu-darmstadt.de";
agHost = "fb04217.mathematik.tu-darmstadt.de";
in [
{ host = "charon"; hostname = "charon.olymp.space"; }
{ host = "*.olymp.space"; user = me.user; }
{ host = "ag-forward"; hostname = agHost; proxyCommand = matheGwProxy; user = meWork.user; }
{ host = "ag"; hostname = agHost; user = meWork.user; }
{ host = "kiva-forward"; hostname = kivaHost; proxyCommand = matheGwProxy; user = meWork.user; }
{ host = "kiva"; hostname = kivaHost; user = meWork.user; }
{ host = "gw"; hostname = "gwres4.mathematik.tu-darmstadt.de"; user = meWork.user; }
{ host = "shells"; hostname = "shells.darmstadt.ccc.de"; }
{ host = "vorstand"; hostname = "vorstand.darmstadt.ccc.de"; }
{ host = "*.darmstadt.ccc.de"; user = me.user; }
{ host = "whisky"; hostname = "whisky.w17.io"; user = "chaos"; }
{ host = "kitchen"; hostname = "kitchen.w17.io"; user = "chaos"; }
{ host = "door.w17.io"; identityFile = "~/.ssh/door_rsa";}
];
userEmail = "malte.brandy@maralorn.de";
userName = "Malte Brandy";
};
htop = {
enable = true;
hideThreads = true;
hideUserlandThreads = true;
highlightBaseName = true;
shadowOtherUsers = true;
showProgramPath = false;
treeView = true;
};
ssh = {
controlMaster = "yes";
enable = true;
matchBlocks = let
matheGwProxy = "ssh -q gw nc -q0 %h %p";
kivaHost = "fb04386.mathematik.tu-darmstadt.de";
agHost = "fb04217.mathematik.tu-darmstadt.de";
in [
{ host = "charon"; hostname = "charon.olymp.space"; }
{ host = "*.olymp.space"; user = "maralorn"; }
{ host = "ag-forward"; hostname = agHost; proxyCommand = matheGwProxy;user="brandy";}
{ host = "ag"; hostname = agHost;user="brandy";}
{ host = "kiva-forward"; hostname = kivaHost; proxyCommand = matheGwProxy;user="brandy";}
{ host = "kiva"; hostname = kivaHost;user="brandy";}
{ host = "gw"; hostname = "gwres4.mathematik.tu-darmstadt.de";user="brandy";}
{ host = "shells"; hostname = "shells.darmstadt.ccc.de"; }
{ host = "vorstand"; hostname = "vorstand.darmstadt.ccc.de"; }
{ host = "*.darmstadt.ccc.de"; user = "maralorn"; }
{ host = "whisky"; hostname = "whisky.w17.io"; user = "chaos"; }
{ host = "door.w17.io"; identityFile = "~/.ssh/door_rsa";}
];
};
};
};
home.sessionVariables = {
BROWSER="${pkgs.firefox}/bin/firefox";
EDITOR="${pkgs.neovim}/bin/nvim";
TERMINAL=config.common.terminal;
};
systemd.user.startServices = true;
home.sessionVariables = {
BROWSER="${pkgs.firefox}/bin/firefox";
EDITOR="${pkgs.neovim}/bin/nvim";
TERMINAL=config.m-0.terminal;
};
systemd.user.startServices = true;
home.packages = with pkgs; [
neovim
];
xdg.enable = true;
home.packages = with pkgs; [
neovim
];
xdg.enable = true;
}

View file

@ -1,4 +1,4 @@
{ lib, pkgs, ... }:
{ lib, pkgs, config, ... }:
with lib;
let
battery-watch = pkgs.writeShellScriptBin "battery-watch" ''

View file

@ -1,7 +1,12 @@
{ pkgs, lib, config, ... }:
with lib;
let
colors = config.common.colors;
colors = config.m-0.colors;
in {
options.m-0.eventd.enable = mkEnableOption "Eventd";
config = mkIf config.m-0.eventd.enable {
home = {
packages = with pkgs; [
eventd
@ -164,4 +169,6 @@ in {
};
};
};
};
}

View file

@ -4,7 +4,10 @@ with lib;
options.m-0.graphical.enable = mkEnableOption "Window Manager";
#imports = if config.m-0.graphical.enable then [ ./i3.nix ] else [];
imports = [
./i3.nix
./rofi
];
config = mkIf config.m-0.graphical.enable {
m-0 = {

View file

@ -1,8 +1,7 @@
{ pkgs, lib, config, ... }:
with lib;
let
colors = config.m-0.colors;
workspaces = config.m-0.workspaces;
terminal = config.m-0.terminal;
inherit (config.m-0) colors workspaces terminal;
exec = "exec --no-startup-id";
taskstatus = pkgs.writeShellScriptBin "taskstatus" ''
while true;
@ -24,11 +23,8 @@ let
{}
(builtins.attrNames oldbindings);
in {
imports = [
./eventd.nix
./rofi
./urxvt.nix
];
config = mkIf config.m-0.graphical.enable {
xsession = {
windowManager.i3 = {
enable = true;
@ -109,12 +105,12 @@ in {
titlebar = false;
border = 1;
};
# gaps = {
# inner = 0;
# outer = 0;
# smartBorders = "off";
# smartGaps = false;
# };
gaps = {
inner = 0;
outer = 0;
smartBorders = "off";
smartGaps = false;
};
keybindings = {
"XF86AudioMute" = "exec pactl set-sink-mute '@DEFAULT_SINK@' toggle";
"XF86AudioLowerVolume" = "exec pactl set-sink-volume '@DEFAULT_SINK@' -5%";
@ -160,4 +156,6 @@ in {
};
};
};
};
}

View file

@ -1,14 +1,13 @@
{ pkgs, lib, config, ... }:
with lib;
let
workspaces = config.m-0.workspaces;
terminal = config.m-0.terminal;
colors = config.m-0.colors;
rofiTask = pkgs.writeScriptBin "tasklauncher" (builtins.readFile ./tasklauncher.py);
inherit (config.m-0) colors workspaces terminal;
in {
config = mkIf config.m-0.graphical.enable {
home = {
packages = with pkgs; [
rofi
rofiTask
(writeScriptBin "tasklauncher" (builtins.readFile ./tasklauncher.py))
rofi-pass
];
};
@ -67,4 +66,6 @@ in {
};
};
};
};
}

View file

@ -67,6 +67,7 @@ config = mkIf config.m-0.laptop.enable {
gmpc
calibre
mpv
youtubeDL
];
};

View file

@ -14,7 +14,7 @@ config = mkIf config.m-0.latex.enable {
collection-latexextra
collection-bibtexextra
collection-luatex
collection-scimath
collection-mathscience
collection-fontsextra;
};
};

View file

@ -8,6 +8,11 @@ config = mkIf config.m-0.rustdev.enable {
home.packages = with pkgs; [
gnome3.glade
rustracer
cargo
gcc
binutils-unwrapped
rustfmt
carnix
];
};

View file

@ -1,17 +0,0 @@
{ pkgs, ... }:
{
home.packages = with pkgs; [
gnupg
pass
mutt
sshuttle
mtr
youtubeDL
cargo
gcc
binutils-unwrapped
rustfmt
carnix
];
}

View file

@ -1,12 +1,12 @@
{ config, pkgs, ... }:
# You need pw-files for every configured user in ./secret/pw-useralias for login to work.
let
me = config.m-0.private.me;
in {
imports = [
<home-manager/nixos>
./secret
./hardware-configuration.nix
../../system
];
@ -33,7 +33,7 @@ boot = {
cdark_net = {
enable = true;
hostName = "${me.user}_${config.networking.hostName}";
ed25519PrivateKeyFile = /etc/nixos/hosts/apollo/secret/tinc/ed25519_key.priv;
ed25519PrivateKeyFile = builtins.toPath "/etc/nixos/hosts/${config.networking.hostName}/secret/tinc/ed25519_key.priv";
hostsDirectory = /etc/nixos/system/modules/cdarknet/hosts;
ip6address = "fd23:42:cda:4342::2";
ip4address = "172.20.71.2";
@ -43,7 +43,7 @@ services = {
mpd = {
enable = true;
network.listenAddress = "::0";
musicDirectory = "/home/maralorn/data/aktuell/media/musik";
musicDirectory = "/home/${me.user}/data/aktuell/media/musik";
};
};

View file

@ -13,5 +13,6 @@ m-0.accounting.enable = true;
m-0.graphical.enable = true;
m-0.rustdev.enable = true;
m-0.taskwarrior.enable = true;
m-0.eventd.enable = true;
}

1
result Symbolic link
View file

@ -0,0 +1 @@
/nix/store/cwarhn9pblxia1qk1cn7y38kdqxg2x8a-nixos-system-apollo-18.03.132535.2ee48415afc

View file

@ -4,16 +4,16 @@ let
in {
users.users = {
"${me.user}" = {
description = "${me.name}";
description = me.name;
isNormalUser = true;
uid = 1000;
extraGroups = [ "wheel" "systemd-journal" "networkmanager" "docker" ];
openssh.authorizedKeys.keys = me.keys;
passwordFile = "${me.pw-file}";
passwordFile = me.pw-file;
};
root = {
openssh.authorizedKeys.keys = me.keys;
passwordFile = "${me.pw-file}";
passwordFile = me.pw-file;
};
};
}

View file

@ -3,11 +3,12 @@
# channel = 18.03
imports = [
./secret
./modules/private-options.nix
<home-manager/nixos>
../common/secret
../common/private-options.nix
./modules/laptop.nix
./admin.nix
# ./syncthing.nix
./syncthing.nix
./modules/cdarknet
];
@ -39,7 +40,7 @@
environment = {
# Put these into an extra file so the essential packages can also be included on non selfadminstrated systems from home-manager
systemPackages = let essentials = import ../system/essentials.nix;
systemPackages = let essentials = import ../common/essentials.nix;
in (essentials.core pkgs) ++ (essentials.extra pkgs);
sessionVariables = {
TERMINFO = "/run/current-system/sw/share/terminfo";

Binary file not shown.