173 lines
3.4 KiB
Nix
173 lines
3.4 KiB
Nix
{ config, pkgs, inputs, ... }:
|
|
|
|
{
|
|
imports = [
|
|
inputs.home-manager.nixosModules.home-manager
|
|
];
|
|
|
|
home-manager.users.${config.user} = {
|
|
|
|
home.username = config.user;
|
|
home.homeDirectory = config.homePath;
|
|
|
|
news.display = "silent";
|
|
fonts.fontconfig.enable = true;
|
|
|
|
home.packages = with pkgs; [
|
|
# nix
|
|
home-manager
|
|
# c / c++
|
|
clang-tools
|
|
gcc
|
|
gnumake
|
|
nasm
|
|
pkg-config
|
|
# rust
|
|
rustc
|
|
rustfmt
|
|
rust-analyzer
|
|
cargo
|
|
clippy
|
|
# zig
|
|
zig
|
|
zls
|
|
# android
|
|
android-tools
|
|
scrcpy
|
|
# gtk
|
|
adwaita-icon-theme
|
|
orchis-theme
|
|
# media
|
|
ffmpeg
|
|
libaacs
|
|
libavif
|
|
libbluray
|
|
libjxl
|
|
# wayland
|
|
cage
|
|
grimblast
|
|
wl-clipboard
|
|
wl-clip-persist
|
|
wl-mirror
|
|
# gaming
|
|
prismlauncher
|
|
winetricks
|
|
wineWowPackages.staging
|
|
# social
|
|
discord
|
|
element-desktop
|
|
gajim
|
|
# vrchat
|
|
unityhub
|
|
vrc-get
|
|
# rendering
|
|
freealut
|
|
glfw
|
|
glm
|
|
openal
|
|
shaderc
|
|
stb
|
|
vulkan-headers
|
|
vulkan-loader
|
|
vulkan-tools
|
|
vulkan-validation-layers
|
|
# programs
|
|
blueman
|
|
brightnessctl
|
|
easyeffects
|
|
fd
|
|
filezilla
|
|
gimp
|
|
grub2
|
|
imagemagick
|
|
imv
|
|
jq
|
|
libisoburn
|
|
libnotify
|
|
libreoffice-fresh
|
|
mpv
|
|
pavucontrol
|
|
pfetch-rs
|
|
python3
|
|
qbittorrent
|
|
qemu
|
|
rsync
|
|
sassc
|
|
sl
|
|
starship
|
|
thunderbird-latest
|
|
vlc
|
|
yt-dlp
|
|
zathura
|
|
];
|
|
|
|
xdg.configFile = {
|
|
"aacs/keydb.cfg" = {
|
|
source = ../../files/keys/bluray.cfg;
|
|
};
|
|
};
|
|
|
|
xdg.dataFile = {
|
|
fonts = {
|
|
source = ../../files/fonts;
|
|
recursive = true;
|
|
};
|
|
};
|
|
|
|
xdg.mimeApps = {
|
|
enable = true;
|
|
defaultApplications = {
|
|
# web
|
|
"text/html" = "firefox.desktop";
|
|
"x-scheme-handler/http" = "firefox.desktop";
|
|
"x-scheme-handler/https" = "firefox.desktop";
|
|
"x-scheme-handler/about" = "firefox.desktop";
|
|
"x-scheme-handler/unknown" = "firefox.desktop";
|
|
|
|
# images
|
|
"image/png" = "imv.desktop";
|
|
"image/jpeg" = "imv.desktop";
|
|
"image/webp" = "imv.desktop";
|
|
"image/tga" = "imv.desktop";
|
|
"image/bmp" = "imv.desktop";
|
|
"image/gif" = "imv.desktop";
|
|
|
|
# audio video
|
|
"video/mp4" = "mpv.desktop";
|
|
"video/x-msvideo" = "mpv.desktop";
|
|
"video/mkv" = "mpv.desktop";
|
|
"video/webm" = "mpv.desktop";
|
|
"audio/mp3" = "mpv.desktop";
|
|
"audio/wav" = "mpv.desktop";
|
|
|
|
# other
|
|
"application/pdf" = "org.pwmt.zathura.desktop";
|
|
"x-scheme-handler/mspa" = "unofficial-homestuck-collection.desktop";
|
|
"x-scheme-handler/discord" = "discord.desktop";
|
|
};
|
|
};
|
|
|
|
xdg.userDirs = {
|
|
enable = true;
|
|
createDirectories = false;
|
|
|
|
desktop = "${config.homePath}/desktop";
|
|
documents = "${config.homePath}/documents";
|
|
download = "${config.homePath}/downloads";
|
|
music = "${config.homePath}/music";
|
|
pictures = "${config.homePath}/pictures";
|
|
publicShare = "${config.homePath}";
|
|
templates = "${config.homePath}";
|
|
videos = "${config.homePath}/videos";
|
|
};
|
|
|
|
gtk = {
|
|
enable = true;
|
|
gtk3.extraConfig.gtk-application-prefer-dark-theme = 1;
|
|
};
|
|
|
|
programs.home-manager.enable = true;
|
|
|
|
};
|
|
}
|
|
|