feat(nix): extend wayland with sway setup
This commit is contained in:
parent
2da1181445
commit
6970b8c7d2
27 changed files with 867 additions and 516 deletions
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
flake,
|
||||
pkgs,
|
||||
# these come in via nodeSpecialArgs and are expected to be defined for every node
|
||||
repoFlake,
|
||||
nodeFlake,
|
||||
packages',
|
||||
...
|
||||
|
@ -19,6 +19,7 @@
|
|||
# hence, opt for passing the arguments selectively instead
|
||||
home-manager.extraSpecialArgs = {
|
||||
inherit
|
||||
repoFlake
|
||||
packages'
|
||||
nodeFlake
|
||||
;
|
||||
|
|
|
@ -0,0 +1,106 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
libinput.enable = true;
|
||||
libinput.touchpad.naturalScrolling = true;
|
||||
|
||||
videoDrivers = [
|
||||
"qxl"
|
||||
"modesetting"
|
||||
"ati"
|
||||
"cirrus"
|
||||
"intel"
|
||||
"vesa"
|
||||
"vmware"
|
||||
"modesetting"
|
||||
];
|
||||
layout = "us";
|
||||
xkbVariant = "altgr-intl";
|
||||
xkbOptions = "nodeadkeys";
|
||||
|
||||
desktopManager = {
|
||||
# FIXME: gnome should be moved to user session
|
||||
gnome.enable = true;
|
||||
|
||||
xterm.enable = true;
|
||||
plasma5.enable = false;
|
||||
};
|
||||
|
||||
displayManager = {
|
||||
gdm.enable = true;
|
||||
gdm.wayland = true;
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
# gnome, most of it is disabled and ideally it could live entirely in the user's home config
|
||||
programs.gpaste.enable = false;
|
||||
programs.gnome-terminal.enable = false;
|
||||
# programs.gnome-documents.enable = false;
|
||||
programs.gnome-disks.enable = false;
|
||||
|
||||
# TODO: fully delegate graphical session to home-manager config
|
||||
services.gnome = {
|
||||
gnome-online-miners.enable = lib.mkForce false;
|
||||
games.enable = false;
|
||||
gnome-remote-desktop.enable = false;
|
||||
gnome-user-share.enable = false;
|
||||
rygel.enable = false;
|
||||
sushi.enable = false;
|
||||
tracker.enable = false;
|
||||
tracker-miners.enable = false;
|
||||
|
||||
gnome-browser-connector.enable = false;
|
||||
gnome-initial-setup.enable = false;
|
||||
|
||||
# FIXME: gnome should be moved to home config
|
||||
gnome-settings-daemon.enable = true;
|
||||
core-os-services.enable = true;
|
||||
at-spi2-core.enable = true;
|
||||
evolution-data-server.enable = true;
|
||||
gnome-online-accounts.enable = true;
|
||||
gnome-keyring.enable = lib.mkForce false;
|
||||
};
|
||||
|
||||
# FIXME: gnome should be moved to user session
|
||||
services.gvfs.enable = true;
|
||||
programs.seahorse.enable = true;
|
||||
programs.dconf.enable = true;
|
||||
|
||||
environment.gnome.excludePackages =
|
||||
(with pkgs; [
|
||||
orca
|
||||
gnome-photos
|
||||
gnome-tour
|
||||
])
|
||||
++ (with pkgs.gnome; [
|
||||
cheese # webcam tool
|
||||
gnome-music
|
||||
gnome-terminal
|
||||
gedit # text editor
|
||||
epiphany # web browser
|
||||
geary # email reader
|
||||
evince # document viewer
|
||||
gnome-characters
|
||||
totem # video player
|
||||
tali # poker game
|
||||
iagno # go game
|
||||
hitori # sudoku game
|
||||
atomix # puzzle game
|
||||
]);
|
||||
|
||||
hardware.pulseaudio = {
|
||||
enable = true;
|
||||
package = pkgs.pulseaudioFull;
|
||||
support32Bit = true;
|
||||
};
|
||||
|
||||
services.dbus.packages = with pkgs; [dconf];
|
||||
|
||||
# More Services
|
||||
environment.systemPackages = [pkgs.gnome.adwaita-icon-theme pkgs.gnomeExtensions.appindicator];
|
||||
}
|
|
@ -18,111 +18,16 @@
|
|||
|
||||
services.resolved.enable = true;
|
||||
|
||||
|
||||
# hardware related services
|
||||
services.illum.enable = true;
|
||||
services.pcscd.enable = false;
|
||||
hardware = {
|
||||
bluetooth.enable = true;
|
||||
pulseaudio = {
|
||||
enable = true;
|
||||
package = pkgs.pulseaudioFull;
|
||||
support32Bit = true;
|
||||
};
|
||||
};
|
||||
hardware.opengl.enable = true;
|
||||
hardware.bluetooth.enable = true;
|
||||
# required for running blueman-applet in user sessions
|
||||
services.dbus.packages = with pkgs; [blueman dconf];
|
||||
services.dbus.packages = with pkgs; [blueman];
|
||||
services.blueman.enable = true;
|
||||
|
||||
services.xserver = {
|
||||
enable = true;
|
||||
libinput.enable = true;
|
||||
libinput.touchpad.naturalScrolling = true;
|
||||
|
||||
videoDrivers = [
|
||||
"qxl"
|
||||
"modesetting"
|
||||
"ati"
|
||||
"cirrus"
|
||||
"intel"
|
||||
"vesa"
|
||||
"vmware"
|
||||
"modesetting"
|
||||
];
|
||||
layout = "us";
|
||||
xkbVariant = "altgr-intl";
|
||||
xkbOptions = "nodeadkeys";
|
||||
|
||||
desktopManager = {
|
||||
# FIXME: gnome should be moved to user session
|
||||
gnome.enable = true;
|
||||
|
||||
xterm.enable = true;
|
||||
plasma5.enable = false;
|
||||
};
|
||||
|
||||
displayManager = {
|
||||
gdm.enable = true;
|
||||
gdm.wayland = true;
|
||||
};
|
||||
};
|
||||
|
||||
# gnome, most of it is disabled and ideally it could live entirely in the user's home config
|
||||
programs.gpaste.enable = false;
|
||||
programs.gnome-terminal.enable = false;
|
||||
# programs.gnome-documents.enable = false;
|
||||
programs.gnome-disks.enable = false;
|
||||
|
||||
services.gnome = {
|
||||
gnome-online-miners.enable = lib.mkForce false;
|
||||
games.enable = false;
|
||||
gnome-remote-desktop.enable = false;
|
||||
gnome-user-share.enable = false;
|
||||
rygel.enable = false;
|
||||
sushi.enable = false;
|
||||
tracker.enable = false;
|
||||
tracker-miners.enable = false;
|
||||
|
||||
gnome-browser-connector.enable = false;
|
||||
gnome-initial-setup.enable = false;
|
||||
|
||||
# FIXME: gnome should be moved to home config
|
||||
gnome-settings-daemon.enable = true;
|
||||
core-os-services.enable = true;
|
||||
at-spi2-core.enable = true;
|
||||
evolution-data-server.enable = true;
|
||||
gnome-online-accounts.enable = true;
|
||||
gnome-keyring.enable = lib.mkForce false;
|
||||
};
|
||||
|
||||
# FIXME: gnome should be moved to user session
|
||||
services.gvfs.enable = true;
|
||||
programs.seahorse.enable = true;
|
||||
programs.dconf.enable = true;
|
||||
|
||||
environment.gnome.excludePackages =
|
||||
(with pkgs; [
|
||||
orca
|
||||
gnome-photos
|
||||
gnome-tour
|
||||
])
|
||||
++ (with pkgs.gnome; [
|
||||
cheese # webcam tool
|
||||
gnome-music
|
||||
gnome-terminal
|
||||
gedit # text editor
|
||||
epiphany # web browser
|
||||
geary # email reader
|
||||
evince # document viewer
|
||||
gnome-characters
|
||||
totem # video player
|
||||
tali # poker game
|
||||
iagno # go game
|
||||
hitori # sudoku game
|
||||
atomix # puzzle game
|
||||
]);
|
||||
|
||||
# More Services
|
||||
environment.systemPackages = [pkgs.gnome.adwaita-icon-theme pkgs.gnomeExtensions.appindicator];
|
||||
services.udev.packages = [pkgs.libu2f-host pkgs.yubikey-personalization pkgs.android-udev-rules];
|
||||
services.udev.extraRules = ''
|
||||
# OnePlusOne
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue