Create graphical profile
This commit is contained in:
parent
0ccb9c51b2
commit
e140f079db
8 changed files with 99 additions and 77 deletions
|
|
@ -13,10 +13,13 @@
|
||||||
./hardware.nix
|
./hardware.nix
|
||||||
./disko.nix
|
./disko.nix
|
||||||
./metrics.nix
|
./metrics.nix
|
||||||
./musnix.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
bosun = {
|
bosun = {
|
||||||
|
profiles = {
|
||||||
|
graphical.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
#quirks = ["avahi" "docker" "nix-ld"];
|
#quirks = ["avahi" "docker" "nix-ld"];
|
||||||
key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPjqieS4GkYAa1WRYZpxjgYsj7VGZ9U+rTFCkX8M0umD";
|
key = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPjqieS4GkYAa1WRYZpxjgYsj7VGZ9U+rTFCkX8M0umD";
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -1,12 +0,0 @@
|
||||||
{inputs, ...}: {
|
|
||||||
imports = [
|
|
||||||
inputs.musnix.nixosModules.default
|
|
||||||
];
|
|
||||||
|
|
||||||
musnix = {
|
|
||||||
enable = true;
|
|
||||||
rtcqs.enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
users.users.toph.extraGroups = ["audio"];
|
|
||||||
}
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./services
|
./services
|
||||||
|
./profiles
|
||||||
./system.nix
|
./system.nix
|
||||||
./users.nix
|
./users.nix
|
||||||
];
|
];
|
||||||
|
|
|
||||||
5
modules/nixos/profiles/default.nix
Normal file
5
modules/nixos/profiles/default.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
{...}: {
|
||||||
|
imports = [
|
||||||
|
./graphical
|
||||||
|
];
|
||||||
|
}
|
||||||
27
modules/nixos/profiles/graphical/audio.nix
Normal file
27
modules/nixos/profiles/graphical/audio.nix
Normal file
|
|
@ -0,0 +1,27 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib) mkForce mkDefault;
|
||||||
|
in {
|
||||||
|
imports = [
|
||||||
|
inputs.musnix.nixosModules.default
|
||||||
|
];
|
||||||
|
|
||||||
|
config = {
|
||||||
|
musnix = {
|
||||||
|
enable = mkDefault true;
|
||||||
|
rtcqs.enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
users.users.toph.extraGroups = ["audio"];
|
||||||
|
|
||||||
|
pipewire = {
|
||||||
|
enable = mkForce true;
|
||||||
|
alsa.enable = true;
|
||||||
|
jack.enable = true;
|
||||||
|
pulse.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
12
modules/nixos/profiles/graphical/default.nix
Normal file
12
modules/nixos/profiles/graphical/default.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
inherit (lib) mkIf;
|
||||||
|
in {
|
||||||
|
imports = mkIf config.bosun.profiles.graphical.enabled [
|
||||||
|
./wm.nix
|
||||||
|
./audio.nix
|
||||||
|
];
|
||||||
|
}
|
||||||
50
modules/nixos/profiles/graphical/wm.nix
Normal file
50
modules/nixos/profiles/graphical/wm.nix
Normal file
|
|
@ -0,0 +1,50 @@
|
||||||
|
{
|
||||||
|
inputs,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
imports = [
|
||||||
|
inputs.niri.nixosModules.default
|
||||||
|
];
|
||||||
|
|
||||||
|
config = {
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
wayland-utils
|
||||||
|
wl-clipboard
|
||||||
|
libsForQt5.qtstyleplugin-kvantum
|
||||||
|
xwayland-satellite
|
||||||
|
nautilus
|
||||||
|
];
|
||||||
|
|
||||||
|
programs.niri = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.niri; # TODO: Use input niri pkgs/overlay!
|
||||||
|
};
|
||||||
|
|
||||||
|
services = {
|
||||||
|
xserver.enable = true;
|
||||||
|
|
||||||
|
displayManager = {
|
||||||
|
defaultSession = "niri";
|
||||||
|
|
||||||
|
sddm = {
|
||||||
|
enable = true;
|
||||||
|
wayland.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
xdg.portal = {
|
||||||
|
enable = true;
|
||||||
|
xdgOpenUsePortal = true;
|
||||||
|
config.common.default = "gtk";
|
||||||
|
|
||||||
|
extraPortals = with pkgs; [
|
||||||
|
xdg-desktop-portal-gnome
|
||||||
|
xdg-desktop-portal-gtk
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
security.polkit.enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,64 +0,0 @@
|
||||||
{
|
|
||||||
inputs,
|
|
||||||
pkgs,
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib; let
|
|
||||||
cfg = config.elements.wm;
|
|
||||||
in {
|
|
||||||
options.elements = {
|
|
||||||
wm = {
|
|
||||||
enable = mkEnableOption "Enable window manager configuration";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
# kdePackages.discover
|
|
||||||
# kdePackages.kclock
|
|
||||||
# kdePackages.kcharselect
|
|
||||||
# kdePackages.kolourpaint
|
|
||||||
# kdePackages.ksystemlog
|
|
||||||
wayland-utils
|
|
||||||
wl-clipboard
|
|
||||||
libsForQt5.qtstyleplugin-kvantum
|
|
||||||
xwayland-satellite
|
|
||||||
nautilus # xdg-gnome needs this but we don't use gnome???
|
|
||||||
];
|
|
||||||
|
|
||||||
programs.niri = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.niri;
|
|
||||||
};
|
|
||||||
|
|
||||||
# niri-flake.cache.enable = false;
|
|
||||||
|
|
||||||
services.xserver = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
# TODO: Switch this to Niri!
|
|
||||||
services.desktopManager.plasma6.enable = true;
|
|
||||||
services.displayManager = {
|
|
||||||
defaultSession = "niri";
|
|
||||||
|
|
||||||
sddm = {
|
|
||||||
enable = true;
|
|
||||||
wayland.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
xdg.portal = with pkgs; {
|
|
||||||
enable = true;
|
|
||||||
xdgOpenUsePortal = true;
|
|
||||||
|
|
||||||
extraPortals = [xdg-desktop-portal-gnome xdg-desktop-portal-gtk];
|
|
||||||
#E configPackages = [pkgs.xdg-desktop-portal-gtk];
|
|
||||||
config.common.default = "gtk";
|
|
||||||
};
|
|
||||||
|
|
||||||
security.polkit.enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Loading…
Add table
Reference in a new issue