turn home/default.nix into skeleton, configure git

This commit is contained in:
Sean Kovacs 2026-03-05 10:22:41 -05:00
commit 864167a091
Signed by: sckova
GPG key ID: 00F325187C68651A
5 changed files with 119 additions and 102 deletions

View file

@ -1,3 +1,4 @@
{ pkgs, ... }:
{
imports = [
# ./discord.nix
@ -5,4 +6,31 @@
./mpv.nix
# ./vscode.nix
];
home.packages = with pkgs; [
# gui applications
input-leap
libreoffice-qt-fresh
# nur.repos.forkprince.helium-nightly
chromium
nautilus
fractal
tuba
# gui applications ( multimedia )
audacity
strawberry
musescore
gimp
# calibre
# riff
dissent
loupe
spotify-player
# overrides
# (chromium.override {
# enableWideVine = true;
# })
];
}

View file

@ -1,94 +1,4 @@
{
config,
pkgs,
pkgs-unstable,
...
}:
{
config = {
home.packages = with pkgs; [
# cli utilities
tmux
fastfetch
btop
wget
ripgrep
ncdu
fzf
wl-clipboard
rclone
waypipe
spotdl
browsh
mosh
gh
# development & tooling
jdk21_headless
quickemu
nerd-fonts.noto
noto-fonts
noto-fonts-color-emoji
nix-prefetch
prowlarr
radarr
sonarr
flaresolverr
nerd-fonts.fira-mono
ffmpeg-full
# kde and kde theming
kde-rounded-corners
kdePackages.partitionmanager
adwaita-icon-theme
morewaita-icon-theme
# gui applications
input-leap
libreoffice-qt-fresh
# nur.repos.forkprince.helium-nightly
chromium
nautilus
fractal
tuba
# gui applications ( multimedia )
audacity
strawberry
musescore
gimp
# calibre
# riff
dissent
loupe
spotify-player
# overrides
# (chromium.override {
# enableWideVine = true;
# })
];
services = {
spotifyd = {
enable = true;
package = pkgs-unstable.spotifyd;
settings = {
global = {
device_type = "computer";
dbus_type = "session";
disable_discovery = true;
use_mpris = true;
bitrate = 320;
initial_volume = 100;
volume_normalisation = true;
normalisation_pregain = 0;
};
};
};
};
# 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
@ -97,9 +7,8 @@
# 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 = "25.05";
config.home.stateVersion = "25.05";
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
};
config.programs.home-manager.enable = true;
}

View file

@ -10,6 +10,13 @@
./systemd.nix
];
home.packages = with pkgs; [
# kde and kde theming
adwaita-icon-theme
morewaita-icon-theme
# kde-rounded-corners
];
home.file = {
".icons/default/index.theme" = {
text = ''
@ -22,6 +29,24 @@
};
};
services = {
spotifyd = {
enable = true;
settings = {
global = {
device_type = "computer";
dbus_type = "session";
disable_discovery = true;
use_mpris = true;
bitrate = 320;
initial_volume = 100;
volume_normalisation = true;
normalisation_pregain = 0;
};
};
};
};
dconf.settings = {
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";

View file

@ -1,3 +1,9 @@
{
config,
pkgs,
lib,
...
}:
{
imports = [
./btop.nix
@ -5,4 +11,48 @@
./kitty.nix
./neovim.nix
];
home.packages = with pkgs; [
# cli utilities
tmux
fastfetch
btop
wget
ripgrep
ncdu
fzf
wl-clipboard
rclone
waypipe
spotdl
browsh
mosh
gh
# development & tooling
jdk21_headless
quickemu
nerd-fonts.noto
noto-fonts
noto-fonts-color-emoji
nix-prefetch
prowlarr
radarr
sonarr
flaresolverr
nerd-fonts.fira-mono
ffmpeg-full
];
programs.git = {
enable = true;
settings = {
user = {
name = config.userOptions.name;
email = config.userOptions.email;
};
core.pager = "${pkgs.bat}/bin/bat";
commit.gpgsign = true;
};
};
}

View file

@ -32,6 +32,11 @@
readOnly = true;
default = config.system.name;
};
email = lib.mkOption {
type = lib.types.str;
readOnly = true;
default = "kovacsmillio@gmail.com";
};
fontSans = {
name = lib.mkOption {
type = lib.types.str;