This repository has no description
2.6 kB
105 lines
1{ self, pkgs, lib, ... }:
2{
3 imports = [
4 ../../alacritty.nix
5 ../../mpv.nix
6 ../../power-action.nix
7 ../../urxvt.nix
8 ../../xdg-open.nix
9 ../../yubikey.nix
10 ../../tmux.nix
11 ../../themes.nix
12 ../../fonts.nix
13 # ../pipewire.nix
14 # ./tty-share.nix
15 {
16 users.users.mainUser.packages = [
17 pkgs.sshuttle
18 ];
19 security.sudo.extraConfig = ''
20 lass ALL= (root) NOPASSWD:SETENV: ${pkgs.sshuttle}/bin/.sshuttle-wrapped
21 '';
22 }
23 ];
24 users.users.mainUser.extraGroups = [ "audio" "pipewire" "video" "input" ];
25
26 xdg.portal.enable = true;
27 xdg.portal.wlr.enable = true;
28 xdg.portal.config.common.default = "*"; # get old behavior back
29 fonts.enableDefaultPackages = true;
30
31 security.polkit.enable = true;
32 security.pam.services.swaylock = { };
33
34 programs.dconf.enable = lib.mkDefault true;
35 programs.xwayland.enable = lib.mkDefault true;
36
37 environment.sessionVariables = {
38 MOZ_ENABLE_WAYLAND = "1";
39 XDG_SESSION_TYPE = "wayland";
40 SDL_VIDEODRIVER = "wayland";
41 QT_QPA_PLATFORM = "wayland";
42 QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
43 _JAVA_AWT_WM_NONREPARENTING = "1";
44 };
45
46 programs.wshowkeys.enable = true;
47
48 environment.systemPackages = with pkgs; [
49 swaylock-effects # lockscreen
50 pavucontrol
51 swayidle
52 rofi-wayland
53 rofi-rbw
54 gnome.eog
55 libnotify
56 mako # notifications
57 kanshi # auto-configure display outputs
58 wdisplays # buggy with qtile?
59 wlr-randr
60 wl-clipboard
61 wev
62 blueberry
63 grim # screenshots
64 wtype
65 zathura
66 nsxiv
67
68 pavucontrol
69 evince
70 libnotify
71 pamixer
72 gnome.file-roller
73 xdg-utils
74 # polkit agent
75 polkit_gnome
76
77 # gtk3 themes
78 gsettings-desktop-schemas
79 self.packages.${pkgs.system}.otpmenu
80 (pkgs.writers.writeDashBin "pass_menu" ''
81 set -efux
82 password=$(
83 (cd $HOME/.password-store; find -type f -name '*.gpg') |
84 sed -e 's/\.gpg$//' |
85 rofi -dmenu -p 'Password: ' |
86 xargs -I{} pass show {} |
87 tr -d '\n'
88 )
89 echo -n "$password" | ${pkgs.wtype}/bin/wtype -d 10 -s 400 -
90 '')
91 (pkgs.writers.writeDashBin "screenshot" ''
92 ${pkgs.grim}/bin/grim -g "$(${pkgs.slurp}/bin/slurp)" - | ${pkgs.wl-clipboard}/bin/wl-copy
93 '')
94 (pkgs.writers.writeDashBin "type_paste" ''
95 ${pkgs.wl-clipboard}/bin/wl-paste | ${pkgs.wtype}/bin/wtype -d 10 -s 400 -
96 '')
97 ];
98
99 environment.pathsToLink = [
100 "/libexec" # for polkit
101 "/share/gsettings-schemas" # for XDG_DATA_DIRS
102 ];
103
104 qt.platformTheme = "qt5ct";
105}