181 lines
4.9 KiB
Nix
181 lines
4.9 KiB
Nix
{ config, pkgs, user, firefox-addons, ... }:
|
|
|
|
{
|
|
# Home Manager needs a bit of information about you and the
|
|
# paths it should manage.
|
|
home.username = user;
|
|
home.homeDirectory = "/home/${user}";
|
|
|
|
# Packages that should be installed to the user profile.
|
|
home.packages = with pkgs; [
|
|
aseprite
|
|
audacity
|
|
blender
|
|
darktable
|
|
digikam
|
|
discord
|
|
drawio
|
|
exiftool # For digikam
|
|
famistudio
|
|
digikam
|
|
firefox
|
|
flameshot
|
|
gimp-with-plugins
|
|
gnucash
|
|
godot_4
|
|
grafx2
|
|
jellyfin-media-player
|
|
keepassxc
|
|
krita
|
|
rawtherapee
|
|
libreoffice
|
|
lmms
|
|
lutris
|
|
moonlight-qt
|
|
ncdu
|
|
nextcloud-client
|
|
nixpkgs-fmt
|
|
obsidian
|
|
picard
|
|
rawtherapee
|
|
spotify
|
|
sqlitebrowser
|
|
steam
|
|
syncthing
|
|
ventoy-full
|
|
vlc
|
|
winetricks
|
|
wineWowPackages.unstableFull
|
|
yt-dlp
|
|
];
|
|
|
|
# WM/DE config
|
|
gtk = {
|
|
enable = true;
|
|
font.name = "Victor Mono SemiBold 12";
|
|
theme = {
|
|
name = "SolArc-Dark";
|
|
package = pkgs.solarc-gtk-theme;
|
|
};
|
|
};
|
|
|
|
# User software configurations
|
|
programs = {
|
|
bash = {
|
|
shellAliases = {
|
|
"git-override" = "git add . && git commit --amend --no-edit && git push --force-with-lease";
|
|
};
|
|
};
|
|
firefox = {
|
|
enable = true;
|
|
profiles.default = {
|
|
settings = {
|
|
"browser.newtabpage.activity-stream.discoverystream.saveToPocketCard.enabled" = false;
|
|
"browser.newtabpage.activity-stream.discoverystream.sendToPocket.enabled" = false;
|
|
"browser.newtabpage.activity-stream.feeds.section.topstories" = false;
|
|
"browser.newtabpage.activity-stream.feeds.system.topstories" = false;
|
|
"browser.newtabpage.activity-stream.improvesearch.topSiteSearchShortcuts.havePinned" = "";
|
|
"browser.newtabpage.activity-stream.section.highlights.includePocket" = false;
|
|
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
|
"browser.newtabpage.activity-stream.system.showSponsored" = false;
|
|
"browser.newtabpage.pinned" = [ ];
|
|
"browser.urlbar.suggest.quicksuggest.sponsored" = false;
|
|
"extensions.autoDisableScopes" = 0;
|
|
};
|
|
extensions = with firefox-addons; [
|
|
darkreader
|
|
multi-account-containers
|
|
simple-tab-groups
|
|
ublock-origin
|
|
umatrix
|
|
];
|
|
search = {
|
|
force = true;
|
|
default = "DuckDuckGo";
|
|
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" ];
|
|
};
|
|
};
|
|
order = [ "DuckDuckGo" "Nix Packages" "Wikipedia" "Google" "Amazon" ];
|
|
};
|
|
};
|
|
};
|
|
|
|
git = {
|
|
enable = true;
|
|
userEmail = "alexmat2on@protonmail.com";
|
|
userName = "alex";
|
|
ignores = [ "*~" ];
|
|
extraConfig = {
|
|
init.defaultBranch = "main";
|
|
};
|
|
};
|
|
kitty = {
|
|
enable = true;
|
|
# TODO figure out how to get atau-nixpkgs working from the flake with different systems
|
|
# background_image ${atau-nixpkgs.atau-wallpapers}/share/backgrounds/atau-wallpapers/aos1.png
|
|
extraConfig = ''
|
|
background_tint 0.2
|
|
background_image_layout centered
|
|
|
|
modify_font cell_width 110%
|
|
|
|
window_border_width 1
|
|
window_margin_width 10
|
|
window_padding_width 2
|
|
'';
|
|
theme = "Rosé Pine Dawn";
|
|
font.package = pkgs.victor-mono;
|
|
font.name = "Victor Mono";
|
|
font.size = 12;
|
|
};
|
|
mpv = {
|
|
enable = true;
|
|
scriptOpts = {
|
|
"ytdl_hook" = {
|
|
"ytdl_path" = "${pkgs.yt-dlp}/bin/yt-dlp";
|
|
};
|
|
};
|
|
};
|
|
vscode = {
|
|
enable = true;
|
|
extensions = with pkgs; [
|
|
vscode-extensions.eamodio.gitlens
|
|
vscode-extensions.jnoortheen.nix-ide
|
|
vscode-extensions.scalameta.metals
|
|
];
|
|
userSettings = {
|
|
"workbench.colorTheme" = "Default Dark Modern";
|
|
"security.workspace.trust.untrustedFiles" = "open";
|
|
"nix.formatterPath" = "nixpkgs-fmt";
|
|
"files.autoSave" = "afterDelay";
|
|
"editor.formatOnSave" = true;
|
|
};
|
|
};
|
|
};
|
|
|
|
# This value determines the Home Manager release that your
|
|
# configuration is compatible with. This helps avoid breakage
|
|
# when a new Home Manager release introduces backwards
|
|
# incompatible changes.
|
|
#
|
|
# You can update Home Manager without changing this value. See
|
|
# the Home Manager release notes for a list of state version
|
|
# changes in each release.
|
|
home.stateVersion = "23.05";
|
|
home.enableNixpkgsReleaseCheck = true;
|
|
|
|
# Let Home Manager install and manage itself.
|
|
programs.home-manager.enable = true;
|
|
}
|