This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

1{ 2 self, 3 config, 4 lib, 5 pkgs, 6 ... 7}: 8let 9 stockholmPkgs = self.inputs.stockholm.packages.${pkgs.stdenv.hostPlatform.system}; 10in 11{ 12 imports = [ 13 ../../alacritty.nix 14 ../../xdg-open.nix 15 ../../yubikey.nix 16 ../../pipewire.nix 17 ../../themes.nix 18 ../../fonts.nix 19 { 20 users.users.mainUser.packages = [ 21 pkgs.sshuttle 22 self.packages.${pkgs.system}.mpv 23 ]; 24 security.sudo.extraConfig = '' 25 lass ALL= (root) NOPASSWD:SETENV: ${pkgs.sshuttle}/bin/.sshuttle-wrapped 26 ''; 27 } 28 { 29 #font magic 30 options.lass.fonts = { 31 regular = lib.mkOption { 32 type = lib.types.str; 33 default = "xft:Iosevka Term SS15:style=regular"; 34 }; 35 bold = lib.mkOption { 36 type = lib.types.str; 37 default = "xft:Iosevka Term SS15:style=bold"; 38 }; 39 italic = lib.mkOption { 40 type = lib.types.str; 41 default = "xft:Iosevka Term SS15:style=italic"; 42 }; 43 }; 44 config.services.xserver.displayManager.sessionCommands = 45 let 46 xres = pkgs.writeText "xreources" '' 47 *.font: ${config.lass.fonts.regular} 48 *.boldFont: ${config.lass.fonts.bold} 49 *.italicFont: ${config.lass.fonts.italic} 50 ''; 51 in 52 '' 53 ${pkgs.xorg.xrdb}/bin/xrdb -merge ${xres} 54 ''; 55 } 56 ]; 57 58 users.users.mainUser.extraGroups = [ 59 "audio" 60 "video" 61 ]; 62 63 time.timeZone = "Europe/Berlin"; 64 65 programs.ssh.agentTimeout = "10m"; 66 programs.ssh.startAgent = false; 67 services.openssh.forwardX11 = true; 68 69 environment.systemPackages = with pkgs; [ 70 acpi 71 acpilight 72 ripgrep 73 dmenu 74 stockholmPkgs.fzfmenu 75 dconf 76 libarchive 77 ncdu 78 nix-index 79 nixpkgs-review 80 nmap 81 pavucontrol 82 sxiv 83 nsxiv 84 wirelesstools 85 x11vnc 86 xclip 87 xorg.xmodmap 88 xorg.xhost 89 xdotool 90 xsel 91 zathura 92 flameshot 93 (pkgs.writers.writeDashBin "screenshot" '' 94 set -efu 95 96 ${pkgs.flameshot}/bin/flameshot gui && 97 ${pkgs.klem}/bin/klem 98 '') 99 (pkgs.writers.writeDashBin "IM" '' 100 ${pkgs.mosh}/bin/mosh green.r -- tmux new-session -A -s IM -- weechat 101 '') 102 (pkgs.writers.writeDashBin "deploy_hm" '' 103 target=$1 104 shift 105 106 hm_profile=$(${pkgs.home-manager}/bin/home-manager -f ~/sync/stockholm/lass/2configs/home-manager.nix build "$@") 107 nix-copy-closure --to "$target" "$hm_profile" 108 ssh "$target" -- "$hm_profile"/activate 109 '') 110 zbar 111 ]; 112 113 services.udev.extraRules = '' 114 SUBSYSTEM=="backlight", ACTION=="add", \ 115 RUN+="${pkgs.coreutils}/bin/chgrp video /sys/class/backlight/%k/brightness", \ 116 RUN+="${pkgs.coreutils}/bin/chmod g+w /sys/class/backlight/%k/brightness" 117 ''; 118 119 services.xserver = { 120 enable = true; 121 layout = "us"; 122 display = lib.mkForce 0; 123 xkbVariant = "altgr-intl"; 124 xkbOptions = "caps:escape"; 125 libinput.enable = true; 126 exportConfiguration = true; 127 displayManager = { 128 lightdm.enable = true; 129 defaultSession = "none+xmonad"; 130 sessionCommands = '' 131 ${pkgs.xorg.xhost}/bin/xhost +LOCAL: 132 ''; 133 }; 134 }; 135 136 nixpkgs.config.packageOverrides = _super: { 137 dmenu = pkgs.writers.writeDashBin "dmenu" '' 138 ${stockholmPkgs.fzfmenu}/bin/fzfmenu "$@" 139 ''; 140 }; 141 142 lass.klem = { 143 kpaste.script = pkgs.writers.writeDash "kpaste-wrapper" '' 144 ${stockholmPkgs.kpaste}/bin/kpaste \ 145 | ${pkgs.coreutils}/bin/tail -1 \ 146 | ${pkgs.coreutils}/bin/tr -d '\r\n' 147 ''; 148 go = { 149 target = "STRING"; 150 script = "${stockholmPkgs.goify}/bin/goify"; 151 }; 152 "go.lassul.us" = { 153 target = "STRING"; 154 script = pkgs.writers.writeDash "go.lassul.us" '' 155 export GO_HOST='go.lassul.us' 156 ${stockholmPkgs.goify}/bin/goify 157 ''; 158 }; 159 qrcode = { 160 target = "image"; 161 script = pkgs.writers.writeDash "zbar" '' 162 ${pkgs.zbar}/bin/zbarimg -q --raw - 163 ''; 164 }; 165 ocr = { 166 target = "image"; 167 script = pkgs.writers.writeDash "gocr" '' 168 ${pkgs.netpbm}/bin/pngtopnm - \ 169 | ${pkgs.gocr}/bin/gocr - 170 ''; 171 }; 172 }; 173 174 services.clipmenu.enable = true; 175 176 # synchronize all the clipboards 177 systemd.user.services.autocutsel = { 178 enable = true; 179 wantedBy = [ "graphical-session.target" ]; 180 after = [ "graphical-session.target" ]; 181 serviceConfig = { 182 Type = "forking"; 183 ExecStart = pkgs.writers.writeDash "autocutsel" '' 184 ${pkgs.autocutsel}/bin/autocutsel -fork -selection PRIMARY 185 ${pkgs.autocutsel}/bin/autocutsel -fork -selection CLIPBOARD 186 ''; 187 }; 188 }; 189 systemd.services.xsettingsd = { 190 wantedBy = [ "multi-user.target" ]; 191 after = [ "display-manager.service" ]; 192 environment.DISPLAY = ":0"; 193 serviceConfig = { 194 ExecStart = "${pkgs.xsettingsd}/bin/xsettingsd -c /var/theme/config/xsettings.conf"; 195 User = "lass"; 196 Restart = "always"; 197 RestartSec = "15s"; 198 }; 199 }; 200}