dotfiles/home-manager/modules/profiles/workstation.nix

126 lines
2.1 KiB
Nix
Raw Normal View History

{ config, pkgs, lib, inputs', ... }:
let
inherit (lib)
concatStringsSep
getExe
flip
singleton;
combineWines = wines:
pkgs.stdenv.mkDerivation {
pname = "wine-combined";
version = "unknown";
dontFetch = true;
dontUnpack = true;
dontBuild = true;
installPhase =
''
mkdir -p $out/bin
''
+
(concatStringsSep "\n"
(flip map wines
(wine: ''
ln -s ${getExe wine} $out/bin/${wine.pname}
'')
));
};
in
{
imports = [
../picom
../dunst
../keynav
../bash
../emacs
../xmonad
../pantalaimon.nix
../ssh.nix
../wallpaper
../screenlocker
];
programs.librewolf = {
enable = true;
settings = {
"webgl.disabled" = false;
};
};
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
# TODO remove when PR264018 is in
(schildichat-desktop.override {
electron = pkgs.electron_25;
})
# armcord
pavucontrol
# GPG
gnupg
pass
yubikey-manager
# wine
winetricks
(combineWines [ wineWowPackages.staging ])
# 3d printing
openscad
# TODO move back to unstable when PR263599 is in
inputs'.nixpkgs-stable.legacyPackages.${stdenv.system}.freecad
cura
super-slicer
inkscape
# command line programs
emacsclient-remote
zip
unzip
unrar
git
htop
lm_sensors
cryptsetup
magic-screenshot
emacs-rofi
libnotify
playerctl
git-annex
file
];
home.file.".config/alacritty/alacritty.yaml".source = ./alacritty.yaml;
home.file.".gpg-agent.conf".text = ''
enable-ssh-support
pinentry-program ${pkgs.pinentry.gtk2}/bin/pinentry
'';
}