nix-dotfiles/home.nix
vorboyvo 770b7d23e9 Changed a bunch of packages installed through home manager
Added brightness and volume scripts to bind to media keys. Still imperfect
Refactored to put neovim in its own file, will do the same for others
2024-01-15 14:11:14 -05:00

154 lines
4.4 KiB
Nix

{ config, lib, pkgs, ... }:
{
home.username = "alice";
home.homeDirectory = "/home/alice";
home.stateVersion = "23.11";
# Configure cursor
home.pointerCursor = {
package = pkgs.vanilla-dmz;
name = "Vanilla-DMZ";
size = 256;
};
# Install packages
home.packages = with pkgs;
[ texliveFull ] ++ # TeX distribution
[ ocaml ] ++ # OCaml
[ grim slurp wl-clipboard jq ] ++ # Basic utilities
[ bitwarden-cli ] ++ # Personalized selection of command-line (CLI/TUI) apps
[ kitty ] ++ # Terminal emulator
[ firefox cinnamon.nemo gnome.file-roller cinnamon.nemo-fileroller imv vlc pavucontrol grim slurp wl-clipboard ] ++ # Basic graphical apps
[ libreoffice signal-desktop element-desktop prismlauncher mumble ] ++ # Personalized selection of graphical apps
[ bemenu j4-dmenu-desktop ] ++ # Sway-related packages
[ noto-fonts redhat-official-fonts overpass ] ++ # Fonts
# [ vanilla-dmz ] ++ # Cursor
[ ];
programs.home-manager.enable = true;
# Enabling bash from home-manager means environment variables set by HM get set correctly
programs.bash = {
enable = true;
# initExtra = ''
# . "$HOME/.nix-profile/etc/profile.d/hm-session-vars.sh"
# '';
};
programs.git = {
enable = true;
extraConfig = { init.defaultBranch = "main"; };
};
wayland.windowManager.sway = import ./wayland/sway.nix { inherit config lib pkgs; };
programs.swaylock = {
enable = true;
settings = {
font-size = 14;
};
};
services.swayidle = {
enable = true;
events = [
{ event = "before-sleep"; command = "${pkgs.lib.getExe pkgs.swaylock} -f"; }
];
};
# programs.waybar = import ./wayland/waybar.nix { inherit config lib pkgs; };
# configure fonts correctly
fonts.fontconfig.enable = true;
xdg.configFile."fontconfig/conf.d/20-default.fonts.conf".source = ./config/20-default-fonts.conf;
# fix nemo terminal integration
dconf.settings."org/cinnamon/desktop/applications/terminal".exec = "kitty";
programs.kitty = {
enable = true;
font = {
name = "NotoMono";
size = 11;
};
shellIntegration.enableZshIntegration = true;
};
programs.neovim = import ./programs/neovim.nix;
programs.zathura = {
enable = true;
};
programs.firefox = {
enable = true;
profiles = {
default = {
id = 0;
name = "Main Profile";
isDefault = true;
search = {
force = true;
default = "DuckDuckGo";
order = [ "DuckDuckGo" "Google" ];
engines = {
"Nix Packages" = {
urls = [{
template = "https://search.nixos.org/packages";
params = [
{ name = "type"; value = "packages"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@np" ];
};
"NixOS Options" = {
urls = [{
template = "https://search.nixos.org/options";
params = [
{ name = "type"; value = "options"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@no" ];
};
"NixOS Wiki" = {
urls = [{ template = "https://nixos.wiki/index.php?search={searchTerms}"; }];
iconUpdateURL = "https://nixos.wiki/favicon.png";
updateInterval = 24 * 60 * 60 * 1000; # every day
definedAliases = [ "@nw" ];
};
"HomeManager Unofficial Options" = {
urls = [{
template = "https://mipmip.github.io/home-manager-option-search";
params = [
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@hm" ];
};
"Google".metaData.alias = "@g"; #builtin engines only support specifying one additional alias
};
};
# extensions = with pkgs.nur.repos.rycee.firefox-addons; [
# ublock-origin
# bitwarden
# multi-account-containers
# ];
settings = {
"browser.search.region" = "CA";
"browser.search.isUS" = false;
};
};
};
};
# programs.thunderbird = {
# enable = true;
# };
}