nix-dotfiles/home.nix
2021-08-15 10:06:12 +02:00

235 lines
5.6 KiB
Nix

{ pkgs, lib, ... }:
let
nix-rice = fetchTarball {
url = "https://github.com/bertof/nix-rice/archive/refs/tags/v0.1.2.tar.gz";
sha256 = "15f97nwwvk828vnx6kk325zzjn4q37hrpp9aiqiz2qhfs06mr147";
};
callPackage = pkgs.lib.callPackageWith pkgs;
nord = import ./themes/nord.nix;
onedark = import ./themes/onedark.nix;
in
{
nixpkgs.overlays = [
(final: prev: { rice = (prev.lib.callPackageWith prev) nix-rice {}; }) # Custom library
(final: prev: (prev.lib.callPackageWith prev) ./custom/default.nix {}) # Custom packges
(
final: prev: rec {
rice = prev.rice // {
colorPalette = with pkgs.rice; palette.palette rec {
black = color.hexToRgba nord.n0;
red = color.hexToRgba nord.n11;
green = color.hexToRgba nord.n14;
yellow = color.hexToRgba nord.n13;
blue = color.hexToRgba nord.n10;
magenta = color.hexToRgba nord.n15;
cyan = color.hexToRgba nord.n8;
white = color.hexToRgba nord.n4;
bright-white = color.hexToRgba nord.n6;
bright-red = color.hexToRgba nord.n12;
cursor-cursor = color.hexToRgba nord.n4;
primary-background = color.tAlphaRgba (v: float.round (255 * opacity)) black;
};
font = {
normal = { package = pkgs.cantarell-fonts; name = "Cantarell"; };
monospace = {
package = (
pkgs.nerdfonts.override {
fonts = [ "FiraCode" ];
}
);
name = "FuraCode Nerd Font Mono";
};
};
opacity = 0.9;
};
}
)
(
final: prev: {
lockscreen = prev.lockscreen.override {
palette = prev.rice.colorPalette;
font = prev.rice.font.normal;
};
}
)
];
home = {
language.base = "it_IT.UTF-8";
keyboard.layout = "it";
keyboard.options = [ "terminate:ctrl_alt_bksp" "compose:rctrl" ];
packages = with pkgs; [
pulseaudio
arandr
authy
blender
catgirl # IRC
cava
ckan
discord
evolution
firefox
foliate # ebook reader
gallery-dl
gnome.dconf-editor
gnome.eog
gnome.evince
gnomeExtensions.appindicator
gnomeExtensions.dash-to-dock
gnomeExtensions.topicons-plus
gnome.file-roller
gnome.ghex
gnome.gitg
gnome.gnome-screenshot
gnome.gnome-sound-recorder
gnome.gnome-sudoku
gnome.gnome-system-monitor
gnome.gnome-tweaks
gnome.nautilus
gnome.quadrapassel
gnome.seahorse
gnome.sushi
google-chrome
gucharmap
htop
jetbrains.datagrip
keepassxc
krita
libreoffice-fresh
lutris-free
megacmd
mpv
neofetch
nix-prefetch-git
obsidian
openvpn
pavucontrol
pcmanfm
pentablet-driver
procps-ng
ripgrep
shotwell
skypeforlinux
slack
spotify
tdesktop
teams
transmission-gtk
virt-manager
wget
wineFull
wireguard
xclip
xournalpp
zoom-us
zotero
hunspellDicts.en_GB-large
hunspellDicts.en_US-large
hunspellDicts.it_IT
(
dwarf-fortress-packages.dwarf-fortress-full.override {
enableLegendsBrowser = false;
enableTextMode = true;
theme = "phoebus";
}
)
(
retroarch.override {
cores = with pkgs.libretro; [
mgba
pcsx_rearmed
ppsspp
];
}
)
];
};
imports = [
./modules/configurations.nix
./modules/fonts.nix
./modules/alacritty.nix
./modules/bash.nix
./modules/bat.nix
./modules/bottom.nix
./modules/broot.nix
./modules/bspwm.nix
./modules/dircolors.nix
./modules/direnv.nix
./modules/dunst.nix
# ./modules/fzf.nix
./modules/git.nix
./modules/go.nix
./modules/gpg.nix
./modules/grobi.nix
./modules/info.nix
# ./modules/joystickwake.nix
./modules/jq.nix
./modules/kakoune.nix
./modules/keepassxc.nix
./modules/keychain.nix
# ./modules/kitty.nix
./modules/lf.nix
./modules/libinput-gestures.nix
./modules/lorri.nix
./modules/man.nix
# ./modules/mangohud.nix
# ./modules/nix-index.nix
./modules/noti.nix
./modules/obs-studio.nix
# ./modules/pazi.nix
./modules/picom.nix
./modules/polybar.nix
./modules/gtk_theme.nix
./modules/rofi.nix
./modules/screen_locker.nix
./modules/ssh.nix
./modules/starship.nix
./modules/sxhkd.nix
./modules/syncthing.nix
./modules/terminator.nix
./modules/tmux.nix
./modules/update_background.nix
# ./modules/xidlehook.nix
./modules/zathura.nix
./modules/zoxide.nix
./modules/zsh.nix
./modules/pro_audio.nix
./modules/security.nix
./modules/shell_aliases.nix
./modules/security.nix
];
programs.home-manager.enable = true;
services = {
blueman-applet.enable = true;
caffeine.enable = true;
cbatticon.enable = true;
gnome-keyring.enable = true;
network-manager-applet.enable = true;
playerctld.enable = true;
# poweralertd.enable = true;
};
xsession = {
enable = true;
numlock.enable = true;
initExtra = ''
## Touchpad
${pkgs.xorg.xinput}/bin/xinput set-prop 'DELL0824:00 06CB:7E92 Touchpad' 'libinput Natural Scrolling Enabled' 1
${pkgs.xorg.xinput}/bin/xinput set-prop 'DELL0824:00 06CB:7E92 Touchpad' 'libinput Tapping Enabled' 1
'';
};
}