126
modules/shared/user/programs.nix
Normal file
126
modules/shared/user/programs.nix
Normal file
@ -0,0 +1,126 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (lib) mkIf;
|
||||
in {
|
||||
console.yazi.enable = true;
|
||||
editor.helix.enable = true;
|
||||
shell = {
|
||||
fish.enable = true;
|
||||
oh-my-posh.enable = true;
|
||||
};
|
||||
syncthing.enable = true;
|
||||
# terminal.wezterm.enable = true;
|
||||
terminal.ghostty.enable = true;
|
||||
systemd.user.settings.Manager.DefaultEnvironment = {
|
||||
TERMINAL = "ghostty";
|
||||
};
|
||||
|
||||
services = {
|
||||
pueue.enable = true; # process queue in rust
|
||||
ssh-agent.enable = true;
|
||||
};
|
||||
|
||||
programs = {
|
||||
bat.enable = true; # cat in rust
|
||||
btop = {
|
||||
enable = true;
|
||||
settings.update_ms = 200;
|
||||
};
|
||||
# direnv.enable = true;
|
||||
# direnv.silent = true;
|
||||
eza.enable = true; # ls in rust
|
||||
fd.enable = true; # find in rust
|
||||
fzf.enable = true; # fuzzy finder in rust
|
||||
git = {
|
||||
enable = true;
|
||||
delta.enable = true; # diff in rust
|
||||
signing.format = "ssh";
|
||||
aliases = {
|
||||
cl = "clone";
|
||||
co = "checkout";
|
||||
pom = "push origin main";
|
||||
};
|
||||
};
|
||||
gitui.enable = true; # git ui in rust
|
||||
jujutsu.enable = true; # vcs in rust
|
||||
keychain = {
|
||||
enable = true;
|
||||
keys = ["id_ed25519"];
|
||||
};
|
||||
nix-index-database.comma.enable = true;
|
||||
nix-index.enable = true;
|
||||
nix-your-shell.enable = true;
|
||||
pay-respects.enable = true; # thefuck in rust
|
||||
ripgrep.enable = true; # grep in rust
|
||||
zk.enable = true;
|
||||
zoxide.enable = true; # fuzzy cd in rust
|
||||
zellij.enable = true;
|
||||
};
|
||||
|
||||
home.packages = with pkgs;
|
||||
[
|
||||
# development utils
|
||||
alejandra # nix formatter in rust
|
||||
# devenv # programming deps in rust
|
||||
(mkIf config.programs.jujutsu.enable jj-fzf) # fuzzy finder jujutsu tui
|
||||
just # make in rust
|
||||
silicon # create code pics in rust
|
||||
]
|
||||
++ [
|
||||
# console utils
|
||||
# bluetuith # bluetooth tui in go
|
||||
dua # disk space usage in rust
|
||||
duf # better df in go
|
||||
fend # calculator in rust
|
||||
mprocs # process runner in rust
|
||||
ouch # archive manager in rust
|
||||
# procs # ps in rust
|
||||
rbw # bitwarden cli in rust
|
||||
sd # sed in rust
|
||||
systemctl-tui # systemctl tui in rust
|
||||
trashy # trash cli in rust
|
||||
]
|
||||
++ [
|
||||
# misc apps
|
||||
adwaita-icon-theme
|
||||
# vial # qmk keyboard configuring app
|
||||
pinentry-qt # pinentry for rbw
|
||||
virt-manager # libvirt gui
|
||||
# waycheck # check wayland protocols
|
||||
gpu-screen-recorder-gtk
|
||||
]
|
||||
++ [
|
||||
# gui libadwaita apps
|
||||
celluloid # mpv gui in libadwaita
|
||||
# gnome-text-editor
|
||||
helvum # pipewire patchbay in rust
|
||||
junction # app chooser
|
||||
# loupe # image viewer and editor in rust
|
||||
mission-center # task manager in rust (partly)
|
||||
# nautilus # file manager
|
||||
overskride # bluetooth gui in rust
|
||||
papers # pdf reader in rust
|
||||
pika-backup # borg gui in rust
|
||||
pwvucontrol # pipewire gui in rust
|
||||
sonusmix # pipewire routing tool in rust
|
||||
# wdisplays # wlroots display configurator
|
||||
];
|
||||
|
||||
xdg.desktopEntries = {
|
||||
uni = {
|
||||
actions."Copy".exec = "fish -c \"~/.local/bin/uni --copy\"";
|
||||
categories = ["Utility" "X-Launch" "Network"];
|
||||
comment = "Select and open or copy URLs from a list.";
|
||||
exec = "fish -c \"~/.local/bin/uni\"";
|
||||
icon = "web-browser";
|
||||
name = "Uni URL Handler";
|
||||
startupNotify = true;
|
||||
terminal = false;
|
||||
type = "Application";
|
||||
};
|
||||
};
|
||||
}
|
Reference in New Issue
Block a user