forked from mirrors_public/oddlama_nix-config
feat: add some necessary plumbing
This commit is contained in:
parent
449d9a2200
commit
5f6012faf1
9 changed files with 213 additions and 20 deletions
|
@ -9,22 +9,17 @@
|
||||||
'';
|
'';
|
||||||
in {
|
in {
|
||||||
imports = [
|
imports = [
|
||||||
|
./inputrc.nix
|
||||||
|
./issue.nix
|
||||||
./nix.nix
|
./nix.nix
|
||||||
./resolved.nix
|
./resolved.nix
|
||||||
|
./ssh.nix
|
||||||
./tmux.nix
|
./tmux.nix
|
||||||
./xdg.nix
|
./xdg.nix
|
||||||
./ssh.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
boot.kernelParams = ["log_buf_len=10M"];
|
boot.kernelParams = ["log_buf_len=10M"];
|
||||||
|
environment.etc."nixos/configuration.nix".source = dummyConfig;
|
||||||
environment = {
|
|
||||||
etc."nixos/configuration.nix".source = dummyConfig;
|
|
||||||
systemPackages = with pkgs; [
|
|
||||||
neovim
|
|
||||||
];
|
|
||||||
variables.EDITOR = "nvim";
|
|
||||||
};
|
|
||||||
|
|
||||||
# Disable unnecessary stuff from the nixos defaults.
|
# Disable unnecessary stuff from the nixos defaults.
|
||||||
services.udisks2.enable = false;
|
services.udisks2.enable = false;
|
||||||
|
@ -64,8 +59,11 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
neovim = {
|
neovim = {
|
||||||
|
package = pkgs.neovim;
|
||||||
enable = true;
|
enable = true;
|
||||||
viAlias = true;
|
viAlias = true;
|
||||||
|
vimAlias = true;
|
||||||
|
defaultEditor = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
110
core/inputrc.nix
Normal file
110
core/inputrc.nix
Normal file
|
@ -0,0 +1,110 @@
|
||||||
|
{
|
||||||
|
environment.etc."inputrc".text = ''
|
||||||
|
# /etc/inputrc: initialization file for readline
|
||||||
|
#
|
||||||
|
# For more information on how this file works, please see the
|
||||||
|
# INITIALIZATION FILE section of the readline(3) man page
|
||||||
|
#
|
||||||
|
# Quick dirty little note:
|
||||||
|
# To get the key sequence for binding, you can abuse bash.
|
||||||
|
# While running bash, hit CTRL+V, and then type the key sequence.
|
||||||
|
# So, typing 'ALT + left arrow' in Konsole gets you back:
|
||||||
|
# ^[[1;3D
|
||||||
|
# The readline entry to make this skip back a word will then be:
|
||||||
|
# "\e[1;3D" backward-word
|
||||||
|
#
|
||||||
|
# Customization note:
|
||||||
|
# You don't need to put all your changes in this file. You can create
|
||||||
|
# ~/.inputrc which starts off with the line:
|
||||||
|
# $include /etc/inputrc
|
||||||
|
# Then put all your own stuff after that.
|
||||||
|
#
|
||||||
|
|
||||||
|
# do not bell on tab-completion
|
||||||
|
set bell-style none
|
||||||
|
|
||||||
|
set history-size -1
|
||||||
|
|
||||||
|
set meta-flag on
|
||||||
|
set input-meta on
|
||||||
|
set convert-meta off
|
||||||
|
set output-meta on
|
||||||
|
|
||||||
|
# dont output everything on first line
|
||||||
|
set horizontal-scroll-mode off
|
||||||
|
|
||||||
|
|
||||||
|
# append slash to completed directories & symlinked directories
|
||||||
|
set mark-directories on
|
||||||
|
set mark-symlinked-directories on
|
||||||
|
|
||||||
|
# dont expand ~ in tab completion
|
||||||
|
set expand-tilde off
|
||||||
|
|
||||||
|
# instead of ringing bell, show list of ambigious completions directly, also show up to 300 items before asking
|
||||||
|
set show-all-if-ambiguous on
|
||||||
|
set completion-query-items 300
|
||||||
|
|
||||||
|
|
||||||
|
$if mode=emacs
|
||||||
|
|
||||||
|
# for linux console and RH/Debian xterm
|
||||||
|
# allow the use of the Home/End keys
|
||||||
|
"\e[1~": beginning-of-line
|
||||||
|
"\e[4~": end-of-line
|
||||||
|
# map "page up" and "page down" to search history based on current cmdline
|
||||||
|
"\e[5~": history-search-backward
|
||||||
|
"\e[6~": history-search-forward
|
||||||
|
# allow the use of the Delete/Insert keys
|
||||||
|
"\e[3~": delete-char
|
||||||
|
"\e[2~": quoted-insert
|
||||||
|
|
||||||
|
# gnome / others (escape + arrow key)
|
||||||
|
"\e[5C": forward-word
|
||||||
|
"\e[5D": backward-word
|
||||||
|
# konsole / xterm / rxvt (escape + arrow key)
|
||||||
|
"\e\e[C": forward-word
|
||||||
|
"\e\e[D": backward-word
|
||||||
|
# gnome / konsole / others (control + arrow key)
|
||||||
|
"\e[1;5C": forward-word
|
||||||
|
"\e[1;5D": backward-word
|
||||||
|
# aterm / eterm (control + arrow key)
|
||||||
|
"\eOc": forward-word
|
||||||
|
"\eOd": backward-word
|
||||||
|
|
||||||
|
# konsole (alt + arrow key)
|
||||||
|
"\e[1;3C": forward-word
|
||||||
|
"\e[1;3D": backward-word
|
||||||
|
|
||||||
|
# Chromebooks remap alt + backspace so provide alternative (alt + k)
|
||||||
|
"\ek": backward-kill-word
|
||||||
|
|
||||||
|
$if term=rxvt
|
||||||
|
"\e[8~": end-of-line
|
||||||
|
|
||||||
|
"\e[3^": kill-line
|
||||||
|
"\e[3@": backward-kill-line
|
||||||
|
$endif
|
||||||
|
|
||||||
|
# for non RH/Debian xterm, can't hurt for RH/Debian xterm
|
||||||
|
"\eOH": beginning-of-line
|
||||||
|
"\eOF": end-of-line
|
||||||
|
|
||||||
|
# for freebsd console
|
||||||
|
"\e[H": beginning-of-line
|
||||||
|
"\e[F": end-of-line
|
||||||
|
|
||||||
|
# fix Home and End for German users
|
||||||
|
"\e[7~": beginning-of-line
|
||||||
|
"\e[8~": end-of-line
|
||||||
|
|
||||||
|
# ctrl [+ shift] + del = kill line [backward]
|
||||||
|
"\e[3;5~": kill-line
|
||||||
|
"\e[3;6~": backward-kill-line
|
||||||
|
$endif
|
||||||
|
|
||||||
|
# Up and Down should search history based on current cmdline
|
||||||
|
"\e[A": history-search-backward
|
||||||
|
"\e[B": history-search-forward
|
||||||
|
'';
|
||||||
|
}
|
7
core/issue.nix
Normal file
7
core/issue.nix
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
environment.etc."issue".text = ''
|
||||||
|
\d \t
|
||||||
|
This is \e{cyan}\n\e{reset} [\e{lightblue}\l\e{reset}] (\s \m \r)
|
||||||
|
'';
|
||||||
|
environment.etc."issue.logo".text = environment.etc."issue".text;
|
||||||
|
}
|
|
@ -13,6 +13,7 @@
|
||||||
|
|
||||||
../../modules/efi.nix
|
../../modules/efi.nix
|
||||||
../../modules/laptop.nix
|
../../modules/laptop.nix
|
||||||
|
../../modules/sound-pipewire.nix
|
||||||
../../modules/yubikey.nix
|
../../modules/yubikey.nix
|
||||||
../../modules/zfs.nix
|
../../modules/zfs.nix
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
environment.systemPackages = with pkgs; [pulseaudio];
|
environment.systemPackages = with pkgs; [pulseaudio pulsemixer];
|
||||||
|
|
||||||
hardware.pulseaudio.enable = lib.mkForce false;
|
hardware.pulseaudio.enable = lib.mkForce false;
|
||||||
|
|
||||||
|
|
|
@ -5,11 +5,10 @@
|
||||||
#./atuin.nix
|
#./atuin.nix
|
||||||
#./bash.nix
|
#./bash.nix
|
||||||
#./btop.nix
|
#./btop.nix
|
||||||
#./fish.nix
|
./fish.nix
|
||||||
#./git.nix
|
./git.nix
|
||||||
./htop.nix
|
./htop.nix
|
||||||
#./neovim
|
#./neovim
|
||||||
./nushell.nix
|
|
||||||
#./ssh.nix
|
#./ssh.nix
|
||||||
./starship.nix
|
./starship.nix
|
||||||
#./tmux.nix
|
#./tmux.nix
|
||||||
|
@ -23,7 +22,6 @@
|
||||||
bandwhich
|
bandwhich
|
||||||
btop
|
btop
|
||||||
fd
|
fd
|
||||||
kalker
|
|
||||||
neofetch
|
neofetch
|
||||||
rclone
|
rclone
|
||||||
ripgrep
|
ripgrep
|
||||||
|
@ -45,7 +43,6 @@
|
||||||
chmod = "chmod -c --preserve-root";
|
chmod = "chmod -c --preserve-root";
|
||||||
chown = "chown -c --preserve-root";
|
chown = "chown -c --preserve-root";
|
||||||
|
|
||||||
vim = "nvim";
|
|
||||||
ip = "ip --color";
|
ip = "ip --color";
|
||||||
tmux = "tmux -2";
|
tmux = "tmux -2";
|
||||||
rg = "rg -S";
|
rg = "rg -S";
|
||||||
|
|
47
users/common/fish.nix
Normal file
47
users/common/fish.nix
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs = {
|
||||||
|
fish = {
|
||||||
|
enable = true;
|
||||||
|
interactiveShellInit = lib.mkMerge [
|
||||||
|
(lib.mkBefore ''
|
||||||
|
set -g ATUIN_NOBIND true
|
||||||
|
set -g fish_escape_delay_ms 300
|
||||||
|
set -g fish_greeting
|
||||||
|
'')
|
||||||
|
(lib.mkAfter ''
|
||||||
|
enable_ayu_theme_dark
|
||||||
|
${pkgs.any-nix-shell}/bin/any-nix-shell fish | source
|
||||||
|
fish_vi_key_bindings insert
|
||||||
|
# atuin
|
||||||
|
bind -M insert \cr _atuin_search
|
||||||
|
# quickly open text file
|
||||||
|
bind -M insert \co 'fzf | xargs -r $VISUAL'
|
||||||
|
'')
|
||||||
|
];
|
||||||
|
plugins = [
|
||||||
|
{
|
||||||
|
name = "ayu-theme.fish";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "edouard-lopez";
|
||||||
|
repo = "ayu-theme.fish";
|
||||||
|
rev = "d351d24263d87bef3a90424e0e9c74746673e383";
|
||||||
|
hash = "sha256-rx9izD2pc3hLObOehuiMwFB4Ta5G1lWVv9Jdb+JHIz0=";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "autopair.fish";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "jorgebucaran";
|
||||||
|
repo = "autopair.fish";
|
||||||
|
rev = "1.0.4";
|
||||||
|
hash = "sha256-s1o188TlwpUQEN3X5MxUlD/2CFCpEkWu83U9O+wg3VU=";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
38
users/common/git.nix
Normal file
38
users/common/git.nix
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs.gitui.enable = true;
|
||||||
|
programs.git = {
|
||||||
|
enable = true;
|
||||||
|
difftastic.enable = true;
|
||||||
|
lfs.enable = lib.mkDefault false;
|
||||||
|
extraConfig = {
|
||||||
|
#diff = {
|
||||||
|
# colorMoved = "default";
|
||||||
|
# age.textconv = "${pkgs.rage}/bin/rage -i ~/.ssh/username --decrypt";
|
||||||
|
#};
|
||||||
|
difftool.prompt = true;
|
||||||
|
init.defaultBranch = "main";
|
||||||
|
merge.conflictstyle = "diff3";
|
||||||
|
mergetool.prompt = true;
|
||||||
|
};
|
||||||
|
aliases = {
|
||||||
|
unstash = "stash pop";
|
||||||
|
s = status;
|
||||||
|
tags = "tag -l";
|
||||||
|
t = "tag -s -m ''";
|
||||||
|
ci = "commit -v -S";
|
||||||
|
cam = "commit -v -S --amend";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home.shellAliases = rec {
|
||||||
|
g = "gitui";
|
||||||
|
gs = "git status";
|
||||||
|
ga = "git add";
|
||||||
|
gc = "git commit -v -S";
|
||||||
|
gca = "${gci} --amend";
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,5 +0,0 @@
|
||||||
{
|
|
||||||
programs.nushell = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
Add table
Add a link
Reference in a new issue