2015-07-16 15:51:01 +02:00
|
|
|
{ config, pkgs, ... }:
|
2017-02-16 00:05:38 +01:00
|
|
|
with import <stockholm/lib>;
|
2015-07-16 15:51:01 +02:00
|
|
|
let
|
2017-02-16 00:05:38 +01:00
|
|
|
user = config.krebs.build.user;
|
2018-03-03 15:07:00 +01:00
|
|
|
xmonad-lass = pkgs.callPackage <stockholm/lass/5pkgs/custom/xmonad-lass> { inherit config; };
|
2015-07-16 15:51:01 +02:00
|
|
|
in {
|
|
|
|
imports = [
|
2016-04-28 22:56:02 +02:00
|
|
|
./mpv.nix
|
2016-06-18 22:01:10 +02:00
|
|
|
./power-action.nix
|
2017-02-16 00:05:38 +01:00
|
|
|
./copyq.nix
|
2017-11-29 15:39:14 +01:00
|
|
|
./urxvt.nix
|
2019-04-17 20:12:01 +02:00
|
|
|
./xdg-open.nix
|
2017-01-02 20:08:18 +01:00
|
|
|
{
|
|
|
|
hardware.pulseaudio = {
|
|
|
|
enable = true;
|
|
|
|
systemWide = true;
|
|
|
|
};
|
2017-03-07 20:16:28 +01:00
|
|
|
security.rtkit.enable = true;
|
2017-03-07 20:17:23 +01:00
|
|
|
sound.enableOSSEmulation = false;
|
2017-01-02 20:08:18 +01:00
|
|
|
}
|
2017-01-10 17:27:07 +01:00
|
|
|
{
|
|
|
|
krebs.per-user.lass.packages = [
|
|
|
|
pkgs.sshuttle
|
|
|
|
];
|
|
|
|
security.sudo.extraConfig = ''
|
|
|
|
lass ALL= (root) NOPASSWD:SETENV: ${pkgs.sshuttle}/bin/.sshuttle-wrapped
|
|
|
|
'';
|
|
|
|
}
|
2017-09-19 11:45:33 +02:00
|
|
|
{ #font magic
|
2017-10-09 13:02:14 +02:00
|
|
|
options.lass.fonts = {
|
|
|
|
regular = mkOption {
|
|
|
|
type = types.str;
|
2017-10-18 19:53:05 +02:00
|
|
|
default = "-*-clean-*-*-*-*-*-*-*-*-*-*-iso10646-1";
|
2017-10-09 13:02:14 +02:00
|
|
|
};
|
|
|
|
bold = mkOption {
|
|
|
|
type = types.str;
|
2017-10-18 19:53:05 +02:00
|
|
|
default = "-*-clean-*-*-*-*-*-*-*-*-*-*-iso10646-1";
|
2017-10-09 13:02:14 +02:00
|
|
|
};
|
|
|
|
italic = mkOption {
|
|
|
|
type = types.str;
|
2017-10-18 19:53:05 +02:00
|
|
|
default = "-*-clean-*-*-*-*-*-*-*-*-*-*-iso10646-1";
|
2017-10-09 13:02:14 +02:00
|
|
|
};
|
2017-09-19 11:45:33 +02:00
|
|
|
};
|
2017-12-15 19:55:02 +01:00
|
|
|
config.krebs.xresources.resources.X = ''
|
2017-11-29 15:39:14 +01:00
|
|
|
*.font: ${config.lass.fonts.regular}
|
|
|
|
*.boldFont: ${config.lass.fonts.bold}
|
|
|
|
*.italicFont: ${config.lass.fonts.italic}
|
|
|
|
'';
|
2017-09-19 11:45:33 +02:00
|
|
|
}
|
2015-07-16 15:51:01 +02:00
|
|
|
];
|
|
|
|
|
2016-08-05 00:00:27 +02:00
|
|
|
users.extraUsers.mainUser.extraGroups = [ "audio" "video" ];
|
2015-10-30 18:35:21 +01:00
|
|
|
|
2015-07-16 15:51:01 +02:00
|
|
|
time.timeZone = "Europe/Berlin";
|
|
|
|
|
2018-01-20 13:03:51 +01:00
|
|
|
programs.ssh.agentTimeout = "10m";
|
2017-12-31 02:45:43 +01:00
|
|
|
programs.ssh.startAgent = true;
|
2017-05-22 17:20:58 +02:00
|
|
|
services.openssh.forwardX11 = true;
|
2015-07-16 15:51:01 +02:00
|
|
|
|
|
|
|
environment.systemPackages = with pkgs; [
|
2016-06-11 00:28:09 +02:00
|
|
|
acpi
|
2019-09-22 12:12:29 +02:00
|
|
|
acpilight
|
2018-06-08 05:04:53 +02:00
|
|
|
ag
|
2018-05-14 22:05:49 +02:00
|
|
|
cabal2nix
|
2018-06-26 22:32:42 +02:00
|
|
|
cholerab
|
2016-11-27 15:18:52 +01:00
|
|
|
dic
|
2015-12-29 20:21:06 +01:00
|
|
|
dmenu
|
2018-06-27 23:44:02 +02:00
|
|
|
font-size
|
2018-12-16 16:34:45 +01:00
|
|
|
fzfmenu
|
2015-12-26 17:30:59 +01:00
|
|
|
gitAndTools.qgit
|
2018-05-14 22:05:49 +02:00
|
|
|
git-preview
|
2018-05-07 19:56:26 +02:00
|
|
|
gnome3.dconf
|
2017-11-29 16:15:10 +01:00
|
|
|
lm_sensors
|
2016-12-01 17:10:13 +01:00
|
|
|
ncdu
|
2018-06-20 13:02:10 +02:00
|
|
|
nix-index
|
2016-06-02 12:18:49 +02:00
|
|
|
nmap
|
2015-12-26 17:30:59 +01:00
|
|
|
pavucontrol
|
|
|
|
powertop
|
2019-01-27 19:32:04 +01:00
|
|
|
rxvt_unicode-with-plugins
|
2015-12-26 17:30:59 +01:00
|
|
|
sxiv
|
2018-01-16 00:06:04 +01:00
|
|
|
taskwarrior
|
2017-11-12 13:04:42 +01:00
|
|
|
termite
|
2016-04-15 16:19:50 +02:00
|
|
|
xclip
|
2019-04-07 19:18:07 +02:00
|
|
|
xephyrify
|
2016-06-11 00:28:09 +02:00
|
|
|
xorg.xhost
|
2015-12-26 17:30:59 +01:00
|
|
|
xsel
|
2017-11-12 13:04:42 +01:00
|
|
|
zathura
|
2015-07-16 15:51:01 +02:00
|
|
|
];
|
|
|
|
|
2017-10-09 13:02:14 +02:00
|
|
|
fonts.fonts = with pkgs; [
|
|
|
|
hack-font
|
|
|
|
hasklig
|
|
|
|
symbola
|
|
|
|
xlibs.fontschumachermisc
|
2017-02-16 00:05:38 +01:00
|
|
|
];
|
|
|
|
|
2019-09-22 12:12:29 +02:00
|
|
|
services.udev.extraRules = ''
|
|
|
|
SUBSYSTEM=="backlight", ACTION=="add", \
|
|
|
|
RUN+="${pkgs.coreutils}/bin/chgrp video /sys/class/backlight/%k/brightness", \
|
|
|
|
RUN+="${pkgs.coreutils}/bin/chmod g+w /sys/class/backlight/%k/brightness"
|
|
|
|
'';
|
|
|
|
|
2017-02-16 00:05:38 +01:00
|
|
|
services.xserver = {
|
2018-01-18 19:38:56 +01:00
|
|
|
enable = true;
|
2017-02-16 00:05:38 +01:00
|
|
|
layout = "us";
|
2018-01-18 19:38:56 +01:00
|
|
|
display = mkForce 0;
|
2017-02-16 00:05:38 +01:00
|
|
|
xkbVariant = "altgr-intl";
|
2018-12-09 17:07:53 +01:00
|
|
|
xkbOptions = "caps:escape";
|
|
|
|
libinput.enable = true;
|
2018-01-18 19:38:56 +01:00
|
|
|
displayManager.lightdm.enable = true;
|
|
|
|
windowManager.default = "xmonad";
|
|
|
|
windowManager.session = [{
|
|
|
|
name = "xmonad";
|
|
|
|
start = ''
|
|
|
|
${pkgs.xorg.xhost}/bin/xhost +LOCAL:
|
2018-02-22 18:34:24 +01:00
|
|
|
${pkgs.systemd}/bin/systemctl --user start xmonad
|
2018-02-13 17:08:53 +01:00
|
|
|
exec ${pkgs.coreutils}/bin/sleep infinity
|
2018-01-18 19:38:56 +01:00
|
|
|
'';
|
|
|
|
}];
|
|
|
|
};
|
|
|
|
|
|
|
|
systemd.user.services.xmonad = {
|
|
|
|
environment = {
|
|
|
|
DISPLAY = ":${toString config.services.xserver.display}";
|
|
|
|
RXVT_SOCKET = "%t/urxvtd-socket";
|
|
|
|
XMONAD_DATA_DIR = "/tmp";
|
|
|
|
};
|
|
|
|
serviceConfig = {
|
|
|
|
SyslogIdentifier = "xmonad";
|
2018-03-03 15:07:00 +01:00
|
|
|
ExecStart = "${xmonad-lass}/bin/xmonad";
|
|
|
|
ExecStop = "${xmonad-lass}/bin/xmonad --shutdown";
|
2018-01-18 19:38:56 +01:00
|
|
|
};
|
|
|
|
restartIfChanged = false;
|
2017-02-16 00:05:38 +01:00
|
|
|
};
|
2015-07-16 15:51:01 +02:00
|
|
|
|
2018-11-30 07:48:49 +01:00
|
|
|
nixpkgs.config.packageOverrides = super: {
|
|
|
|
dmenu = pkgs.writeDashBin "dmenu" ''
|
|
|
|
${pkgs.fzfmenu}/bin/fzfmenu "$@"
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
2017-12-15 19:55:02 +01:00
|
|
|
krebs.xresources.enable = true;
|
2017-10-19 18:42:09 +02:00
|
|
|
lass.screenlock.enable = true;
|
2015-07-16 15:51:01 +02:00
|
|
|
}
|