summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/basic-tools/default.nix51
-rw-r--r--modules/basic-tools/multiplexers.nix43
-rw-r--r--modules/basic-tools/nix.nix36
-rw-r--r--modules/mail/default.nix4
4 files changed, 85 insertions, 49 deletions
diff --git a/modules/basic-tools/default.nix b/modules/basic-tools/default.nix
index 349609e..e72aadf 100644
--- a/modules/basic-tools/default.nix
+++ b/modules/basic-tools/default.nix
@@ -3,6 +3,8 @@
{
imports = [
./fzf.nix
+ ./multiplexers.nix
+ ./nix.nix
];
environment.systemPackages = with pkgs; [
@@ -27,35 +29,11 @@
nnn
ranger
man-pages
- screen
unzip
usbutils
pciutils
];
- nix = {
- extraOptions = ''
- experimental-features = nix-command flakes
- '';
- };
-
- # override default nix shell nixpkgs# behaviour to use current flake lock
- nix.registry =
- let flakes = lib.filterAttrs (_name: value: value ? outputs) inputs.self.inputs;
- in builtins.mapAttrs (_name: v: { flake = v; }) flakes;
-
- nix.nixPath = lib.mapAttrsToList (name: value: "${name}=${value.outPath}") inputs.self.inputs;
-
-
- programs.tmux = {
- enable = true;
- keyMode = "vi";
- escapeTime = 0;
- historyLimit = 50000;
- aggressiveResize = true;
- terminal = "tmux-256color";
- };
-
# set appropriate environ variables
environment.variables = {
EDITOR = "nvim";
@@ -70,10 +48,7 @@
ll = "ls -lah";
lt = "ls --tree";
vim = "nvim";
- mutt = "neomutt";
grep = "grep --color=auto";
- nix-build="${pkgs.nix-output-monitor}/bin/nom-build";
- nix-shell="${pkgs.nix-output-monitor}/bin/nom-shell";
};
users.defaultUserShell = pkgs.zsh;
@@ -89,19 +64,6 @@
setopt HIST_IGNORE_ALL_DUPS
# allow comments
setopt interactivecomments
-
- # hacky wrapper for nix, so we can use nom automagically
- export _nom_cmd=${pkgs.nix-output-monitor}/bin/nom
- function nix {
- case $1 in
- build|shell|develop)
- echo \[SUBSTITUTION\] ''$_nom_cmd ''${@:1} 1>&2
- ''$_nom_cmd ''${@:1}
- ;;
- *)
- ${pkgs.nix}/bin/nix $@
- esac
- }
'';
promptInit = ''
source ${pkgs.liquidprompt}/share/zsh/plugins/liquidprompt/liquidprompt
@@ -123,13 +85,4 @@
programs.iftop.enable = true;
programs.mosh.enable = true;
- programs.screen.screenrc = ''
- defscrollback 10000
-
- startup_message off
-
- hardstatus on
- hardstatus alwayslastline
- hardstatus string "%w"
- '';
}
diff --git a/modules/basic-tools/multiplexers.nix b/modules/basic-tools/multiplexers.nix
new file mode 100644
index 0000000..c089128
--- /dev/null
+++ b/modules/basic-tools/multiplexers.nix
@@ -0,0 +1,43 @@
+{ pkgs, ... }: {
+ programs.tmux = {
+ enable = true;
+ keyMode = "vi";
+ escapeTime = 0;
+ historyLimit = 500000;
+ aggressiveResize = true;
+ terminal = "tmux-256color";
+ };
+
+ programs.zsh.interactiveShellInit = ''
+ # create new tmux session with $1 as a name
+ # if no arguments supplied, use name of current dir
+
+ function tn {
+ if [ $# -eq 0 ]
+ then
+ tmux new-session -s $(basename $(pwd))
+ else
+ tmux new-session -s $1
+ fi
+ }
+ '';
+
+ environment.shellAliases = {
+ tl = "tmux list-sessions";
+ ta = "tmux attach -t";
+ };
+
+ environment.systemPackages = [
+ pkgs.screen
+ ];
+
+ programs.screen.screenrc = ''
+ defscrollback 10000
+
+ startup_message off
+
+ hardstatus on
+ hardstatus alwayslastline
+ hardstatus string "%w"
+ '';
+}
diff --git a/modules/basic-tools/nix.nix b/modules/basic-tools/nix.nix
new file mode 100644
index 0000000..4a481ae
--- /dev/null
+++ b/modules/basic-tools/nix.nix
@@ -0,0 +1,36 @@
+{ lib, pkgs, inputs, ... }: {
+
+ nix = {
+ extraOptions = ''
+ experimental-features = nix-command flakes
+ '';
+ };
+
+ # override default nix shell nixpkgs# behaviour to use current flake lock
+ nix.registry =
+ let flakes = lib.filterAttrs (_name: value: value ? outputs) inputs.self.inputs;
+ in builtins.mapAttrs (_name: v: { flake = v; }) flakes;
+
+ nix.nixPath = lib.mapAttrsToList (name: value: "${name}=${value.outPath}") inputs.self.inputs;
+
+ environment.shellAliases = {
+ nix-build="${pkgs.nix-output-monitor}/bin/nom-build";
+ nix-shell="${pkgs.nix-output-monitor}/bin/nom-shell";
+ };
+
+ programs.zsh.interactiveShellInit = ''
+ # hacky wrapper for nix, so we can use nom automagically
+ export _nom_cmd=${pkgs.nix-output-monitor}/bin/nom
+ function nix {
+ case $1 in
+ build|shell|develop)
+ echo \[SUBSTITUTION\] ''$_nom_cmd ''${@:1} 1>&2
+ ''$_nom_cmd ''${@:1}
+ ;;
+ *)
+ ${pkgs.nix}/bin/nix $@
+ esac
+ }
+ compdef nix=_nix
+ '';
+}
diff --git a/modules/mail/default.nix b/modules/mail/default.nix
index 71b195f..c922bc3 100644
--- a/modules/mail/default.nix
+++ b/modules/mail/default.nix
@@ -12,6 +12,10 @@ in
links2
];
+ environment.shellAliases = {
+ mutt = "neomutt";
+ };
+
sops.secrets = {
"mail/oxapentane.com" = {
owner = config.users.users.grue.name;