Everything works decently (now using EXWM)

This commit is contained in:
Andrea Ciceri 2022-09-28 17:41:17 +02:00
parent 270252e5f8
commit dd4cbbb517
No known key found for this signature in database
GPG key ID: A1FC89532D1C5654
19 changed files with 291 additions and 108 deletions

View file

@ -5,4 +5,6 @@
enable = true;
package = pkgs.pulseaudioFull;
};
users.extraUsers.ccr.extraGroups = ["audio"];
}

View file

@ -46,9 +46,19 @@
"element"
"udiskie"
"discord"
"cura"
];
home.packages = with pkgs; [
comma
];
home.stateVersion = config.system.stateVersion;
# TODO move away from here
xdg.enable = true;
home.pointerCursor = {
x11.enable = true;
size = 32;
package = pkgs.vanilla-dmz;
name = "Vanilla-DMZ";
};
};
}

View file

@ -0,0 +1,9 @@
{
config,
lib,
pkgs,
...
}: {
virtualisation.docker.enable = true;
users.users.ccr.extraGroups = ["docker"];
}

BIN
modules/exwm/black.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 547 B

View file

@ -1,38 +1,54 @@
{pkgs, ...}: {
services.xserver = {
enable = true;
autorun = false;
autorun = true;
exportConfiguration = true;
layout = "us";
xkbModel = "thinkpad";
xkbVariant = "altgr-intl";
libinput.enable = true;
displayManager.startx.enable = true;
displayManager = {
defaultSession = "none+exwm";
autoLogin.enable = true;
autoLogin.user = "ccr";
sddm = {
enable = true;
autoLogin.relogin = true;
#background = "#000000";
};
};
desktopManager = {
xterm.enable = false;
};
windowManager = {
session = pkgs.lib.singleton {
name = "exwm";
# TODO query emacs daemon to discover if it's ready to start EXWM)` before starting the session
start = ''
exec dbus-launch --exit-with-session emacsclient --create-frame -F "((fullscreen . fullboth))" --eval "(exwm-init)"
'';
};
};
};
hardware.opengl.enable = true;
home-manager.users.ccr.home.file.".xinitrc".text = ''
# Disable access control for the current user.
xhost +SI:localuser:$USER
# Make Java applications aware this is a non-reparenting window manager.
export _JAVA_AWT_WM_NONREPARENTING=1
# Set default cursor.
xsetroot -cursor_name left_ptr
# Set keyboard repeat rate.
xset r rate 200 60
# Uncomment the following block to use the exwm-xim module.
export XMODIFIERS=@im=exwm-xim
export GTK_IM_MODULE=xim
export QT_IM_MODULE=xim
export CLUTTER_IM_MODULE=xim
dbus-update-activation-environment DISPLAY
# Lockscreen
exec ${pkgs.xss-lock}/bin/xss-lock -- ${pkgs.i3lock-blur}/bin/i3lock-color &
# Finally start Emacs
exec dbus-launch emacsclient --create-frame -F "((fullscreen . fullboth))"
services.xserver.displayManager.sessionCommands = ''
${pkgs.xorg.xrdb}/bin/xrdb -merge <${
pkgs.writeText "Xresources" ''
Xcursor.theme: Adwaita
Xcursor.size: 16
Emacs.Background: black
''
}
'';
home-manager.users.ccr = {
services.network-manager-applet.enable = true;
services.blueman-applet.enable = true;
services.pasystray.enable = true;
xsession.enable = true;
};
services.udisks2.enable = true;
hardware.opengl.enable = true;
}

View file

@ -7,6 +7,19 @@
nix = {
settings = {
auto-optimise-store = true;
trusted-users = [
"root"
"ccr"
"@wheel"
];
trusted-public-keys = [
"hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ="
"mlabs.cachix.org-1:gStKdEqNKcrlSQw5iMW6wFCj3+b+1ASpBVY2SYuNV2M="
];
substituters = [
"https://cache.iog.io"
"https://mlabs.cachix.org/"
];
};
extraOptions = ''
@ -21,4 +34,13 @@
optimise.automatic = true;
};
age.secrets.mlabs-cachix.file = ../../secrets/mlabs-cachix.age;
system.activationScripts = {
populate-netrc.text = ''
cat <<EOF> /etc/nix/netrc
machine mlabs.cachix.org login "" password "$(cat ${config.age.secrets.mlabs-cachix.path})"
EOF
'';
};
}

View file

@ -0,0 +1,17 @@
{
config,
lib,
pkgs,
...
}: {
services.transmission = {
enable = true;
settings = {
rpc-port = 9091;
rpc-whitelist-enabled = false;
rpc-host-whitelist-enabled = false;
};
};
users.users.ccr.extraGroups = ["transmission"];
}