nixos/gunther/leonv.nix

186 lines
3.9 KiB
Nix
Executable file

{ config, pkgs, inputs, ... }:
{
imports = [
./../common
./../modules/hyprland
];
/* The home.stateVersion option does not have a default and must be set */
home.stateVersion = "24.11";
home.username = "leonv";
home.homeDirectory = "/home/leonv";
modules.hyprland = {
enable = true;
hyprpaper = {
enable = true;
wallpaper = ./wallpaper.jpg;
};
monitor = [
"DP-1 , 2560x1440@144, 1920x0, 1"
"HDMI-A-1, 1920x1080@75 , 0x0 , 1"
];
workspace = [
"1, monitor:HDMI-A-1, default:true, persistent:true"
"2, monitor:DP-1 , default:true, persistent:true"
"special:scratchpad , on-created-empty:foot"
];
};
home.packages = with pkgs; [
prismlauncher
# smt solver for liquid haskell
z3
# operating systems stuff
grub2
xorriso
qemu
nasm
man-pages
man-pages-posix
cpplint
# stuff
swi-prolog
jq
vlc
openvpn
signal-desktop
discord-canary
firefox-wayland
google-chrome
thunderbird
gimp
qpdfview
wget
fontforge
gparted
eza
ripgrep
fd
zoom-us
obsidian
zotero
# development
go
jetbrains.idea-ultimate
gnumake
ghostscript
jdk11
gcc
gdb
doxygen
haskell.compiler.ghc981
cabal-install
haskell-language-server
python3
python3Packages.pygments
unifont
anki
pandoc
# yubikey
yubico-pam
yubikey-manager
# proof assistants
(agda.withPackages [
agdaPackages.standard-library
agdaPackages.agda-categories
])
coq
lean4
# for emacs
texlab
shellcheck
emacs
];
xdg.configHome = /home/leonv/.config;
xdg.configFile."doom/init.el".source = ./doom/init.el;
xdg.configFile."doom/config.el".source = ./doom/config.el;
xdg.configFile."doom/packages.el".source = ./doom/packages.el;
programs.home-manager.enable = true;
programs.zsh = {
enable = true;
shellAliases = {
clean = "sudo nix-env --delete-generations old --profile /nix/var/nix/profiles/system && sudo /nix/var/nix/profiles/system/bin/switch-to-configuration switch && sudo nix-store --gc";
ls = "eza";
ll = "eza -l";
l = "eza -lah";
code = "codium";
alg = "code ~/Git/algprog/tex";
nixos = "code ~/Git/nixos";
};
initExtra = ''
function rebuild () {
sudo nixos-rebuild switch --flake /home/leonv/Git/nixos
sudo cp -r /home/leonv/Git/nixos /etc/
}
'';
oh-my-zsh.enable = true;
};
gtk = {
enable = true;
theme = {
name = "Catppuccin-Macchiato-Compact-Flamingo-Dark";
package = pkgs.catppuccin-gtk.override {
accents = [ "flamingo" ];
size = "compact";
tweaks = [ "rimless" "black" ];
variant = "macchiato";
};
};
iconTheme = {
name = "Dracula";
package = pkgs.dracula-icon-theme;
};
font = {
name = "NotoSans Nerd Font";
};
gtk3 = {
extraConfig.gtk-application-prefer-dark-theme = true;
};
};
home.sessionVariables.GTK_THEME = "Catppuccin-Macchiato-Compact-Flamingo-Dark";
home.sessionPath = [ "$HOME/.config/emacs/bin" ];
home.pointerCursor = {
gtk.enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Classic";
size = 24;
};
programs.tofi = {
enable = true;
settings = {
width = "100%";
height = "100%";
border-width = 0;
outline-width = 0;
padding-left = "35%";
padding-top = "35%";
result-spacing = 25;
num-results = 5;
font = "monospace";
background-color = "#000A";
};
};
dconf.settings = {
# GTK4 Setup
"org/gnome/desktop/interface" = {
gtk-theme = "Catppuccin-Macchiato-Compact-Flamingo-Dark";
color-scheme = "prefer-dark";
};
};
services.mpris-proxy.enable = true;
}