mirror of
https://git.lgmrszd.xyz/Lgmrszd/nix-cfg.git
synced 2024-11-23 03:37:48 +01:00
240 lines
4.8 KiB
Nix
240 lines
4.8 KiB
Nix
{ config, osConfig, secrets, pkgs, pkgs-stable, ... }:
|
|
|
|
{
|
|
home.username = "lgm";
|
|
home.homeDirectory = "/home/lgm";
|
|
|
|
# https://nixos-and-flakes.thiscute.world/nixos-with-flakes/start-using-home-manager
|
|
|
|
# Packages that should be installed to the user profile.
|
|
home.packages = with pkgs; [
|
|
# my scripts
|
|
((import ./scripts/rebuild.nix) {inherit pkgs;})
|
|
wineWowPackages.waylandFull
|
|
openconnect
|
|
ani-cli
|
|
# file editing
|
|
onlyoffice-bin
|
|
# theming
|
|
libsForQt5.qtstyleplugin-kvantum
|
|
# osConfig.nur.repos.baduhai.koi
|
|
(catppuccin-gtk.override {
|
|
variant = "latte";
|
|
accents = [ "yellow" ];
|
|
})
|
|
(catppuccin-kde.override {
|
|
flavour = [ "macchiato" "latte" ];
|
|
accents = [ "yellow" ];
|
|
})
|
|
(catppuccin-kvantum.override {
|
|
variant = "Latte";
|
|
accent = "Yellow";
|
|
})
|
|
(catppuccin-kvantum.override {
|
|
variant = "Macchiato";
|
|
accent = "Yellow";
|
|
})
|
|
|
|
|
|
# web
|
|
firefox
|
|
protonvpn-gui
|
|
protonvpn-cli
|
|
# security
|
|
keepassxc
|
|
onlykey
|
|
onlykey-agent
|
|
libsForQt5.plasma-vault
|
|
gpgme.dev # For mailvelope
|
|
|
|
neofetch
|
|
libsForQt5.yakuake
|
|
libsForQt5.kgpg
|
|
|
|
# messaging
|
|
(discord.override {
|
|
withOpenASAR = true;
|
|
withVencord = true;
|
|
})
|
|
telegram-desktop
|
|
libsForQt5.tokodon
|
|
libsForQt5.neochat
|
|
# pkgs-unstable.cinny-desktop
|
|
# pkgs-unstable.thunderbird # see programs.thunderbird
|
|
# graphics
|
|
gimp
|
|
krita
|
|
inkscape-with-extensions
|
|
blockbench-electron
|
|
# games
|
|
prismlauncher
|
|
xonotic
|
|
superTux
|
|
superTuxKart
|
|
lutris
|
|
# dev
|
|
jetbrains.idea-community
|
|
# vscodium # see programs.vscode
|
|
rnix-lsp
|
|
#nnn # terminal file manager
|
|
|
|
# archives
|
|
# zip
|
|
# xz
|
|
# unzip
|
|
# p7zip
|
|
|
|
# utils
|
|
appimage-run
|
|
kate
|
|
ncdu
|
|
# btrfs tools
|
|
btdu # ncdu but for btrfs
|
|
compsize
|
|
|
|
ripgrep # recursively searches directories for a regex pattern
|
|
jq # A lightweight and flexible command-line JSON processor
|
|
eza
|
|
|
|
# networking tools
|
|
dnsutils # `dig` + `nslookup`
|
|
ldns # replacement of `dig`, it provide the command `drill`
|
|
aria2
|
|
socat # replacement of openbsd-netcat
|
|
nmap # A utility for network discovery and security auditing
|
|
|
|
# etc
|
|
vlc
|
|
qbittorrent
|
|
# misc
|
|
cowsay
|
|
# file
|
|
# which
|
|
tree
|
|
# gnused
|
|
# gnutar
|
|
# gawk
|
|
# zstd
|
|
gnupg
|
|
|
|
# nix related
|
|
nix-output-monitor
|
|
|
|
glow # markdown previewer in terminal
|
|
|
|
btop # replacement of htop/nmon
|
|
iotop # io monitoring
|
|
iftop # network monitoring
|
|
# system call monitoring
|
|
strace # system call monitoring
|
|
ltrace # library call monitoring
|
|
lsof # list open files
|
|
|
|
# system tools
|
|
file
|
|
# sysstat
|
|
lm_sensors # for `sensors` command
|
|
# ethtool
|
|
pciutils # lspci
|
|
usbutils # lsusb
|
|
# android-tools
|
|
|
|
monero-gui
|
|
];
|
|
|
|
# Email stuff
|
|
|
|
programs.thunderbird = {
|
|
enable = true;
|
|
package = pkgs.thunderbird;
|
|
profiles = secrets.email-stuff.thunderbirdProfiles;
|
|
};
|
|
|
|
accounts.email.accounts = secrets.email-stuff.emailAccounts;
|
|
|
|
# ---------
|
|
|
|
services.nextcloud-client = {
|
|
enable = true;
|
|
};
|
|
|
|
programs.git = {
|
|
enable = true;
|
|
delta.enable = true;
|
|
signing = {
|
|
signByDefault = true;
|
|
key = "D3067BE844D3FC49535A47B29396B8BA6FBB14DE";
|
|
};
|
|
userName = "Lgmrszd";
|
|
userEmail = "lgmrszd@disroot.org";
|
|
extraConfig = {
|
|
init = {
|
|
defaultBranch = "main";
|
|
};
|
|
};
|
|
};
|
|
|
|
programs.pazi = {
|
|
enable = true;
|
|
enableFishIntegration = true;
|
|
};
|
|
|
|
programs.fzf = {
|
|
enable = true;
|
|
enableFishIntegration = true;
|
|
};
|
|
|
|
|
|
programs.vscode = {
|
|
enable = true;
|
|
package = pkgs.vscodium;
|
|
extensions = with pkgs.vscode-extensions; [
|
|
jnoortheen.nix-ide
|
|
];
|
|
};
|
|
|
|
|
|
programs.starship = {
|
|
enable = true;
|
|
# custom settings
|
|
settings = {
|
|
add_newline = false;
|
|
aws.disabled = true;
|
|
gcloud.disabled = true;
|
|
# line_break.disabled = true;
|
|
};
|
|
};
|
|
|
|
|
|
programs.fish = {
|
|
enable = true;
|
|
plugins = [
|
|
{
|
|
name = "forgit";
|
|
src = pkgs.fishPlugins.forgit.src;
|
|
}
|
|
{
|
|
name = "fzf";
|
|
src = pkgs.fishPlugins.fzf.src;
|
|
}
|
|
];
|
|
};
|
|
|
|
programs.bash = {
|
|
enable = true;
|
|
enableCompletion = 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";
|
|
|
|
# Let home Manager install and manage itself.
|
|
programs.home-manager.enable = true;
|
|
}
|