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 {
|
||||
imports = [
|
||||
./inputrc.nix
|
||||
./issue.nix
|
||||
./nix.nix
|
||||
./resolved.nix
|
||||
./ssh.nix
|
||||
./tmux.nix
|
||||
./xdg.nix
|
||||
./ssh.nix
|
||||
];
|
||||
|
||||
boot.kernelParams = ["log_buf_len=10M"];
|
||||
|
||||
environment = {
|
||||
etc."nixos/configuration.nix".source = dummyConfig;
|
||||
systemPackages = with pkgs; [
|
||||
neovim
|
||||
];
|
||||
variables.EDITOR = "nvim";
|
||||
};
|
||||
environment.etc."nixos/configuration.nix".source = dummyConfig;
|
||||
|
||||
# Disable unnecessary stuff from the nixos defaults.
|
||||
services.udisks2.enable = false;
|
||||
|
@ -64,8 +59,11 @@ in {
|
|||
};
|
||||
};
|
||||
neovim = {
|
||||
package = pkgs.neovim;
|
||||
enable = 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/laptop.nix
|
||||
../../modules/sound-pipewire.nix
|
||||
../../modules/yubikey.nix
|
||||
../../modules/zfs.nix
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
pkgs,
|
||||
...
|
||||
}: {
|
||||
environment.systemPackages = with pkgs; [pulseaudio];
|
||||
environment.systemPackages = with pkgs; [pulseaudio pulsemixer];
|
||||
|
||||
hardware.pulseaudio.enable = lib.mkForce false;
|
||||
|
||||
|
|
|
@ -5,11 +5,10 @@
|
|||
#./atuin.nix
|
||||
#./bash.nix
|
||||
#./btop.nix
|
||||
#./fish.nix
|
||||
#./git.nix
|
||||
./fish.nix
|
||||
./git.nix
|
||||
./htop.nix
|
||||
#./neovim
|
||||
./nushell.nix
|
||||
#./ssh.nix
|
||||
./starship.nix
|
||||
#./tmux.nix
|
||||
|
@ -23,7 +22,6 @@
|
|||
bandwhich
|
||||
btop
|
||||
fd
|
||||
kalker
|
||||
neofetch
|
||||
rclone
|
||||
ripgrep
|
||||
|
@ -45,7 +43,6 @@
|
|||
chmod = "chmod -c --preserve-root";
|
||||
chown = "chown -c --preserve-root";
|
||||
|
||||
vim = "nvim";
|
||||
ip = "ip --color";
|
||||
tmux = "tmux -2";
|
||||
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