2024-04-30 20:36:22 +03:00
|
|
|
{ pkgs, ... } @args: let
|
|
|
|
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";
|
|
|
|
};
|
|
|
|
|
2024-03-04 00:34:39 +03:00
|
|
|
hardware.opengl = let
|
|
|
|
packages = with pkgs; [
|
|
|
|
dxvk
|
|
|
|
gamescope
|
2024-04-30 20:36:22 +03:00
|
|
|
pkgs.mangohud
|
2024-03-04 00:34:39 +03:00
|
|
|
vkd3d
|
|
|
|
];
|
|
|
|
in {
|
|
|
|
extraPackages = packages;
|
|
|
|
extraPackages32 = packages;
|
|
|
|
};
|
|
|
|
|
2024-03-21 22:02:12 +03:00
|
|
|
environment = {
|
|
|
|
systemPackages = with pkgs; [
|
2024-05-04 23:15:57 +03:00
|
|
|
adwsteamgtk # Steam GTK theme. Need to run the app to apply.
|
|
|
|
appimage-run # Tool to run .AppImage files in NixOS.
|
|
|
|
aseprite # Pixel Art draw app. WARNING: Always builds from source.
|
|
|
|
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.
|
2024-03-21 22:02:12 +03:00
|
|
|
];
|
|
|
|
|
|
|
|
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;
|
2024-03-21 22:02:12 +03:00
|
|
|
|
|
|
|
# Proton.
|
|
|
|
WINEFSYNC = "1";
|
2024-05-21 00:58:49 +03:00
|
|
|
|
|
|
|
# GTK apps compat.
|
|
|
|
GTK_CSD = 0;
|
2024-03-21 22:02:12 +03:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2024-05-04 23:15:57 +03:00
|
|
|
# File manager file previews.
|
|
|
|
services.gnome.sushi.enable = true;
|
|
|
|
|
|
|
|
# File manager network features.
|
|
|
|
services.gvfs.enable = true;
|
|
|
|
|
2024-03-04 00:34:39 +03:00
|
|
|
# Special packages.
|
|
|
|
programs.steam.enable = true;
|
|
|
|
}
|