mirror of
https://github.com/alyraffauf/nixcfg.git
synced 2024-11-26 07:01:53 -05:00
287 lines
8.6 KiB
Nix
287 lines
8.6 KiB
Nix
{
|
|
config,
|
|
inputs,
|
|
lib,
|
|
pkgs,
|
|
self,
|
|
...
|
|
}: {
|
|
home = {
|
|
homeDirectory = "/home/aly";
|
|
|
|
file."${config.xdg.cacheHome}/keepassxc/keepassxc.ini".text = lib.generators.toINI {} {
|
|
General.LastActiveDatabase = "${config.home.homeDirectory}/sync/Passwords.kdbx";
|
|
};
|
|
|
|
packages = with pkgs; [
|
|
browsh
|
|
curl
|
|
fractal
|
|
gh
|
|
git
|
|
google-chrome
|
|
obsidian
|
|
plexamp
|
|
python3
|
|
ruby
|
|
tauon
|
|
trayscale
|
|
webcord
|
|
wget
|
|
];
|
|
|
|
stateVersion = "24.05";
|
|
username = "aly";
|
|
};
|
|
|
|
programs = {
|
|
home-manager.enable = true;
|
|
|
|
firefox = {
|
|
enable = true;
|
|
profiles.work = {
|
|
id = 1;
|
|
|
|
search = {
|
|
default = "Google";
|
|
force = true;
|
|
engines = {
|
|
"Bing" = {
|
|
metaData = {
|
|
hidden = true;
|
|
alias = "!bing";
|
|
};
|
|
};
|
|
"DuckDuckGo" = {
|
|
metaData = {
|
|
hidden = true;
|
|
alias = "!ddg";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
profiles.default = {
|
|
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
|
augmented-steam
|
|
decentraleyes
|
|
keepassxc-browser
|
|
omnivore
|
|
sidebery
|
|
sponsorblock
|
|
ublock-origin
|
|
zoom-redirector
|
|
];
|
|
|
|
id = 0;
|
|
|
|
search = {
|
|
default = "DuckDuckGo";
|
|
force = true;
|
|
engines = {
|
|
"nixpkgs" = {
|
|
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 = ["!nix"];
|
|
};
|
|
|
|
"Bing" = {
|
|
metaData = {
|
|
hidden = true;
|
|
alias = "!bing";
|
|
};
|
|
};
|
|
"Google" = {
|
|
metaData = {
|
|
hidden = true;
|
|
alias = "!google";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
settings = {
|
|
"network.cookie.cookieBehavior" = 1;
|
|
"permissions.default.desktop-notification" = 2;
|
|
"privacy.donottrackheader.enabled" = true;
|
|
"privacy.fingerprintingProtection" = true;
|
|
"privacy.trackingprotection.emailtracking.enabled" = true;
|
|
"privacy.trackingprotection.enabled" = true;
|
|
"privacy.trackingprotection.global-checkbox.enabled" = true;
|
|
"privacy.trackingprotection.socialtracking.enabled" = true;
|
|
"services.sync.prefs.sync.browser.uiCustomization.state" = true;
|
|
|
|
# "browser.uiCustomization.state" = ''
|
|
# {
|
|
# "placements": {
|
|
# "widget-overflow-fixed-list": [],
|
|
# "unified-extensions-area": [
|
|
# "ublock0_raymondhill_net-browser-action",
|
|
# "sponsorblocker_ajay_app-browser-action",
|
|
# "_019b606a-6f61-4d01-af2a-cea528f606da_-browser-action",
|
|
# "jid1-bofifl9vbdl2zq_jetpack-browser-action"
|
|
# ],
|
|
# "nav-bar": [
|
|
# "back-button",
|
|
# "forward-button",
|
|
# "stop-reload-button",
|
|
# "customizableui-special-spring1",
|
|
# "urlbar-container",
|
|
# "customizableui-special-spring2",
|
|
# "downloads-button",
|
|
# "save-extension_omnivore_app-browser-action",
|
|
# "keepassxc-browser_keepassxc_org-browser-action",
|
|
# "_3c078156-979c-498b-8990-85f7987dd929_-browser-action",
|
|
# "unified-extensions-button",
|
|
# "fxa-toolbar-menu-button"
|
|
# ],
|
|
# "toolbar-menubar": [
|
|
# "menubar-items"
|
|
# ],
|
|
# "TabsToolbar": [
|
|
# "firefox-view-button",
|
|
# "tabbrowser-tabs",
|
|
# "new-tab-button",
|
|
# "alltabs-button"
|
|
# ],
|
|
# "PersonalToolbar": [
|
|
# "personal-bookmarks"
|
|
# ]
|
|
# },
|
|
# "seen": [
|
|
# "save-extension_omnivore_app-browser-action",
|
|
# "_019b606a-6f61-4d01-af2a-cea528f606da_-browser-action",
|
|
# "sponsorblocker_ajay_app-browser-action",
|
|
# "developer-button",
|
|
# "keepassxc-browser_keepassxc_org-browser-action",
|
|
# "ublock0_raymondhill_net-browser-action",
|
|
# "jid1-bofifl9vbdl2zq_jetpack-browser-action",
|
|
# "_3c078156-979c-498b-8990-85f7987dd929_-browser-action"
|
|
# ],
|
|
# "dirtyAreaCache": [
|
|
# "unified-extensions-area",
|
|
# "nav-bar",
|
|
# "toolbar-menubar",
|
|
# "TabsToolbar",
|
|
# "PersonalToolbar"
|
|
# ],
|
|
# "currentVersion": 20,
|
|
# "newElementCount": 4
|
|
# }
|
|
# '';
|
|
};
|
|
};
|
|
};
|
|
|
|
git = {
|
|
enable = true;
|
|
userName = "Aly Raffauf";
|
|
userEmail = "aly@raffauflabs.com";
|
|
};
|
|
};
|
|
|
|
wayland.windowManager = {
|
|
sway.config = {
|
|
assigns = {
|
|
"workspace 1: web" = [{app_id = "firefox";} {app_id = "brave-browser";}];
|
|
"workspace 2: code" = [{app_id = "codium-url-handler";}];
|
|
"workspace 3: chat" = [{app_id = "org.gnome.Fractal";} {app_id = "WebCord";}];
|
|
"workspace 4: work" = [{app_id = "google-chrome";} {app_id = "chromium-browser";}];
|
|
"workspace 10: zoom" = [{class = "zoom";} {app_id = "Zoom";}];
|
|
};
|
|
|
|
startup = [
|
|
{command = ''${lib.getExe' pkgs.keepassxc "keepassxc"}'';}
|
|
];
|
|
};
|
|
|
|
hyprland.extraConfig = ''
|
|
# Workspace - Browser
|
|
workspace = 1, defaultName:web, on-created-empty:${config.alyraffauf.defaultApps.webBrowser.exe}
|
|
windowrulev2 = workspace 1,class:(firefox)
|
|
windowrulev2 = workspace 1,class:(brave-browser)
|
|
|
|
# Workspace - Coding
|
|
workspace = 2, defaultName:code, on-created-empty:${config.alyraffauf.defaultApps.editor.exe}
|
|
windowrulev2 = workspace 2,class:(codium-url-handler)
|
|
|
|
# Workspace - Chrome
|
|
windowrulev2 = workspace 3,class:(google-chrome)
|
|
|
|
# Scratchpad Chat
|
|
# bind = SUPER, S, togglespecialworkspace, magic
|
|
# bind = SUPER SHIFT, W, movetoworkspace, special:magic
|
|
workspace = special:magic, on-created-empty:${lib.getExe pkgs.fractal}
|
|
windowrulev2 = workspace special:magic,class:(org.gnome.Fractal)
|
|
windowrulev2 = workspace special:magic,class:(WebCord)
|
|
|
|
# Scratchpad Notes
|
|
bind = SUPER, N, togglespecialworkspace, notes
|
|
bind = SUPER SHIFT, N, movetoworkspace, special:notes
|
|
workspace = special:notes, on-created-empty:${lib.getExe' pkgs.obsidian "obsidian"}
|
|
# windowrulev2 = workspace special:notes,class:(obsidian)
|
|
|
|
# # Scratchpad Music
|
|
# bind = SUPER, P, togglespecialworkspace, music
|
|
# bind = SUPER SHIFT, P, movetoworkspace, special:music
|
|
# workspace = special:music, on-created-empty:${lib.getExe' pkgs.plexamp "plexamp"}
|
|
# windowrulev2 = workspace special:music,class:(Plexamp)
|
|
'';
|
|
};
|
|
|
|
alyraffauf = {
|
|
apps = {
|
|
alacritty.enable = true;
|
|
bash.enable = true;
|
|
chromium = {
|
|
enable = true;
|
|
package = pkgs.brave;
|
|
};
|
|
emacs.enable = true;
|
|
eza.enable = true;
|
|
fastfetch.enable = true;
|
|
firefox.enable = true;
|
|
fzf.enable = true;
|
|
keepassxc.enable = true;
|
|
neofetch.enable = true;
|
|
neovim.enable = true;
|
|
tmux.enable = true;
|
|
vsCodium.enable = true;
|
|
};
|
|
|
|
defaultApps = {
|
|
webBrowser = {
|
|
package = config.programs.chromium.package;
|
|
desktop = "brave-browser.desktop";
|
|
};
|
|
};
|
|
|
|
desktop = {
|
|
startupApps = [(lib.getExe' pkgs.keepassxc "keepassxc")];
|
|
};
|
|
|
|
scripts = {
|
|
pp-adjuster.enable = true;
|
|
};
|
|
|
|
theme = {
|
|
wallpaper = "${config.xdg.dataHome}/backgrounds/wallhaven-3led2d.jpg";
|
|
};
|
|
};
|
|
}
|