nixos-config/home/home.nix
2024-10-02 00:25:06 -04:00

349 lines
7 KiB
Nix

{ nix-flatpak, lib, pkgs, inputs, ... }:
{
nixpkgs.config.allowUnfree = true;
home = {
packages = with pkgs; [
#eza
just
#fd
#fzf
#bat
jq
yt-dlp
#htop
# ripgrep
erdtree
age
figlet
ffmpeg
rlwrap
pinentry
gcr
gnutar
unzip
zip
htop
owl
#pass
dconf
gnupg
gcc
gnutls
gettext
xorg.libX11
freetype.dev
gnumake
flex
bison
mesa
maestral
maestral-gui
sane-airscan
xsane
dbus
gst_all_1.gstreamer
alsa-oss
fontconfig
powertop
usbutils
pciutils
util-linux
coreutils
libgcc
raylib
SDL2.dev
protonplus
ruby
janet
jpm
python3
python311Packages.pip
sbcl
nodejs_18
platformio-core
#borgmatic
kanata-with-cmd
#wezterm
lazygit
#nnn
icloudpd
jetbrains-mono
libheif
libheif.out
nixd
fishPlugins.foreign-env
fishPlugins.z
fishPlugins.fzf
fishPlugins.bass
fishPlugins.autopair
via
bitwarden-cli
bitwarden-desktop
rbw
tailscale
protonplus
solaar
logitech-udev-rules
gnomeExtensions.just-perfection
gnomeExtensions.dash-to-dock
gnomeExtensions.solaar-extension
gnome-software
gnome-tweaks
gnome-photos
colloid-gtk-theme
colloid-icon-theme
whitesur-gtk-theme
whitesur-cursors
whitesur-icon-theme
graphite-gtk-theme
graphite-cursors
papers
newsflash
planify
wineWowPackages.stagingFull
wineWowPackages.fonts
winetricks
spice
spice-gtk
spice-protocol
virt-viewer
zoom-us
nyxt
librewolf
ungoogled-chromium
obsidian
vlc
polychromatic
discord
slack
signal-desktop
libreoffice
plexamp
carla
wireplumber
audacity
supercollider-with-plugins
bitwig-studio
blender
davinci-resolve-studio
steam
zotero_7
handbrake
renoise
yabridge
yabridgectl
ansel
rawtherapee
inkscape
gimp
epson-escpr
kicad
openscad-unstable
openscad-lsp
plugdata
pavucontrol
qpwgraph
alsa-utils
# Audio plugins (LV2, VST2, VST3, LADSPA)
distrho
eq10q
lsp-plugins
x42-plugins
x42-gmsynth
dragonfly-reverb
FIL-plugins
geonkick
bespokesynth
];
username = "emenel";
homeDirectory = "/home/emenel";
sessionPath = [ "/home/emenel/.config/emacs/bin" "/home/emenel/.npm-packages/bin" ];
sessionVariables = {
EDITOR = "emacsclient -r";
WINEFSYNC = 1;
};
stateVersion = "24.05";
};
home.pointerCursor = {
gtk.enable = true;
package = pkgs.vanilla-dmz;
name = "Vanilla-DMZ";
};
programs = {
home-manager.enable = true;
direnv = {
enable = true;
nix-direnv.enable = true;
};
fish = {
enable = true;
shellAliases = {
"ls" = "eza";
};
};
starship = {
enable = true;
enableFishIntegration = true;
};
mu.enable = true;
mbsync.enable = true;
msmtp.enable = true;
emacs = {
enable = true;
package = pkgs.emacs;
extraPackages = epkgs: [
epkgs.mu4e
epkgs.vterm
];
};
ripgrep = {
enable = true;
};
thefuck = {
enable = true;
enableFishIntegration = true;
};
wezterm = {
enable = true;
};
bat = {
enable = true;
};
# borgmatic = {
# enable = true;
# };
eza = {
enable = true;
enableFishIntegration = true;
};
fd = {
enable = true;
};
fzf = {
enable = true;
enableFishIntegration = true;
};
git = {
enable = true;
lfs.enable = true;
};
htop.enable = true;
nnn = {
enable = true;
};
pandoc.enable = true;
password-store.enable = true;
};
dconf.settings = {
"org/gnome/desktop/background" = {
picture-options = "none";
primary-color = "#222222";
};
"org/gnome/shell/keybindings" = {
shift-overview-up = ["disabled"];
shift-overview-down = ["disabled"];
switch-to-application-1 = ["disabled"];
switch-to-application-2 = ["disabled"];
switch-to-application-3 = ["disabled"];
switch-to-application-4 = ["disabled"];
switch-to-application-5 = ["disabled"];
switch-to-application-6 = ["disabled"];
switch-to-application-7 = ["disabled"];
switch-to-application-8 = ["disabled"];
switch-to-application-9 = ["disabled"];
switch-to-application-10 = ["disabled"];
};
};
# wayland.windowManager.sway = {
# enable = true;
# config = rec {
# modifier = "Mod4";
# # Use kitty as default terminal
# terminal = "wezterm";
# startup = [
# # Launch Firefox on start
# {command = "firefox";}
# ];
# };
# };
# # kanshi systemd service
# systemd.user.services.kanshi = {
# environment = {
# WAYLAND_DISPLAY="wayland-1";
# DISPLAY = ":0";
# };
# serviceConfig = {
# Type = "simple";
# ExecStart = ''${pkgs.kanshi}/bin/kanshi -c kanshi_config_file'';
# };
# };
nixpkgs.config.packageOverrides = pkgs: {
renoise = pkgs.renoise.override {
releasePath = /home/emenel/temp/rns_344_linux_x86_64.tar.gz;
};
};
services = {
flatpak.enable = true;
};
xdg.systemDirs.data = [
"/home/emenel/.local/share/applications/wine/Programs"
"/home/emenel/.local/share/applications"
"/var/lib/flatpak/exports/share"
"/home/emenel/.local/share/flatpak/exports/share"
"/home/emenel/.nix-profile/share/applications"
];
services.flatpak.packages = [
"io.github.zen_browser.zen"
"com.github.johnfactotum.QuickLookup"
"com.heroicgameslauncher.hgl"
"io.github.dyegoaurelio.simple-wireplumber-gui"
"io.github.dgsasha.Remembrance"
];
home.file.".npmrc".source = ../dotfiles/dot_npmrc;
xdg.configFile."kmonad".source = ../dotfiles/dot_config/kmonad;
xdg.configFile."just".source = ../dotfiles/dot_config/just/justfile;
xdg.configFile."starship.toml".source = ../dotfiles/dot_config/starship.toml;
xdg.configFile."wezterm".source = ../dotfiles/dot_config/wezterm;
xdg.configFile."git".source = ../dotfiles/dot_config/git;
home.file.".sbclrc".source = ../dotfiles/dot_sbclrc;
home.file.".signature".source = ../dotfiles/dot_signature;
home.file.".config/fish/functions" = {
source = ../dotfiles/dot_config/fish/functions;
recursive = true;
};
xdg.configFile."emacs".enable = false;
home.file.".msmtprc".source = ../dotfiles/dot_msmtprc;
home.file.".mbsyncrc".source = ../dotfiles/dot_mbsyncrc;
home.file.".local/share/flf".source = ../dotfiles/dot_local/share/flf;
}