207 lines
4.7 KiB
Nix
207 lines
4.7 KiB
Nix
{
|
|
inputs,
|
|
outputs,
|
|
lib,
|
|
config,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
# You can import other home-manager modules here
|
|
imports = [
|
|
# If you want to use modules your own flake exports (from modules/home-manager):
|
|
# outputs.homeManagerModules.example
|
|
|
|
# Or modules exported from other flakes (such as nix-colors):
|
|
# inputs.nix-colors.homeManagerModules.default
|
|
|
|
# You can also split up your configuration and import pieces of it here:
|
|
# ./nvim.nix
|
|
./package-configs/plasma-desktop.nix
|
|
./package-configs/firefox.nix
|
|
./package-configs/konsole
|
|
./package-configs/foot
|
|
];
|
|
nixpkgs = {
|
|
# You can add overlays here
|
|
overlays = [
|
|
# You can also add overlays exported from other flakes:
|
|
# neovim-nightly-overlay.overlays.default
|
|
|
|
# Or define it inline, for example:
|
|
# (final: prev: {
|
|
# hi = final.hello.overrideAttrs (oldAttrs: {
|
|
# patches = [ ./change-hello-to-hi.patch ];
|
|
# });
|
|
# })
|
|
(final: prev: {
|
|
catppuccin-vsc = final.catppuccin-vsc.overrideAttrs (oldAttrs: {
|
|
accent = "mauve";
|
|
boldKeywords = true;
|
|
italicComments = true;
|
|
italicKeywords = true;
|
|
extraBordersEnabled = false;
|
|
workbenchMode = "default";
|
|
bracketMode = "rainbow";
|
|
colorOverrides = {};
|
|
customUIColors = {};
|
|
});
|
|
})
|
|
(final: prev: {
|
|
catppuccin-vsc = final.catppuccin-vsc.overrideAttrs (oldAttrs: {
|
|
accent = "mauve";
|
|
boldKeywords = true;
|
|
italicComments = true;
|
|
italicKeywords = true;
|
|
extraBordersEnabled = false;
|
|
workbenchMode = "default";
|
|
bracketMode = "rainbow";
|
|
colorOverrides = {};
|
|
customUIColors = {};
|
|
});
|
|
})
|
|
];
|
|
# Configure your nixpkgs instance
|
|
config = {
|
|
# Disable if you don't want unfree packages
|
|
allowUnfree = true;
|
|
};
|
|
};
|
|
|
|
home = {
|
|
username = "lillian";
|
|
homeDirectory = "/home/lillian";
|
|
};
|
|
|
|
# Add stuff for your user as you see fit:
|
|
# programs.neovim.enable = true;
|
|
# home.packages = with pkgs; [ steam ];
|
|
|
|
home.packages = with pkgs; [
|
|
# Coding:
|
|
direnv
|
|
git
|
|
git-credential-manager
|
|
git-credential-manager
|
|
ruff
|
|
kate
|
|
|
|
# Chat applications:
|
|
signal-desktop
|
|
webcord-vencord
|
|
|
|
# Gaming:
|
|
prismlauncher
|
|
steam
|
|
|
|
# Multimedia:
|
|
freetube
|
|
vlc
|
|
|
|
# Office applications:
|
|
onlyoffice-bin
|
|
gimp
|
|
thunderbird
|
|
|
|
# System tools:
|
|
rage
|
|
flameshot
|
|
fzf
|
|
nextcloud-client
|
|
nitrokey-app
|
|
protonvpn-gui
|
|
virtualbox
|
|
watchmate
|
|
qbittorrent
|
|
|
|
# Theming:
|
|
catppuccin-cursors
|
|
(catppuccin-kde.override {
|
|
flavour = ["macchiato"];
|
|
accents = ["mauve"];
|
|
})
|
|
catppuccin-sddm-corners
|
|
|
|
# Theming:
|
|
catppuccin-cursors
|
|
(catppuccin-kde.override {
|
|
flavour = ["macchiato"];
|
|
accents = ["mauve"];
|
|
})
|
|
catppuccin-sddm-corners
|
|
|
|
# Web browsing:
|
|
firefoxpwa
|
|
firefoxpwa
|
|
ungoogled-chromium
|
|
];
|
|
|
|
programs.vscode = {
|
|
enable = true;
|
|
package = pkgs.vscodium;
|
|
extensions = with pkgs.vscode-extensions; [
|
|
catppuccin.catppuccin-vsc
|
|
catppuccin.catppuccin-vsc-icons
|
|
catppuccin.catppuccin-vsc
|
|
catppuccin.catppuccin-vsc-icons
|
|
charliermarsh.ruff
|
|
eamodio.gitlens
|
|
github.vscode-pull-request-github
|
|
jnoortheen.nix-ide
|
|
kamadorueda.alejandra
|
|
mkhl.direnv
|
|
ms-toolsai.jupyter
|
|
ms-pyright.pyright
|
|
ms-python.black-formatter
|
|
ms-python.vscode-pylance
|
|
ms-vscode-remote.remote-ssh
|
|
oderwat.indent-rainbow
|
|
rust-lang.rust-analyzer
|
|
yzhang.markdown-all-in-one
|
|
];
|
|
};
|
|
|
|
programs.obs-studio = {
|
|
enable = true;
|
|
plugins = with pkgs.obs-studio-plugins; [
|
|
wlrobs
|
|
obs-backgroundremoval
|
|
obs-pipewire-audio-capture
|
|
];
|
|
};
|
|
|
|
# Enable home-manager and git
|
|
programs.home-manager.enable = true;
|
|
programs.git = {
|
|
enable = true;
|
|
userEmail = "git@lillianviolet.dev";
|
|
userName = "Lillian-Violet";
|
|
extraConfig = {
|
|
init = {
|
|
defaultBranch = "main";
|
|
};
|
|
};
|
|
ignores = [
|
|
"*.direnv"
|
|
"*.vscode"
|
|
".envrc"
|
|
"venv"
|
|
"venv"
|
|
];
|
|
};
|
|
|
|
programs.gpg.enable = true;
|
|
programs.gpg.settings = {
|
|
default-key = "0d43 5407 034c 2ad9 2d42 799d 280e 061d ff60 0f0d";
|
|
default-recipient-self = true;
|
|
auto-key-locate = "local,wkd,keyserver";
|
|
keyserver = "hkps://keys.openpgp.org";
|
|
auto-key-retrieve = true;
|
|
auto-key-import = true;
|
|
keyserver-options = "honor-keyserver-url";
|
|
no-autostart = true;
|
|
};
|
|
|
|
# Nicely reload system units when changing configs
|
|
systemd.user.startServices = "sd-switch";
|
|
}
|