Files
DCGOS/modules/system/environment.nix
dichgrem 51d40326c4 test(OK):sql_study
style:env
2025-11-19 09:47:13 +08:00

102 lines
1.7 KiB
Nix

{
hostname,
pkgs,
...
}: let
inherit (import ../../hosts/${hostname}/env.nix) ScaleLevel;
in {
environment = {
variables = {
EDITOR = "nvim";
TERMINAL = "alacritty";
_JAVA_AWT_WM_NONREPARENTING = 1;
AWT_TOOLKIT = "MToolkit";
CLUTTER_BACKEND = "wayland";
ELECTRON_OZONE_PLATFORM_HINT = "wayland";
GDK_BACKEND = "wayland";
GDK_SCALE = "${ScaleLevel}";
GTK_USE_PORTAL = 1;
MOZ_ENABLE_WAYLAND = 1;
NIXOS_OZONE_WL = 1;
QT_AUTO_SCREEN_SCALE_FACTOR = 1;
QT_QPA_PLATFORM = "wayland";
QT_WAYLAND_DISABLE_WINDOWDECORATION = 1;
SDL_HINT_VIDEODRIVER = "wayland";
XDG_SESSION_TYPE = "wayland";
SDL_VIDEODRIVER = "wayland";
QT_IM_MODULE = "fcitx";
SDL_IM_MODULE = "fcitx";
XMODIFIERS = "@im=fcitx";
};
systemPackages = with pkgs; [
# Archive
gnutar
p7zip
unzipNLS
xz
zip
zstd
# Greeter with ddm
tuigreet
# For OBS virtual cam support
v4l-utils
# Networking tool
iperf3
nexttrace
curl
wget
aria2
yt-dlp
#Android
xxd
file
binwalk
android-tools
payload-dumper-go
# Misc
tree
libnotify
libvirt
lm_sensors
usbutils
# Niri
wlr-randr
# Dev
go
zig
lua
gcc
gdb
cmake
clang
gnumake
rustc
cargo
jdk17
python312
pnpm
nodejs_20
];
};
programs = {
dconf.enable = true;
fuse.userAllowOther = true;
git = {
enable = true;
package = pkgs.gitFull;
};
ssh.startAgent = true;
};
}