dotfiles/home-manager/modules/profiles/workstation.nix
magic_rb fafd9caf38
global: delete pantalaimon
Signed-off-by: magic_rb <magic_rb@redalder.org>
2024-10-27 12:41:14 +01:00

154 lines
2.6 KiB
Nix

{
config,
pkgs,
lib,
inputs',
...
}: let
inherit
(lib)
concatMapStringsSep
getExe
getExe'
flip
singleton
;
combineWines = wines:
pkgs.stdenv.mkDerivation {
pname = "wine-combined";
version = "unknown";
dontFetch = true;
dontUnpack = true;
dontBuild = true;
installPhase =
''
mkdir -p $out/bin
''
+ (concatMapStringsSep "\n" (
wine: ''
cat > $out/bin/${wine.pname} <<EOF
exec ${getExe wine} "\$@"
EOF
cat > $out/bin/${wine.pname}-server <<EOF
exec ${getExe' wine "wineserver"} "\$@"
EOF
chmod +x $out/bin/${wine.pname}
chmod +x $out/bin/${wine.pname}-server
''
)
wines);
};
in {
imports = [
../picom
../dunst
../keynav
../bash
../emacs
../xmonad
../ssh.nix
../wallpaper
../screenlocker
];
programs.librewolf = {
enable = true;
settings = {
"webgl.disabled" = false;
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
};
};
home.file.".librewolf/wmpnjxrq.default/chrome/userChrome.css".text = ''
#TabsToolbar { visibility: collapse !important; }
#sidebar-header { visibility: collapse !important; }
#titlebar { appearance: none !important }
'';
xsession.enable = true;
home.keyboard = null;
services.redshift = {
enable = true;
dawnTime = "6:00-6:05";
duskTime = "21:00-21:05";
};
home.packages = with pkgs; [
(prismlauncher.override {
jdks = with pkgs; [
jdk8
jdk11
jdk17
];
})
dejavu_fonts
alacritty
gimp
obs-studio
mpv
slack
element-desktop
blender
godot_4
# armcord
pavucontrol
# GPG
gnupg
pass
yubikey-manager
# wine
winetricks
(combineWines [inputs'.nix-gaming.packages.${pkgs.stdenv.system}.wine-tkg wineWowPackages.staging])
# 3d printing
openscad
freecad
orca-slicer
prusa-slicer
thingiverse-downloader-bash
inkscape
# command line programs
emacsclient-remote
zip
unzip
unrar
git
htop
lm_sensors
cryptsetup
magic-screenshot
emacs-rofi
libnotify
playerctl
git-annex
file
ncdu
lsof
arandr
ffmpeg_7-full
libjxl
exiftool
percept
];
home.file.".config/alacritty/alacritty.toml".source = ../alacritty/alacritty.toml;
home.file.".gpg-agent.conf".text = ''
enable-ssh-support
pinentry-program ${pkgs.pinentry.gtk2}/bin/pinentry
'';
}