157 lines
3.3 KiB
Nix
157 lines
3.3 KiB
Nix
# How Jan likes his linux to be configured
|
|
|
|
{ config, pkgs, ... }:
|
|
|
|
{
|
|
config = {
|
|
# State version
|
|
home.stateVersion = "24.05";
|
|
|
|
# TODO: Move into modules
|
|
home.packages = with pkgs; [
|
|
libreoffice-still
|
|
remmina
|
|
# dina-vector
|
|
android-studio
|
|
docker
|
|
docker-compose
|
|
jellyfin-tui
|
|
pinentry
|
|
thunderbird
|
|
signal-desktop
|
|
];
|
|
|
|
programs.gpg = {
|
|
enable = true;
|
|
mutableKeys = true;
|
|
mutableTrust = true;
|
|
};
|
|
services.gpg-agent = {
|
|
enable = true;
|
|
enableSshSupport = true;
|
|
};
|
|
|
|
# Enabled modules
|
|
modules = {
|
|
# Theming
|
|
theming.enable = true;
|
|
|
|
# Window manager
|
|
river.enable = true;
|
|
waylock.enable = true;
|
|
waybar.enable = true;
|
|
glpaper.enable = false;
|
|
|
|
# Desktop environment
|
|
mako.enable = true;
|
|
foot.enable = true;
|
|
|
|
# Communication
|
|
whatsapp.enable = true;
|
|
discord.enable = true;
|
|
|
|
# Browser
|
|
firefox = {
|
|
enable = true;
|
|
default = true;
|
|
};
|
|
qutebrowser = {
|
|
enable = true;
|
|
default = false;
|
|
};
|
|
|
|
# Gaming
|
|
steam.enable = true;
|
|
|
|
# Media
|
|
spotify.enable = true;
|
|
feishin.enable = true;
|
|
|
|
# Tools
|
|
rofi-rbw.enable = true;
|
|
git = {
|
|
enable = true;
|
|
user = "Jan-Bulthuis";
|
|
email = "git@bulthuis.dev";
|
|
};
|
|
btop.enable = true;
|
|
fish.enable = true;
|
|
bluetuith.enable = false;
|
|
winbox.enable = true;
|
|
obsidian.enable = true;
|
|
zathura.enable = true;
|
|
|
|
# Development
|
|
neovim.enable = true;
|
|
vscode.enable = true;
|
|
|
|
# Languages
|
|
haskell.enable = false;
|
|
js.enable = true;
|
|
nix.enable = true;
|
|
rust.enable = true;
|
|
python.enable = true;
|
|
cpp.enable = true;
|
|
tex.enable = true;
|
|
jupyter.enable = true;
|
|
|
|
# Enable unfree
|
|
unfree.enable = true;
|
|
};
|
|
|
|
# Theme configuration
|
|
theming =
|
|
let
|
|
fontpkgs = config.theming.fonts.pkgs;
|
|
in
|
|
{
|
|
# Fonts
|
|
fonts.serif = fontpkgs."DejaVu Serif";
|
|
fonts.sansSerif = fontpkgs."DejaVu Sans";
|
|
fonts.monospace = fontpkgs."Dina";
|
|
fonts.emoji = fontpkgs."Noto Color Emoji";
|
|
fonts.extraFonts = [ ];
|
|
|
|
# Color scheme
|
|
themes.oxocarbon = {
|
|
enable = false;
|
|
darkMode = false;
|
|
};
|
|
themes.catppuccin = {
|
|
enable = false;
|
|
flavor = "latte";
|
|
};
|
|
themes.sakura.enable = false;
|
|
themes.nord = {
|
|
enable = true;
|
|
darkMode = true;
|
|
};
|
|
|
|
# TODO: Remove
|
|
# Nice themes:
|
|
# - rose-pine-dawn: Decent, bit too yellow though.
|
|
# - sagelight: Barely readable
|
|
# - danqing-light: Too minty
|
|
# - fruit-soda: Colors too bright, background too dark.
|
|
# - solarflare-light: Nice
|
|
# darkMode = false;
|
|
# colorScheme = "${pkgs.base16-schemes}/share/themes/solarflare-light.yaml";
|
|
};
|
|
|
|
# TODO: Remove everything below, it is here out of convenience and should be elsewhere
|
|
xdg.portal = {
|
|
enable = true;
|
|
|
|
config.common.default = [
|
|
"wlr"
|
|
"gtk"
|
|
];
|
|
|
|
extraPortals = with pkgs; [
|
|
xdg-desktop-portal-gtk
|
|
xdg-desktop-portal-wlr
|
|
];
|
|
};
|
|
};
|
|
}
|