add 'laptopMode' option and config

This commit is contained in:
Aly Raffauf 2024-08-19 19:18:41 -04:00
parent db26ccee2f
commit 70c1e7dd3b
9 changed files with 44 additions and 32 deletions

View file

@ -167,6 +167,12 @@ in {
};
};
laptopMode = lib.mkOption {
description = "Enable laptop configuration.";
default = osConfig.ar.laptopMode;
type = lib.types.bool;
};
services = {
easyeffects = {
enable = lib.mkEnableOption "EasyEffects user service.";

View file

@ -1,14 +1,11 @@
{
config,
lib,
osConfig,
pkgs,
...
}: {
imports =
if (osConfig.networking.hostName == "mauville")
then [./ultrawide.nix]
else [./laptop.nix];
imports = [./laptop.nix];
programs.waybar.settings.mainBar."bluetooth" = {
"on-click" = lib.mkForce "${lib.getExe pkgs.rofi-bluetooth} -i";
};

View file

@ -4,33 +4,35 @@
pkgs,
...
}: {
wayland.windowManager = {
sway.config = {
assigns = {
"workspace 1:web" = [{app_id = "firefox";} {app_id = "brave-browser";}];
"workspace 2:note" = [{app_id = "obsidian";}];
"workspace 3:code" = [{app_id = "codium-url-handler";} {app_id = "dev.zed.Zed";}];
"workspace 4:mail" = [{app_id = "thunderbird";}];
"workspace 5:work" = [{app_id = "firework";}];
config = lib.mkIf config.ar.home.laptopMode {
wayland.windowManager = {
sway.config = {
assigns = {
"workspace 1:web" = [{app_id = "firefox";} {app_id = "brave-browser";}];
"workspace 2:note" = [{app_id = "obsidian";}];
"workspace 3:code" = [{app_id = "codium-url-handler";} {app_id = "dev.zed.Zed";}];
"workspace 4:mail" = [{app_id = "thunderbird";}];
"workspace 5:work" = [{app_id = "firework";}];
};
startup = [
{command = "sleep 2 && ${lib.getExe' config.wayland.windowManager.sway.package "swaymsg"} workspace 1:web";}
];
};
startup = [
{command = "sleep 2 && ${lib.getExe' config.wayland.windowManager.sway.package "swaymsg"} workspace 1:web";}
];
};
hyprland.settings = {
exec-once = [
"sleep 2 && hyprctl dispatch workspace 2 && sleep 2 && hyprctl dispatch workspace 3 && sleep 2 && hyprctl dispatch workspace 4 && sleep 2 && hyprctl dispatch workspace 1;"
];
hyprland.settings = {
exec-once = [
"sleep 2 && hyprctl dispatch workspace 2 && sleep 2 && hyprctl dispatch workspace 3 && sleep 2 && hyprctl dispatch workspace 4 && sleep 2 && hyprctl dispatch workspace 1;"
];
workspace = [
"1,defaultName:web,on-created-empty:${lib.getExe config.ar.home.defaultApps.webBrowser}"
"2,defaultName:note,on-created-empty:${lib.getExe' pkgs.obsidian "obsidian"}"
"3,defaultName:code,on-created-empty:${lib.getExe config.ar.home.defaultApps.editor}"
"4,defaultName:mail,on-created-empty:${lib.getExe pkgs.thunderbird}"
"special:magic,on-created-empty:${lib.getExe pkgs.fractal}"
];
workspace = [
"1,defaultName:web,on-created-empty:${lib.getExe config.ar.home.defaultApps.webBrowser}"
"2,defaultName:note,on-created-empty:${lib.getExe' pkgs.obsidian "obsidian"}"
"3,defaultName:code,on-created-empty:${lib.getExe config.ar.home.defaultApps.editor}"
"4,defaultName:mail,on-created-empty:${lib.getExe pkgs.thunderbird}"
"special:magic,on-created-empty:${lib.getExe pkgs.fractal}"
];
};
};
};
}

View file

@ -1,2 +0,0 @@
{
}

View file

@ -41,7 +41,8 @@
sway.enable = true;
};
laptopMode = true;
services.flatpak.enable = true;
users = {

View file

@ -45,6 +45,8 @@
hyprland.enable = true;
sway.enable = true;
};
laptopMode = true;
users.aly = {
enable = true;

View file

@ -65,6 +65,8 @@
hyprland.enable = true;
sway.enable = true;
};
laptopMode = true;
users.aly = {
enable = true;

View file

@ -40,6 +40,8 @@
sway.enable = true;
};
laptopMode = true;
users.aly = {
enable = true;

View file

@ -33,6 +33,8 @@
steam.enable = lib.mkEnableOption "Steam + Gamescope session.";
sway.enable = lib.mkEnableOption "Sway wayland session.";
};
laptopMode = lib.mkEnableOption "Enable laptop configuration.";
services.flatpak.enable = lib.mkEnableOption "Flatpak support with GUI.";
};