wip(home): refactor home modules *WILL NOT BUILD*

This commit is contained in:
ooks-io 2024-06-04 21:19:35 +12:00
parent 2033810429
commit 6a591ecbf7
115 changed files with 1028 additions and 791 deletions

View file

@ -0,0 +1,56 @@
{ lib, ... }:
let
inherit (lib) mkOption types;
inherit (types) str;
mkWarn = message: "notify-send --urgency=normal 'warning' '${message}'";
in
{
options.ooknet.binds = {
browser = mkOption {
type = str;
default = mkWarn "No browser is enabled";
};
terminal = mkOption {
type = str;
default = mkWarn "No terminal is enabled";
};
terminalLaunch = mkOption {
type = str;
default = mkWarn "Failed to launch tui";
};
fileManager = mkOption {
type = str;
default = mkWarn "No file manager is enabled.";
};
notes = mkOption {
type = str;
default = mkWarn "No notes app is enabled";
};
discord = mkOption {
type = str;
default = mkWarn "No discord app is enabled";
};
steam = mkOption {
type = str;
default = mkWarn "Steam is not enabled";
};
powerMenu = mkOption {
type = str;
default = mkWarn "No power menu is enabled";
};
locker = mkOption {
type = str;
default = mkWarn "No screen locker enabled";
};
};
}

View file

@ -0,0 +1,12 @@
{ lib, ... }:
let
inherit (lib) mkEnableOption;
in
{
options.ooknet.browser = {
firefox.enable = mkEnableOption "";
brave.enable = mkEnableOption "";
};
}

View file

@ -0,0 +1,11 @@
{ lib, ... }:
let
inherit (lib) mkEnableOption;
in
{
options.ooknet.communication = {
discord.enable = mkEnableOption "";
};
}

View file

@ -0,0 +1,12 @@
{ lib, ... }:
let
inherit (lib) mkEnableOption;
in
{
options.ooknet.creative = {
inkscape.enable = mkEnableOption "";
audacity.enable = mkEnableOption "";
};
}

View file

@ -0,0 +1,13 @@
{ lib, ... }:
let
inherit (lib) mkEnableOption;
in
{
options.ooknet.gaming = {
factorio.enable = mkEnableOption "";
bottles.enable = mkEnableOption "";
lutris.enable = mkEnableOption "";
};
}

View file

@ -0,0 +1,21 @@
{ lib, ... }:
let
inherit (lib) mkEnableOption;
in
{
options.ooknet.media = {
image = {
imv.enable = mkEnableOption "";
};
video = {
mpv.enable = mkEnableOption "";
jellyfinPlayer.enable = mkEnableOption "";
youtube.enable = mkEnableOption "";
};
music = {
spotifyCli.enable = mkEnableOption "";
};
};
}

View file

@ -0,0 +1,19 @@
{ lib, ... }:
let
inherit (lib) mkEnableOption;
in
{
options.ooknet.productivity = {
notes = {
obsidian.enable = mkEnableOption "";
};
office = {
libreoffice.enable = mkEnableOption "";
};
pdf = {
zathura.enable = mkEnableOption "";
};
};
}

View file

@ -0,0 +1,11 @@
{ lib, ... }:
let
inherit (lib) mkEnableOption;
in
{
options.ooknet.terminal = {
foot.enable = mkEnableOption "";
};
}

View file

@ -0,0 +1,11 @@
{ lib, ... }:
let
inherit (lib) mkEnableOption;
in
{
options.ooknet.tools = {
kdeconnect.enable = mkEnableOption "";
};
}

View file

@ -0,0 +1,31 @@
{ lib, ... }:
let
inherit (lib) mkOption mkEnableOption types;
inherit (types) nullOr enum;
in
{
ooknet.wayland = {
enable = mkEnableOption "";
compositor = mkOption {
type = nullOr (enum [ "hyprland" ]);
};
launcher = mkOption {
type = nullOr (enum [ "rofi" "tofi" ]);
default = null;
};
locker = mkOption {
type = nullOr (enum [ "hyprlock" "swaylock" ]);
default = null;
};
notification = mkOption {
type = nullOr (enum [ "mako" ]);
default = null;
};
bar = mkOption {
type = nullOr (enum [ "waybar" ]);
default = null;
};
};
}