nixos/home-manager/home.nix

94 lines
2.6 KiB
Nix
Raw Normal View History

{ pkgs, ... }:
2024-02-12 09:25:11 +01:00
{
2024-02-12 13:30:48 +01:00
# Basic user info
2024-02-12 09:25:11 +01:00
home.username = "crony";
home.homeDirectory = "/home/crony";
2024-02-12 13:30:48 +01:00
# DO NOT CHANGE
home.stateVersion = "23.11";
# Imports
2024-02-12 09:25:11 +01:00
imports =
[
./modules/gpg.nix
./modules/btop.nix
./modules/mpv.nix
./modules/tmux.nix
./modules/nnn.nix
./modules/dmenu.nix
./modules/mangohud.nix
./modules/shell.nix
./modules/nvim.nix
./modules/restic.nix
2024-02-15 10:39:46 +01:00
./modules/theming.nix
2024-02-12 09:25:11 +01:00
];
2024-02-12 13:30:48 +01:00
# My packages
home.packages = with pkgs; [
librewolf # Nice privacy browser
thunderbird # Nice mail client
qutebrowser # Nice browser in general
discord # Fuck the fact I have to use it
keepassxc # Best password manager
buku # Nice bookmark manager
bukubrow # Nice bookmark manager browser support
rclone # Best sync client in the world
age # Simple file encryption
alacritty # Best terminal
nitch # Simple system info
libarchive # bsdtar
imagemagick # image tools
ffmpeg # video manupilation
glow # markdown viewer
piper # ratbagd mice config gui
krita # best drawing program
tutanota-desktop # fjdlkfjldjflkd
delfin # jellyfin client
nurl # nix git config tool
ripgrep # Neovim telescope dependency
lazygit # Amazing git tui
lm_sensors # Sensor monitoring tool
(nerdfonts.override { fonts = [ "CascadiaCode" ]; }) # Best font
(retroarch.override {
cores = with libretro; [
snes9x
];
})
2024-02-12 09:25:11 +01:00
# # You can also create simple shell scripts directly inside your
# # configuration. For example, this adds a command 'my-hello' to your
# # environment:
# (writeShellScriptBin "my-hello" ''
2024-02-12 09:25:11 +01:00
# echo "Hello, ${config.home.username}!"
# '')
];
# Home Manager is pretty good at managing dotfiles. The primary way to manage
# plain files is through 'home.file'.
home.file = {
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
# # symlink to the Nix store copy. ".screenrc".source = dotfiles/screenrc;
# # You can also set the file content immediately.
# ".gradle/gradle.properties".text = ''
# org.gradle.console=verbose
# org.gradle.daemon.idletimeout=3600000
# '';
};
2024-02-12 13:30:48 +01:00
# Environmental variables I can't live without
2024-02-12 09:25:11 +01:00
home.sessionVariables = {
EDITOR = "nvim";
BROWSER = "qutebrowser";
TERMINAL = "alacritty";
};
# Fix environmental variables not loaded in plasma x11
xsession.enable = true;
2024-02-12 09:25:11 +01:00
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
}