{ pkgs, lib, ... }: let nixpkgs = import {}; nixos-unstable = import {}; nixos = import {}; 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 { fonts.fontconfig = { enable = true; }; 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; 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; [ arandr # audacity authy # blender catgirl # IRC 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 megasync mpv neofetch nerdfonts nix-prefetch-git obsidian openvpn pavucontrol pcmanfm pentablet-driver procps-ng ripgrep shotwell skypeforlinux slack spotify teams transmission-gtk virt-manager wget wineFull wireguard xclip xournalpp zoom-us zotero hunspellDicts.it_IT hunspellDicts.en_GB-large hunspellDicts.en_US-large blender ( dwarf-fortress-packages.dwarf-fortress-full.override { enableLegendsBrowser = false; enableTextMode = true; theme = "phoebus"; } ) ( retroarch.override { cores = with pkgs.libretro; [ mgba pcsx_rearmed ppsspp ]; } ) ] ++ ( with nixos; [ tdesktop ] ); }; programs.zsh.enable = true; imports = [ ./modules/configurations.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/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/xidelhook.nix # ./modules/zathura.nix ./modules/zoxide.nix ./modules/zsh.nix ./modules/shell_aliases.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 ''; }; }