Set up desktop environments
This commit is contained in:
parent
1d5233512b
commit
b5b5063065
272
users/jan.nix
272
users/jan.nix
|
@ -1,6 +1,11 @@
|
|||
# How Jan likes his linux to be configured
|
||||
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = {
|
||||
|
@ -11,43 +16,266 @@
|
|||
home.packages = with pkgs; [
|
||||
libreoffice-still
|
||||
remmina
|
||||
# dina-vector
|
||||
# android-studio
|
||||
# jellyfin-tui
|
||||
pinentry
|
||||
thunderbird
|
||||
signal-desktop
|
||||
prusa-slicer
|
||||
freecad-wayland
|
||||
inkscape
|
||||
# appflowy
|
||||
ente-auth
|
||||
];
|
||||
|
||||
desktop.environments = {
|
||||
river-dark = {
|
||||
name = "River Dark";
|
||||
type = "custom";
|
||||
config = { };
|
||||
extraConfig = {
|
||||
modules = {
|
||||
# Desktop environment
|
||||
river.enable = true;
|
||||
waylock.enable = true;
|
||||
waybar.enable = true;
|
||||
mako.enable = true;
|
||||
foot.enable = true;
|
||||
rofi-rbw.enable = true;
|
||||
};
|
||||
|
||||
# TODO: Remove everything below, it is here out of convenience and should be elsewhere
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
|
||||
config.common.default = [
|
||||
"wlr"
|
||||
"gtk"
|
||||
];
|
||||
|
||||
extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-gtk
|
||||
xdg-desktop-portal-wlr
|
||||
];
|
||||
};
|
||||
|
||||
# Color scheme
|
||||
desktop.theming.themes.catppuccin = {
|
||||
enable = true;
|
||||
flavor = "mocha";
|
||||
};
|
||||
};
|
||||
};
|
||||
river-light = {
|
||||
name = "River Light";
|
||||
type = "custom";
|
||||
config = { };
|
||||
extraConfig = {
|
||||
modules = {
|
||||
# Desktop environment
|
||||
river.enable = true;
|
||||
waylock.enable = true;
|
||||
waybar.enable = true;
|
||||
mako.enable = true;
|
||||
foot.enable = true;
|
||||
rofi-rbw.enable = true;
|
||||
};
|
||||
|
||||
# TODO: Remove everything below, it is here out of convenience and should be elsewhere
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
|
||||
config.common.default = [
|
||||
"wlr"
|
||||
"gtk"
|
||||
];
|
||||
|
||||
extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-gtk
|
||||
xdg-desktop-portal-wlr
|
||||
];
|
||||
};
|
||||
|
||||
# Color scheme
|
||||
desktop.theming.themes.catppuccin = {
|
||||
enable = true;
|
||||
flavor = lib.mkForce "latte";
|
||||
};
|
||||
};
|
||||
};
|
||||
cosmic = {
|
||||
name = "Cosmic";
|
||||
type = "custom";
|
||||
config = { };
|
||||
extraConfig = {
|
||||
desktop = {
|
||||
initScript = ''
|
||||
${pkgs.dbus}/bin/dbus-run-session ${pkgs.cosmic-session}/bin/cosmic-session
|
||||
'';
|
||||
session = {
|
||||
type = "wayland";
|
||||
desktop = "cosmic";
|
||||
};
|
||||
};
|
||||
home.packages = with pkgs; [
|
||||
adwaita-icon-theme
|
||||
alsa-utils
|
||||
cosmic-applets
|
||||
cosmic-applibrary
|
||||
cosmic-bg
|
||||
(cosmic-comp.override {
|
||||
useXWayland = false;
|
||||
})
|
||||
cosmic-edit
|
||||
cosmic-files
|
||||
cosmic-greeter
|
||||
cosmic-icons
|
||||
cosmic-idle
|
||||
cosmic-launcher
|
||||
cosmic-notifications
|
||||
cosmic-osd
|
||||
cosmic-panel
|
||||
cosmic-player
|
||||
cosmic-randr
|
||||
cosmic-screenshot
|
||||
cosmic-session
|
||||
cosmic-settings
|
||||
cosmic-settings-daemon
|
||||
cosmic-term
|
||||
cosmic-wallpapers
|
||||
cosmic-workspaces-epoch
|
||||
hicolor-icon-theme
|
||||
playerctl
|
||||
pop-icon-theme
|
||||
pop-launcher
|
||||
xdg-user-dirs
|
||||
xwayland
|
||||
cosmic-store
|
||||
|
||||
# Fonts
|
||||
fira
|
||||
noto-fonts
|
||||
open-sans
|
||||
];
|
||||
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-cosmic
|
||||
xdg-desktop-portal-gtk
|
||||
];
|
||||
configPackages = lib.mkDefault (with pkgs; [ xdg-desktop-portal-cosmic ]);
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
gnome = {
|
||||
name = "Gnome";
|
||||
type = "custom";
|
||||
config = { };
|
||||
extraConfig = {
|
||||
programs = {
|
||||
gnome-shell.enable = true;
|
||||
};
|
||||
desktop = {
|
||||
initScript = ''
|
||||
${pkgs.dbus}/bin/dbus-run-session ${pkgs.gnome-session}/bin/gnome-session
|
||||
'';
|
||||
session = {
|
||||
type = "wayland";
|
||||
desktop = "GNOME";
|
||||
};
|
||||
};
|
||||
home.packages = [
|
||||
# Core utilities
|
||||
pkgs.baobab
|
||||
pkgs.epiphany
|
||||
pkgs.gnome-text-editor
|
||||
pkgs.gnome-calculator
|
||||
pkgs.gnome-calendar
|
||||
pkgs.gnome-characters
|
||||
pkgs.gnome-clocks
|
||||
pkgs.gnome-console
|
||||
pkgs.gnome-contacts
|
||||
pkgs.gnome-font-viewer
|
||||
pkgs.gnome-logs
|
||||
pkgs.gnome-maps
|
||||
pkgs.gnome-music
|
||||
pkgs.gnome-system-monitor
|
||||
pkgs.gnome-weather
|
||||
pkgs.loupe
|
||||
pkgs.nautilus
|
||||
pkgs.gnome-connections
|
||||
pkgs.simple-scan
|
||||
pkgs.snapshot
|
||||
pkgs.totem
|
||||
pkgs.yelp
|
||||
|
||||
# Optional packages
|
||||
pkgs.adwaita-icon-theme
|
||||
pkgs.gnome-backgrounds
|
||||
pkgs.gnome-bluetooth
|
||||
pkgs.gnome-color-manager
|
||||
pkgs.gnome-control-center
|
||||
pkgs.gnome-shell-extensions
|
||||
pkgs.gnome-tour # GNOME Shell detects the .desktop file on first log-in.
|
||||
pkgs.gnome-user-docs
|
||||
pkgs.glib # for gsettings program
|
||||
pkgs.gnome-menus
|
||||
pkgs.gtk3.out # for gtk-launch program
|
||||
pkgs.xdg-user-dirs # Update user dirs as described in https://freedesktop.org/wiki/Software/xdg-user-dirs/
|
||||
pkgs.xdg-user-dirs-gtk # Used to create the default bookmarks
|
||||
|
||||
# Games
|
||||
pkgs.aisleriot
|
||||
pkgs.atomix
|
||||
pkgs.five-or-more
|
||||
pkgs.four-in-a-row
|
||||
pkgs.gnome-2048
|
||||
pkgs.gnome-chess
|
||||
pkgs.gnome-klotski
|
||||
pkgs.gnome-mahjongg
|
||||
pkgs.gnome-mines
|
||||
pkgs.gnome-nibbles
|
||||
pkgs.gnome-robots
|
||||
pkgs.gnome-sudoku
|
||||
pkgs.gnome-taquin
|
||||
pkgs.gnome-tetravex
|
||||
pkgs.hitori
|
||||
pkgs.iagno
|
||||
pkgs.lightsoff
|
||||
pkgs.quadrapassel
|
||||
pkgs.swell-foop
|
||||
pkgs.tali
|
||||
|
||||
# Fonts
|
||||
pkgs.cantarell-fonts
|
||||
pkgs.dejavu_fonts
|
||||
pkgs.source-code-pro # Default monospace font in 3.32
|
||||
pkgs.source-sans
|
||||
|
||||
# Other stuff
|
||||
pkgs.gnome-session
|
||||
# pkgs.gnome-session.sessions
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Desktop environments
|
||||
# desktops =
|
||||
# desktop.environments =
|
||||
# let
|
||||
# in
|
||||
# {
|
||||
# "River Dark" = {
|
||||
# [
|
||||
# {
|
||||
# name = "river";
|
||||
# type = "custom";
|
||||
# theming = { };
|
||||
# config = { };
|
||||
# extraConfig = { };
|
||||
# };
|
||||
# };
|
||||
# extraConfig = {
|
||||
# home.packages = with pkgs; [ cowsay ];
|
||||
# };
|
||||
# }
|
||||
# ];
|
||||
|
||||
# Enabled modules
|
||||
modules = {
|
||||
# Window manager
|
||||
river.enable = true;
|
||||
waylock.enable = true;
|
||||
waybar.enable = true;
|
||||
|
||||
# Desktop environment
|
||||
mako.enable = true;
|
||||
foot.enable = true;
|
||||
|
||||
# Communication
|
||||
whatsapp.enable = true;
|
||||
discord.enable = true;
|
||||
|
@ -74,7 +302,6 @@
|
|||
feishin.enable = true;
|
||||
|
||||
# Tools
|
||||
rofi-rbw.enable = true;
|
||||
git = {
|
||||
enable = true;
|
||||
user = "Jan-Bulthuis";
|
||||
|
@ -153,5 +380,6 @@
|
|||
xdg-desktop-portal-wlr
|
||||
];
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue