nix/module/desktop/App.nix

82 lines
2.5 KiB
Nix
Raw Normal View History

2024-06-20 22:13:59 +03:00
{ pkgs, pkgsStable, pkgsMaster, ... } @args: let
2024-04-30 20:36:22 +03:00
mangohud = import ./mangohud args;
in {
2024-05-02 18:14:13 +03:00
imports = [
./firefox
];
2024-03-29 08:22:03 +03:00
xdg.mime.defaultApplications = {
# Use `file -i file.txt` to find file mime type.
# Use `xdg-mime query default "text/plain"` to find default app.
"application/pdf" = "org.gnome.Evince.desktop";
"application/vnd.openxmlformats-officedocument.*" = "onlyoffice-desktopeditors.desktop";
"audio/*" = "mpv.desktop";
"image/*" = "org.gnome.Loupe.desktop";
"text/*" = "nvim.desktop";
"video/*" = "mpv.desktop";
};
hardware.opengl = let
packages = with pkgs; [
dxvk
gamescope
2024-04-30 20:36:22 +03:00
pkgs.mangohud
vkd3d
];
in {
extraPackages = packages;
extraPackages32 = packages;
};
environment = {
systemPackages = with pkgs; [
adwsteamgtk # Steam GTK theme. Need to run the app to apply.
2024-06-22 21:27:55 +03:00
anilibria-winmaclinux # Anime!
appimage-run # Tool to run .AppImage files in NixOS.
aseprite # Pixel Art draw app. WARNING: Always builds from source.
2024-06-10 12:12:41 +03:00
blanket # Sounds generator.
blender-hip # Blender with HiP support.
calibre # Book library manager.
evince # Document viewer.
gimp # Image manipulation program.
gnome.adwaita-icon-theme # GTK icons.
gnome.gnome-calculator # Calculator.
gnome.gnome-font-viewer # Font viewer.
gnome.nautilus # File manager.
godot_4 # Game development engine.
jellyfin-media-player # Jellyfin client (self-hosted Netflix).
loupe # Image viewer.
obs-studio # Streaming/recording app.
onlyoffice-bin # Office documents app suite.
steam-run # Run native apps in Steam environment, like Minecraft. For Windows games use Bottles.
tor-browser # Privacy browser.
android-studio jetbrains.idea-community # JetBrans IDEs.
bottles dxvk gamescope pkgs.mangohud vkd3d wine64 # Gaming!
(mpv.override {scripts = [mpvScripts.mpris];}) # Media player.
];
variables = {
# MangoHud.
MANGOHUD = "1";
2024-04-30 20:36:22 +03:00
MANGOHUD_CONFIGFILE = pkgs.writeText "mangoConfig" mangohud.config;
MANGOHUD_PRESETSFILE = pkgs.writeText "mangoPreset" mangohud.presets;
# Proton.
WINEFSYNC = "1";
# GTK apps compat.
GTK_CSD = 0;
};
};
# File manager file previews.
services.gnome.sushi.enable = true;
# File manager network features.
services.gvfs.enable = true;
# Special packages.
programs.steam.enable = true;
}