294 lines
8.4 KiB
Nix
294 lines
8.4 KiB
Nix
{ pkgs, config, lib, inputs, ... }:
|
|
with lib;
|
|
let
|
|
cfg = config.eboskma.users.erwin;
|
|
|
|
remoteSessionScript = pkgs.writeShellScriptBin "remote-session" ''
|
|
${pkgs.xorg.xrandr}/bin/xrandr --output DP-0 --mode 2560x1440
|
|
${pkgs.xorg.xrandr}/bin/xrandr --output DP-4 --mode 2560x1440 --right-of DP-0
|
|
${pkgs.nitrogen}/bin/nitrogen --head=0 --set-auto ${toString ./wallpapers/jwst-carina-cosmic-cliffs-nircam-2560.png}
|
|
${pkgs.nitrogen}/bin/nitrogen --head=1 --set-auto ${toString ./wallpapers/jwst-southern-ring-nircam-miri-side-by-side-2560.png}
|
|
systemctl --user restart polybar
|
|
'';
|
|
localSessionScript = pkgs.writeShellScriptBin "local-session" ''
|
|
${pkgs.xorg.xrandr}/bin/xrandr --output DP-0 --mode 3840x2160
|
|
${pkgs.xorg.xrandr}/bin/xrandr --output DP-4 --mode 3840x2160 --right-of DP-0
|
|
${pkgs.nitrogen}/bin/nitrogen --head=0 --set-auto ${toString ./wallpapers/jwst-carina-cosmic-cliffs-nircam-3840.png}
|
|
${pkgs.nitrogen}/bin/nitrogen --head=1 --set-auto ${toString ./wallpapers/jwst-southern-ring-nircam-miri-side-by-side-3840.png}
|
|
systemctl --user restart polybar
|
|
'';
|
|
|
|
in
|
|
{
|
|
config = mkIf cfg.work {
|
|
home-manager.users.erwin = {
|
|
_module.args.flake-inputs = inputs;
|
|
|
|
programs.home-manager.enable = true;
|
|
programs.command-not-found.enable = true;
|
|
|
|
services.gnome-keyring = {
|
|
enable = true;
|
|
components = [ "pkcs11" "ssh" "secrets" ];
|
|
};
|
|
|
|
home.username = "erwin";
|
|
home.homeDirectory = "/home/erwin";
|
|
home.sessionVariables = {
|
|
# EDITOR = "${config.home-manager.users.erwin.eboskma.programs.emacs.package}/bin/emacsclient -c";
|
|
};
|
|
|
|
eboskma = {
|
|
var.workSystem = true;
|
|
programs = {
|
|
alacritty.enable = true;
|
|
atuin.enable = true;
|
|
bat.enable = true;
|
|
cargo = {
|
|
enable = true;
|
|
settings = {
|
|
registries.crates-io = {
|
|
protocol = "sparse";
|
|
};
|
|
};
|
|
};
|
|
dropbox.enable = true;
|
|
dunst.enable = true;
|
|
emacs = {
|
|
enable = true;
|
|
package = pkgs.emacs-unstable;
|
|
# .override {
|
|
# treeSitterPlugins = builtins.attrValues (filterAttrs (_: isDerivation) pkgs.tree-sitter-grammars);
|
|
# };
|
|
daemon = true;
|
|
};
|
|
eww = {
|
|
enable = true;
|
|
};
|
|
firefox = {
|
|
enable = true;
|
|
work = true;
|
|
};
|
|
fish.enable = true;
|
|
git = {
|
|
enable = true;
|
|
name = "Erwin Boskma";
|
|
email = "erwin@horus.nu";
|
|
signingKey = "~/.ssh/id_ed25519";
|
|
signingKeyFormat = "ssh";
|
|
};
|
|
gpg.enable = true;
|
|
i3 = {
|
|
enable = true;
|
|
startupCommands = [
|
|
{
|
|
command = "${pkgs.xorg.xrandr}/bin/xrandr --output DP-0 --primary --left-of DP-4";
|
|
notification = false;
|
|
}
|
|
{
|
|
command = "${pkgs.xorg.xset}/bin/xset +dpms dpms 900 1200 1500";
|
|
notification = false;
|
|
}
|
|
{
|
|
command = "${pkgs.dropbox}/bin/dropbox start";
|
|
notification = false;
|
|
}
|
|
];
|
|
};
|
|
mpd.enable = true;
|
|
nushell.enable = true;
|
|
picom.enable = true;
|
|
polybar.enable = true;
|
|
neovim.enable = true;
|
|
rclone = {
|
|
enable = true;
|
|
mounts = [
|
|
{
|
|
remote = "org-roam";
|
|
local = "/home/erwin/org-roam";
|
|
remoteConfig = {
|
|
type = "sftp";
|
|
host = "zh2088.rsync.net";
|
|
user = "zh2088";
|
|
key_file = "~/.ssh/rsync-net";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
rofi = {
|
|
enable = true;
|
|
terminal = config.home-manager.users.erwin.xsession.windowManager.i3.config.terminal;
|
|
};
|
|
ssh.enable = true;
|
|
starship.enable = true;
|
|
zellij = {
|
|
enable = true;
|
|
copyCommand = "${pkgs.xsel}/bin/xsel --clipboard";
|
|
};
|
|
};
|
|
services = {
|
|
xbanish.enable = true;
|
|
};
|
|
};
|
|
|
|
home.packages = with pkgs; [
|
|
atool
|
|
bitwarden
|
|
blink1-tool
|
|
bottom
|
|
cider
|
|
dbeaver
|
|
dconf
|
|
fd
|
|
ffmpeg_5-full
|
|
gnome.nautilus
|
|
icemon
|
|
imagemagick
|
|
imv
|
|
iotop
|
|
(jetbrains.clion.override { jdk = pkgs.jetbrains.jdk; })
|
|
libnotify
|
|
libreoffice-fresh
|
|
minio-client
|
|
mpv
|
|
nordzy-cursor-theme
|
|
pamedia
|
|
pass
|
|
quintom-cursor-theme
|
|
procs
|
|
qgis
|
|
recursive
|
|
ripgrep
|
|
s-tui
|
|
solo2-cli
|
|
stress
|
|
units
|
|
unzip
|
|
xdg-utils
|
|
xkb-switch
|
|
wine
|
|
zathura
|
|
zeal
|
|
|
|
localSessionScript
|
|
remoteSessionScript
|
|
]
|
|
++ (with gst_all_1; [ gstreamer gstreamer.dev gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav gst-vaapi ]);
|
|
|
|
xdg = {
|
|
enable = true;
|
|
mime.enable = true;
|
|
mimeApps = {
|
|
enable = true;
|
|
defaultApplications = {
|
|
"x-scheme-handler/http" = "firefox.desktop";
|
|
"x-scheme-handler/https" = "firefox.desktop";
|
|
"x-scheme-handler/chrome" = "firefox.desktop";
|
|
"x-scheme-handler/terminal" = "${cfg.terminal}.desktop";
|
|
"text/html" = "firefox.desktop";
|
|
"application/x-extension-htm" = "firefox.desktop";
|
|
"application/x-extension-html" = "firefox.desktop";
|
|
"application/x-extension-shtml" = "firefox.desktop";
|
|
"application/xhtml+xml" = "firefox.desktop";
|
|
"application/x-extension-xhtml" = "firefox.desktop";
|
|
"application/x-extension-xht" = "firefox.desktop";
|
|
"application/pdf" = "org.pwmt.zathura-pdf-mupdf.desktop";
|
|
};
|
|
associations = {
|
|
added = {
|
|
"image/jpeg" = "feh.desktop";
|
|
"image/png" = "feh.desktop";
|
|
"image/gif" = "feh.desktop";
|
|
"application/zip" = "org.gnome.FileRoller.desktop";
|
|
"application/pdf" = "org.pwmt.zathura-pdf-mupdf.desktop";
|
|
};
|
|
};
|
|
};
|
|
userDirs = {
|
|
enable = true;
|
|
createDirectories = true;
|
|
};
|
|
};
|
|
|
|
dconf.settings = {
|
|
"org/gnome/desktop/interface" = {
|
|
color-scheme = "prefer-dark";
|
|
};
|
|
};
|
|
|
|
gtk = {
|
|
enable = true;
|
|
theme = {
|
|
name = "elementary";
|
|
package = pkgs.pantheon.elementary-gtk-theme;
|
|
};
|
|
|
|
iconTheme = {
|
|
name = "elementary";
|
|
package = pkgs.pantheon.elementary-icon-theme;
|
|
};
|
|
|
|
gtk3 = {
|
|
bookmarks = [
|
|
"file:///home/erwin/workspace"
|
|
];
|
|
extraConfig = {
|
|
gtk-application-prefer-dark-theme = 1;
|
|
# gtk-cursor-theme-name = "elementary";
|
|
};
|
|
};
|
|
|
|
gtk4.extraConfig = {
|
|
gtk-application-prefer-dark-theme = 1;
|
|
# gtk-cursor-theme-name = "elementary";
|
|
};
|
|
};
|
|
|
|
home.pointerCursor = {
|
|
name = "elementary";
|
|
package = pkgs.pantheon.elementary-gtk-theme;
|
|
gtk.enable = true;
|
|
x11.enable = true;
|
|
};
|
|
|
|
imports = [
|
|
../../modules/options
|
|
] ++ (map (mod: (../../home-manager/modules + "/${mod}")) (builtins.attrNames (builtins.readDir ../../home-manager/modules)));
|
|
|
|
home.stateVersion = "22.11";
|
|
};
|
|
|
|
services.teamviewer.enable = true;
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
headsetcontrol
|
|
];
|
|
|
|
services.udev.packages = with pkgs; [
|
|
headsetcontrol
|
|
];
|
|
|
|
services.xserver = {
|
|
# layout = "us,us";
|
|
# xkbVariant = "colemak,";
|
|
# xkbModel = "pc105";
|
|
xkbOptions = "eurosign:5,lv5:ralt_switch,lv3:rwin_switch";
|
|
upscaleDefaultCursor = false;
|
|
exportConfiguration = true;
|
|
|
|
windowManager.i3 = {
|
|
enable = true;
|
|
package = pkgs.i3-gaps;
|
|
extraPackages = with pkgs; [ i3lock-color ];
|
|
};
|
|
};
|
|
|
|
programs.bandwhich.enable = true;
|
|
|
|
programs.wireshark = {
|
|
enable = true;
|
|
package = pkgs.wireshark;
|
|
};
|
|
users.groups.wireshark.members = [ "erwin" ];
|
|
};
|
|
}
|