mirror of
https://forge.katzen.cafe/schrottkatze/nix-configs.git
synced 2026-04-14 05:43:59 +02:00
blargh
This commit is contained in:
parent
63d865be00
commit
70e5b25e38
19 changed files with 286 additions and 236 deletions
|
|
@ -1,22 +1,18 @@
|
|||
{ ... }:
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
home-manager.users.jade =
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
programs.btop = {
|
||||
enable = true;
|
||||
package = pkgs.btop-rocm;
|
||||
settings = {
|
||||
shown_boxes = "cpu mem net proc gpu0";
|
||||
color_theme = "gruvbox_dark";
|
||||
vim_keys = true;
|
||||
proc_per_core = true;
|
||||
proc_filter_kernel = true;
|
||||
proc_aggregate = true;
|
||||
cpu_graph_upper = "total";
|
||||
cpu_graph_lower = "user";
|
||||
update_ms = 500;
|
||||
};
|
||||
};
|
||||
programs.btop = {
|
||||
enable = true;
|
||||
package = pkgs.btop-rocm;
|
||||
settings = {
|
||||
shown_boxes = "cpu mem net proc gpu0";
|
||||
color_theme = "gruvbox_dark";
|
||||
vim_keys = true;
|
||||
proc_per_core = true;
|
||||
proc_filter_kernel = true;
|
||||
proc_aggregate = true;
|
||||
cpu_graph_upper = "total";
|
||||
cpu_graph_lower = "user";
|
||||
update_ms = 500;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,19 +1,23 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
imports = [
|
||||
./nu.nix
|
||||
./starship.nix
|
||||
./tty.nix
|
||||
./git.nix
|
||||
./mprocs.nix
|
||||
./btop.nix
|
||||
./sudo.nix
|
||||
];
|
||||
programs.mosh.enable = true;
|
||||
programs.bat.enable = true;
|
||||
environment.systemPackages = [ pkgs.nushell ];
|
||||
home-manager.users.jade =
|
||||
{ ... }:
|
||||
{
|
||||
imports = [
|
||||
./btop.nix
|
||||
./mprocs.nix
|
||||
./git.nix
|
||||
./starship.nix
|
||||
./nu.nix
|
||||
./elvish.nix
|
||||
];
|
||||
programs.broot = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
|
@ -33,5 +37,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
users.defaultUserShell = pkgs.nushell;
|
||||
# TODO: Proper switch
|
||||
users.defaultUserShell = pkgs.elvish;
|
||||
}
|
||||
|
|
|
|||
8
modules/shell/elvish.nix
Normal file
8
modules/shell/elvish.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
{ ... }:
|
||||
{
|
||||
xdg.configFile."elvish" = {
|
||||
recursive = true;
|
||||
executable = true;
|
||||
source = ./elvish;
|
||||
};
|
||||
}
|
||||
18
modules/shell/elvish/lib/direnv.elv
Normal file
18
modules/shell/elvish/lib/direnv.elv
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
## hook for direnv
|
||||
set @edit:before-readline = $@edit:before-readline {
|
||||
try {
|
||||
var m = [("/nix/store/kv03kmfwkinhv4ar2hvh79jfkm1n5id5-direnv-2.37.1/bin/direnv" export elvish | from-json)]
|
||||
if (> (count $m) 0) {
|
||||
set m = (all $m)
|
||||
keys $m | each { |k|
|
||||
if $m[$k] {
|
||||
set-env $k $m[$k]
|
||||
} else {
|
||||
unset-env $k
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch e {
|
||||
echo $e
|
||||
}
|
||||
}
|
||||
28
modules/shell/elvish/rc.elv
Normal file
28
modules/shell/elvish/rc.elv
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
# <aliases>
|
||||
|
||||
fn gnix {|@a| cd ~/nix-configs $@a }
|
||||
fn grepo {|@a| cd ~/Documents/repos $@a }
|
||||
fn wh {|@a| wormhole-rs $@a }
|
||||
|
||||
fn gc {|@a| git commit $@a }
|
||||
fn gca {|@a| git commit --all $@a }
|
||||
fn gp {|@a| git push $@a }
|
||||
fn gl {|@a| git pull $@a }
|
||||
fn gs {|@a| git status $@a }
|
||||
|
||||
fn cr {|@a| cargo run $@a }
|
||||
fn cl {|@a| cargo clippy $@a }
|
||||
fn cb {|@a| cargo build $@a }
|
||||
fn cch {|@a| cargo check $@a }
|
||||
|
||||
fn jb {|@a| just build $@a }
|
||||
|
||||
fn px {|@a| pulsemixer $@a }
|
||||
|
||||
fn guni {|@a| cd ~/Docs/uni $@a }
|
||||
|
||||
fn juts {|@a| just $@a }
|
||||
|
||||
# </aliases>
|
||||
|
||||
use direnv
|
||||
|
|
@ -5,51 +5,43 @@
|
|||
...
|
||||
}:
|
||||
{
|
||||
home-manager.users.jade =
|
||||
{
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{
|
||||
programs.git = {
|
||||
enable = true;
|
||||
settings = {
|
||||
user = {
|
||||
name = "Schrottkatze";
|
||||
email = "git@schrottkatze.de";
|
||||
};
|
||||
};
|
||||
signing = {
|
||||
format = "ssh";
|
||||
key = lib.mkDefault "${pkgs.writeText "blue_nk3.pub" "SHA256:h7d9+w4uACtz63L/MI7B1oB3fYxh8u+q6bs+SsSTKzY ssh:"}";
|
||||
signByDefault = true;
|
||||
};
|
||||
};
|
||||
programs.jujutsu = {
|
||||
enable = true;
|
||||
settings = {
|
||||
user = {
|
||||
name = config.programs.git.userName;
|
||||
email = config.programs.git.userEmail;
|
||||
};
|
||||
};
|
||||
};
|
||||
programs.gitui = {
|
||||
enable = true;
|
||||
keyConfig = ''
|
||||
(
|
||||
move_left: Some(( code: Char('h'), modifiers: "")),
|
||||
move_right: Some(( code: Char('l'), modifiers: "")),
|
||||
move_up: Some(( code: Char('k'), modifiers: "")),
|
||||
move_down: Some(( code: Char('j'), modifiers: "")),
|
||||
|
||||
stash_open: Some(( code: Char('l'), modifiers: "")),
|
||||
open_help: Some(( code: F(1), modifiers: "")),
|
||||
|
||||
status_reset_item: Some(( code: Char('U'), modifiers: "SHIFT")),
|
||||
)
|
||||
'';
|
||||
programs.git = {
|
||||
enable = true;
|
||||
settings = {
|
||||
user = {
|
||||
name = "Schrottkatze";
|
||||
email = "git@schrottkatze.de";
|
||||
};
|
||||
};
|
||||
signing = {
|
||||
format = "ssh";
|
||||
key = lib.mkDefault "${pkgs.writeText "blue_nk3.pub" "SHA256:h7d9+w4uACtz63L/MI7B1oB3fYxh8u+q6bs+SsSTKzY ssh:"}";
|
||||
signByDefault = true;
|
||||
};
|
||||
};
|
||||
programs.jujutsu = {
|
||||
enable = true;
|
||||
settings = {
|
||||
user = {
|
||||
name = config.programs.git.userName;
|
||||
email = config.programs.git.userEmail;
|
||||
};
|
||||
};
|
||||
};
|
||||
programs.gitui = {
|
||||
enable = true;
|
||||
keyConfig = ''
|
||||
(
|
||||
move_left: Some(( code: Char('h'), modifiers: "")),
|
||||
move_right: Some(( code: Char('l'), modifiers: "")),
|
||||
move_up: Some(( code: Char('k'), modifiers: "")),
|
||||
move_down: Some(( code: Char('j'), modifiers: "")),
|
||||
|
||||
stash_open: Some(( code: Char('l'), modifiers: "")),
|
||||
open_help: Some(( code: F(1), modifiers: "")),
|
||||
|
||||
status_reset_item: Some(( code: Char('U'), modifiers: "SHIFT")),
|
||||
)
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,31 +1,23 @@
|
|||
{ ... }:
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
home-manager.users.jade =
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
{
|
||||
home = {
|
||||
packages = [ pkgs.mprocs ];
|
||||
home = {
|
||||
packages = [ pkgs.mprocs ];
|
||||
};
|
||||
xdg.configFile."mprocs/mprocs.yaml" = {
|
||||
text = builtins.toJSON {
|
||||
proc_list_width = 15;
|
||||
keymap_procs = {
|
||||
"<l>" = {
|
||||
c = "toggle-focus";
|
||||
};
|
||||
};
|
||||
xdg.configFile."mprocs/mprocs.yaml" = {
|
||||
text = builtins.toJSON {
|
||||
proc_list_width = 15;
|
||||
keymap_procs = {
|
||||
"<l>" = {
|
||||
c = "toggle-focus";
|
||||
};
|
||||
};
|
||||
keymap_term = {
|
||||
"<C-a>" = null;
|
||||
# Ctrl-m so it doesnt overlap with zellij or helix
|
||||
"<C-M>" = {
|
||||
c = "toggle-focus";
|
||||
};
|
||||
};
|
||||
keymap_term = {
|
||||
"<C-a>" = null;
|
||||
# Ctrl-m so it doesnt overlap with zellij or helix
|
||||
"<C-M>" = {
|
||||
c = "toggle-focus";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,46 +1,42 @@
|
|||
{ config, ... }:
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
home-manager.users.jade =
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
# Needed for nu_scripts background_task
|
||||
services.pueue = {
|
||||
enable = true;
|
||||
settings = {
|
||||
shared = {
|
||||
use_unix_socket = true;
|
||||
};
|
||||
};
|
||||
# Needed for nu_scripts background_task
|
||||
services.pueue = {
|
||||
enable = true;
|
||||
settings = {
|
||||
shared = {
|
||||
use_unix_socket = true;
|
||||
};
|
||||
home.packages = [
|
||||
pkgs.pueue
|
||||
];
|
||||
home.file."shell-startup" = {
|
||||
source = ./nu/shell-startup.nu;
|
||||
target = ".config/nushell/shell-startup.nu";
|
||||
};
|
||||
programs.nushell = {
|
||||
enable = true;
|
||||
package = config.users.defaultUserShell;
|
||||
configFile.source = ./nu/config.nu;
|
||||
envFile.source = ./nu/env.nu;
|
||||
extraConfig = ''
|
||||
plugin add ${pkgs.nushellPlugins.query}/bin/nu_plugin_query;
|
||||
plugin add ${pkgs.nushellPlugins.polars}/bin/nu_plugin_polars;
|
||||
plugin add ${pkgs.nushellPlugins.formats}/bin/nu_plugin_formats;
|
||||
|
||||
plugin use query;
|
||||
plugin use polars;
|
||||
plugin use formats;
|
||||
|
||||
source ${./nu/custom_commands.nu};
|
||||
source ${./nu/aliases.nu};
|
||||
nu ${./nu/shell-startup.nu};
|
||||
'';
|
||||
extraEnv = '''';
|
||||
};
|
||||
# programs.starship.enableNushellIntegration = true;
|
||||
programs.carapace.enableNushellIntegration = true;
|
||||
programs.direnv.enableNushellIntegration = true;
|
||||
};
|
||||
};
|
||||
home.packages = [
|
||||
pkgs.pueue
|
||||
];
|
||||
home.file."shell-startup" = {
|
||||
source = ./nu/shell-startup.nu;
|
||||
target = ".config/nushell/shell-startup.nu";
|
||||
};
|
||||
programs.nushell = {
|
||||
enable = false;
|
||||
# package = config.users.defaultUserShell;
|
||||
configFile.source = ./nu/config.nu;
|
||||
envFile.source = ./nu/env.nu;
|
||||
extraConfig = ''
|
||||
plugin add ${pkgs.nushellPlugins.query}/bin/nu_plugin_query;
|
||||
plugin add ${pkgs.nushellPlugins.polars}/bin/nu_plugin_polars;
|
||||
plugin add ${pkgs.nushellPlugins.formats}/bin/nu_plugin_formats;
|
||||
|
||||
plugin use query;
|
||||
plugin use polars;
|
||||
plugin use formats;
|
||||
|
||||
source ${./nu/custom_commands.nu};
|
||||
source ${./nu/aliases.nu};
|
||||
nu ${./nu/shell-startup.nu};
|
||||
'';
|
||||
extraEnv = "";
|
||||
};
|
||||
# programs.starship.enableNushellIntegration = true;
|
||||
programs.carapace.enableNushellIntegration = true;
|
||||
programs.direnv.enableNushellIntegration = true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,16 +1,8 @@
|
|||
alias gnix = cd ~/nix-configs;
|
||||
alias grepo = cd ~/Documents/repos;
|
||||
alias wh = wormhole-rs;
|
||||
|
||||
alias b = broot;
|
||||
|
||||
alias gg = gitui;
|
||||
alias ga = git add;
|
||||
alias gc = git commit;
|
||||
alias gca = git commit --all;
|
||||
alias gp = git push;
|
||||
alias gl = git pull;
|
||||
alias gs = git status;
|
||||
alias clip = xclip -selection c;
|
||||
|
||||
alias cr = cargo run;
|
||||
|
|
|
|||
|
|
@ -1,44 +1,40 @@
|
|||
{ ... }:
|
||||
{
|
||||
home-manager.users.jade =
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
enableNushellIntegration = false;
|
||||
settings = {
|
||||
format = "$all$directory$character";
|
||||
character = {
|
||||
success_symbol = "[\\$](green)";
|
||||
error_symbol = "[X](red)";
|
||||
};
|
||||
git_branch = {
|
||||
format = "\\[[$symbol$branch]($style)\\]";
|
||||
symbol = " ";
|
||||
};
|
||||
git_status = {
|
||||
format = "([\\[$all_status$ahead_behind\\]]($style))";
|
||||
};
|
||||
haskell = {
|
||||
format = "\\[[$symbol($version)]($style)\\]";
|
||||
symbol = " ";
|
||||
};
|
||||
cmd_duration = {
|
||||
format = "\\[[⏱ $duration]($style)\\]";
|
||||
};
|
||||
nix_shell = {
|
||||
format = "\\[[$symbol$state( \\($name\\))]($style)\\]";
|
||||
symbol = " ";
|
||||
};
|
||||
rust = {
|
||||
format = "\\[[$symbol($version)]($style)\\]";
|
||||
symbol = " ";
|
||||
};
|
||||
package = {
|
||||
format = "\\[[$symbol$version]($style)\\]";
|
||||
symbol = " ";
|
||||
};
|
||||
};
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
enableNushellIntegration = false;
|
||||
settings = {
|
||||
format = "$all$directory$character";
|
||||
character = {
|
||||
success_symbol = "[\\$](green)";
|
||||
error_symbol = "[X](red)";
|
||||
};
|
||||
git_branch = {
|
||||
format = "\\[[$symbol$branch]($style)\\]";
|
||||
symbol = " ";
|
||||
};
|
||||
git_status = {
|
||||
format = "([\\[$all_status$ahead_behind\\]]($style))";
|
||||
};
|
||||
haskell = {
|
||||
format = "\\[[$symbol($version)]($style)\\]";
|
||||
symbol = " ";
|
||||
};
|
||||
cmd_duration = {
|
||||
format = "\\[[⏱ $duration]($style)\\]";
|
||||
};
|
||||
nix_shell = {
|
||||
format = "\\[[$symbol$state( \\($name\\))]($style)\\]";
|
||||
symbol = " ";
|
||||
};
|
||||
rust = {
|
||||
format = "\\[[$symbol($version)]($style)\\]";
|
||||
symbol = " ";
|
||||
};
|
||||
package = {
|
||||
format = "\\[[$symbol$version]($style)\\]";
|
||||
symbol = " ";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue