fix(desktop): add enable option
This commit is contained in:
@@ -52,6 +52,7 @@
|
|||||||
claude-code.enable = true;
|
claude-code.enable = true;
|
||||||
opencode.enable = true;
|
opencode.enable = true;
|
||||||
};
|
};
|
||||||
|
desktop.niri.enable = true;
|
||||||
browser.enable = true;
|
browser.enable = true;
|
||||||
browser.primary = "librewolf";
|
browser.primary = "librewolf";
|
||||||
cloud.hetzner.enable = true;
|
cloud.hetzner.enable = true;
|
||||||
|
|||||||
@@ -48,6 +48,7 @@
|
|||||||
claude-code.enable = true;
|
claude-code.enable = true;
|
||||||
opencode.enable = true;
|
opencode.enable = true;
|
||||||
};
|
};
|
||||||
|
desktop.niri.enable = true;
|
||||||
browser.enable = true;
|
browser.enable = true;
|
||||||
browser.primary = "librewolf";
|
browser.primary = "librewolf";
|
||||||
cloud.hetzner.enable = true;
|
cloud.hetzner.enable = true;
|
||||||
|
|||||||
@@ -63,6 +63,7 @@
|
|||||||
defaultWrapper = "mesa";
|
defaultWrapper = "mesa";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
desktop.niri.enable = true;
|
||||||
browser = {
|
browser = {
|
||||||
enable = true;
|
enable = true;
|
||||||
primary = "firefox";
|
primary = "firefox";
|
||||||
|
|||||||
5
home/modules/desktop/default.nix
Normal file
5
home/modules/desktop/default.nix
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [ ./niri ];
|
||||||
|
}
|
||||||
@@ -179,4 +179,5 @@ binds {
|
|||||||
Alt+Print { screenshot-window; }
|
Alt+Print { screenshot-window; }
|
||||||
|
|
||||||
Mod+Shift+Delete { quit; }
|
Mod+Shift+Delete { quit; }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,9 @@
|
|||||||
{ pkgs, ... }:
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
@@ -9,27 +14,58 @@
|
|||||||
../../waybar
|
../../waybar
|
||||||
];
|
];
|
||||||
|
|
||||||
options.desktop.niri.enable = lib.mkEnableOption "niri desktop environment";
|
options.desktop.niri.enable = lib.mkEnableOption "niri desktop";
|
||||||
|
|
||||||
config = lib.mkIf config.desktop.niri.enable {
|
config = lib.mkIf config.desktop.niri.enable {
|
||||||
clipboard.enable = lib.mkDefault true;
|
clipboard.enable = lib.mkDefault true;
|
||||||
fuzzel.enable = lib.mkDefault true;
|
fuzzel.enable = lib.mkDefault true;
|
||||||
mako.enable = lib.mkDefault true;
|
mako.enable = lib.mkDefault true;
|
||||||
shikane.enable = lib.mkDefault true;
|
shikane.enable = lib.mkDefault true;
|
||||||
waybar.enable = lib.mkDefault true;
|
waybar.enable = lib.mkDefault true;
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
file.".config/niri/config.kdl".source = ./config.kdl;
|
file.".config/niri/config.kdl".source = ./config.kdl;
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
brightnessctl
|
brightnessctl
|
||||||
wlsunset
|
xwayland-satellite
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
services.gammastep = {
|
services.gammastep = {
|
||||||
enable = true;
|
enable = true;
|
||||||
provider = "manual";
|
provider = "manual";
|
||||||
latitude = 51.05;
|
latitude = 51.05;
|
||||||
longitude = 3.71667;
|
longitude = 3.71667;
|
||||||
|
};
|
||||||
|
|
||||||
|
xdg.configFile."electron-flags.conf".text = ''
|
||||||
|
--enable-features=UseOzonePlatform
|
||||||
|
--ozone-platform=wayland
|
||||||
|
'';
|
||||||
|
|
||||||
|
xdg.portal = {
|
||||||
|
enable = true;
|
||||||
|
config = {
|
||||||
|
niri = {
|
||||||
|
default = [
|
||||||
|
"gnome"
|
||||||
|
"gtk"
|
||||||
|
];
|
||||||
|
"org.freedesktop.impl.portal.Access" = "gtk";
|
||||||
|
"org.freedesktop.impl.portal.Notification" = "gtk";
|
||||||
|
"org.freedesktop.impl.portal.Secret" = "gnome-keyring";
|
||||||
|
"org.freedesktop.impl.portal.FileChooser" = "gtk";
|
||||||
|
"org.freedesktop.impl.portal.ScreenCast" = [ "gnome" ];
|
||||||
|
"org.freedesktop.impl.portal.Settings" = [
|
||||||
|
"gnome"
|
||||||
|
"gtk"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
extraPortals = [
|
||||||
|
pkgs.xdg-desktop-portal-gtk
|
||||||
|
pkgs.xdg-desktop-portal-gnome
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,67 @@
|
|||||||
{ pkgs, ... }:
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [ wdisplays ];
|
options.shikane.enable = lib.mkEnableOption "shikane";
|
||||||
services.shikane.enable = true;
|
|
||||||
|
config = lib.mkIf config.shikane.enable {
|
||||||
|
home.packages = with pkgs; [ (config.nixgl.wrap wdisplays) ];
|
||||||
|
services.shikane.enable = true;
|
||||||
|
home.file.".config/shikane/config.toml".text = ''
|
||||||
|
[[profile]]
|
||||||
|
name = "work"
|
||||||
|
|
||||||
|
[[profile.output]]
|
||||||
|
enable = true
|
||||||
|
search = ["m=Unknown", "s=", "v=Unknown"]
|
||||||
|
mode = "2880x1800@120Hz"
|
||||||
|
position = "288,3240"
|
||||||
|
scale = 1.5
|
||||||
|
transform = "normal"
|
||||||
|
adaptive_sync = false
|
||||||
|
|
||||||
|
[[profile.output]]
|
||||||
|
enable = true
|
||||||
|
search = ["m=Q27P1B", "s=GNXM2HA196769", "v=PNP(AOC)"]
|
||||||
|
mode = "2560x1440@59.951Hz"
|
||||||
|
position = "116,1800"
|
||||||
|
scale = 1.0
|
||||||
|
transform = "normal"
|
||||||
|
adaptive_sync = false
|
||||||
|
|
||||||
|
[[profile.output]]
|
||||||
|
enable = true
|
||||||
|
search = ["m=PHL 243S7", "s=UHB1923012753", "v=Philips Consumer Electronics Company"]
|
||||||
|
mode = "1920x1080@60Hz"
|
||||||
|
position = "2676,1800"
|
||||||
|
scale = 1.0
|
||||||
|
transform = "270"
|
||||||
|
adaptive_sync = false
|
||||||
|
|
||||||
|
[[profile]]
|
||||||
|
name = "home"
|
||||||
|
|
||||||
|
[[profile.output]]
|
||||||
|
enable = true
|
||||||
|
search = ["m=Unknown", "s=Unknown", "v=Unknown"]
|
||||||
|
mode = "2880x1800@60.001Hz"
|
||||||
|
position = "185,1440"
|
||||||
|
scale = 1.75
|
||||||
|
transform = "normal"
|
||||||
|
adaptive_sync = false
|
||||||
|
|
||||||
|
[[profile.output]]
|
||||||
|
enable = true
|
||||||
|
search = ["m=PHL 276E8V", "s=0x0000046D", "v=Philips Consumer Electronics Company"]
|
||||||
|
mode = "3840x2160@59.996Hz"
|
||||||
|
position = "1500,0"
|
||||||
|
scale = 1.5
|
||||||
|
transform = "normal"
|
||||||
|
adaptive_sync = false
|
||||||
|
'';
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,13 @@
|
|||||||
|
{ lib, config, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
services.logind.settings.Login = {
|
options.desktop.logind.enable = lib.mkEnableOption "logind desktop settings";
|
||||||
HandleLidSwitch = "suspend";
|
|
||||||
IdleAction = "suspend";
|
config = lib.mkIf config.desktop.logind.enable {
|
||||||
IdleActionSec = 1800;
|
services.logind.settings.Login = {
|
||||||
|
HandleLidSwitch = "suspend";
|
||||||
|
IdleAction = "suspend";
|
||||||
|
IdleActionSec = 1800;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,9 @@ in
|
|||||||
imports = [ ../logind.nix ];
|
imports = [ ../logind.nix ];
|
||||||
|
|
||||||
options.desktop = {
|
options.desktop = {
|
||||||
|
niri = {
|
||||||
|
enable = lib.mkEnableOption "niri desktop";
|
||||||
|
};
|
||||||
ly = {
|
ly = {
|
||||||
enable = lib.mkOption {
|
enable = lib.mkOption {
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
@@ -20,7 +23,8 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = {
|
config = lib.mkIf cfg.niri.enable {
|
||||||
|
desktop.logind.enable = lib.mkDefault true;
|
||||||
programs.niri = {
|
programs.niri = {
|
||||||
enable = true;
|
enable = true;
|
||||||
useNautilus = false;
|
useNautilus = false;
|
||||||
@@ -44,15 +48,6 @@ in
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
# error:
|
|
||||||
# Failed assertions:
|
|
||||||
# - h profile: xdg.portal: since you installed Home Manager via its NixOS module and
|
|
||||||
# 'home-manager.useUserPackages' is enabled, you need to add
|
|
||||||
#
|
|
||||||
# environment.pathsToLink = [ `/share/applications` `/share/xdg-desktop-portal` ];
|
|
||||||
#
|
|
||||||
# to your NixOS configuration so that the portal definitions and DE
|
|
||||||
# provided configurations get linked.
|
|
||||||
environment.pathsToLink = [
|
environment.pathsToLink = [
|
||||||
"/share/applications"
|
"/share/applications"
|
||||||
"/share/xdg-desktop-portal"
|
"/share/xdg-desktop-portal"
|
||||||
|
|||||||
Reference in New Issue
Block a user