noctalia shit mostly
This commit is contained in:
parent
7b9b6c1cdd
commit
34dd048981
14 changed files with 398 additions and 144 deletions
|
|
@ -8,13 +8,9 @@
|
|||
}:
|
||||
|
||||
{
|
||||
imports =
|
||||
if true then
|
||||
[
|
||||
inputs.noctalia.homeModules.default
|
||||
]
|
||||
else
|
||||
[ ];
|
||||
imports = [
|
||||
inputs.noctalia.homeModules.default
|
||||
];
|
||||
config = {
|
||||
|
||||
programs.noctalia-shell =
|
||||
|
|
@ -52,44 +48,293 @@
|
|||
widgets = {
|
||||
left = [
|
||||
{
|
||||
colorizeSystemIcon = "none";
|
||||
customIconPath = "";
|
||||
enableColorization = false;
|
||||
icon = "rocket";
|
||||
iconColor = "none";
|
||||
id = "Launcher";
|
||||
useDistroLogo = true;
|
||||
}
|
||||
{
|
||||
id = "Clock";
|
||||
}
|
||||
{
|
||||
id = "SystemMonitor";
|
||||
}
|
||||
{
|
||||
id = "ActiveWindow";
|
||||
}
|
||||
{
|
||||
compactMode = false;
|
||||
hideMode = "hidden";
|
||||
hideWhenIdle = false;
|
||||
id = "MediaMini";
|
||||
maxWidth = 145;
|
||||
panelShowAlbumArt = true;
|
||||
scrollingMode = "hover";
|
||||
showAlbumArt = true;
|
||||
showArtistFirst = true;
|
||||
showProgressRing = true;
|
||||
showVisualizer = false;
|
||||
textColor = "none";
|
||||
useFixedWidth = false;
|
||||
visualizerType = "linear";
|
||||
}
|
||||
{
|
||||
hideWhenZero = false;
|
||||
hideWhenZeroUnread = false;
|
||||
iconColor = "none";
|
||||
id = "NotificationHistory";
|
||||
showUnreadBadge = true;
|
||||
unreadBadgeColor = "primary";
|
||||
}
|
||||
{
|
||||
compactMode = true;
|
||||
diskPath = "/";
|
||||
iconColor = "none";
|
||||
id = "SystemMonitor";
|
||||
showCpuCores = false;
|
||||
showCpuFreq = false;
|
||||
showCpuTemp = true;
|
||||
showCpuUsage = true;
|
||||
showDiskAvailable = false;
|
||||
showDiskUsage = true;
|
||||
showDiskUsageAsPercent = false;
|
||||
showGpuTemp = false;
|
||||
showLoadAverage = false;
|
||||
showMemoryAsPercent = false;
|
||||
showMemoryUsage = true;
|
||||
showNetworkStats = false;
|
||||
showSwapUsage = true;
|
||||
textColor = "none";
|
||||
useMonospaceFont = true;
|
||||
usePadding = false;
|
||||
}
|
||||
(
|
||||
if (osConfig.device.type == "laptop") then
|
||||
{
|
||||
deviceNativePath = "__default__";
|
||||
displayMode = "icon-hover";
|
||||
hideIfIdle = false;
|
||||
hideIfNotDetected = false;
|
||||
id = "Battery";
|
||||
showNoctaliaPerformance = true;
|
||||
showPowerProfiles = true;
|
||||
}
|
||||
else
|
||||
{ }
|
||||
)
|
||||
{
|
||||
displayMode = "alwaysHide";
|
||||
iconColor = "none";
|
||||
id = "Network";
|
||||
textColor = "none";
|
||||
}
|
||||
{
|
||||
displayMode = "alwaysHide";
|
||||
iconColor = "none";
|
||||
id = "Bluetooth";
|
||||
textColor = "none";
|
||||
}
|
||||
{
|
||||
defaultSettings = {
|
||||
autoHeight = true;
|
||||
cheatsheetData = [ ];
|
||||
columnCount = 3;
|
||||
detectedCompositor = "";
|
||||
hyprlandConfigPath = "~/.config/hypr/hyprland.conf";
|
||||
modKeyVariable = "$mod";
|
||||
niriConfigPath = "~/.config/niri/config.kdl";
|
||||
windowHeight = 0;
|
||||
windowWidth = 1400;
|
||||
};
|
||||
id = "plugin:keybind-cheatsheet";
|
||||
}
|
||||
{
|
||||
defaultSettings = {
|
||||
autoCloseManagedObs = true;
|
||||
barLabelMode = "short-label";
|
||||
launchBehavior = "minimized-to-tray";
|
||||
leftClickAction = "panel";
|
||||
openVideosAfterStop = true;
|
||||
pollIntervalMs = 2500;
|
||||
showBarWhenReady = true;
|
||||
showBarWhenRecording = true;
|
||||
showBarWhenReplay = false;
|
||||
showBarWhenStreaming = true;
|
||||
showControlCenterWhenReady = false;
|
||||
showControlCenterWhenRecording = true;
|
||||
showControlCenterWhenReplay = true;
|
||||
showControlCenterWhenStreaming = true;
|
||||
showElapsedInBar = false;
|
||||
videosOpener = "xdg-open";
|
||||
videosPath = "";
|
||||
};
|
||||
id = "plugin:obs-control";
|
||||
}
|
||||
{
|
||||
defaultSettings = {
|
||||
activeColor = "primary";
|
||||
enableToast = true;
|
||||
hideInactive = false;
|
||||
iconSpacing = 4;
|
||||
inactiveColor = "none";
|
||||
micFilterRegex = "";
|
||||
removeMargins = false;
|
||||
};
|
||||
id = "plugin:privacy-indicator";
|
||||
}
|
||||
{
|
||||
defaultSettings = {
|
||||
colorHistory = [ ];
|
||||
detectedCompositor = "";
|
||||
detectedRecorder = "";
|
||||
filenameFormat = "";
|
||||
installedLangs = [
|
||||
"eng"
|
||||
];
|
||||
paletteColors = [ ];
|
||||
screenshotPath = "";
|
||||
selectedOcrLang = "eng";
|
||||
transAvailable = false;
|
||||
videoPath = "";
|
||||
};
|
||||
id = "plugin:screen-toolkit";
|
||||
}
|
||||
];
|
||||
center = [
|
||||
{
|
||||
defaultSettings = {
|
||||
hideBackground = false;
|
||||
minimumThreshold = 10;
|
||||
};
|
||||
id = "plugin:catwalk";
|
||||
}
|
||||
{
|
||||
clockColor = "none";
|
||||
customFont = "";
|
||||
formatHorizontal = "HH:mm ddd, dd. MMM";
|
||||
formatVertical = "HH mm - dd MM";
|
||||
id = "Clock";
|
||||
tooltipFormat = "HH:mm ddd, dd. MMM";
|
||||
useCustomFont = false;
|
||||
}
|
||||
{
|
||||
id = "plugin:weekly-calendar";
|
||||
}
|
||||
{
|
||||
characterCount = 2;
|
||||
colorizeIcons = false;
|
||||
emptyColor = "none";
|
||||
enableScrollWheel = true;
|
||||
focusedColor = "primary";
|
||||
followFocusedScreen = false;
|
||||
fontWeight = "bold";
|
||||
groupedBorderOpacity = 1;
|
||||
hideUnoccupied = false;
|
||||
iconScale = 0.8;
|
||||
id = "Workspace";
|
||||
labelMode = "index";
|
||||
occupiedColor = "none";
|
||||
pillSize = 0.6;
|
||||
showApplications = false;
|
||||
showApplicationsHover = false;
|
||||
showBadge = true;
|
||||
showLabelsOnlyWhenOccupied = true;
|
||||
unfocusedIconsOpacity = 1;
|
||||
}
|
||||
{
|
||||
defaultSettings = {
|
||||
enableTodoIntegration = false;
|
||||
notecardsEnabled = true;
|
||||
pincardsEnabled = true;
|
||||
showCloseButton = true;
|
||||
};
|
||||
id = "plugin:clipper";
|
||||
}
|
||||
{
|
||||
defaultSettings = {
|
||||
catColor = "default";
|
||||
catOffsetY = 0;
|
||||
catSize = 1;
|
||||
idleTimeout = 150;
|
||||
raveMode = false;
|
||||
tappyMode = false;
|
||||
useMprisFilter = false;
|
||||
waitingTimeout = 30000;
|
||||
};
|
||||
id = "plugin:slowbongo";
|
||||
}
|
||||
];
|
||||
right = [
|
||||
{
|
||||
blacklist = [
|
||||
"*kdeconnect*"
|
||||
"*syncthing*"
|
||||
];
|
||||
chevronColor = "none";
|
||||
colorizeIcons = false;
|
||||
drawerEnabled = false;
|
||||
hidePassive = false;
|
||||
id = "Tray";
|
||||
pinned = [ ];
|
||||
}
|
||||
{
|
||||
id = "NotificationHistory";
|
||||
defaultSettings = { };
|
||||
id = "plugin:kde-connect";
|
||||
}
|
||||
{
|
||||
id = "Battery";
|
||||
defaultSettings = {
|
||||
apiKey = "";
|
||||
apiUrl = "";
|
||||
configPath = "";
|
||||
enabled = true;
|
||||
folderIds = [ ];
|
||||
pollIntervalMs = 10000;
|
||||
verifyTls = false;
|
||||
};
|
||||
id = "plugin:syncthing-status";
|
||||
}
|
||||
{
|
||||
defaultSettings = {
|
||||
compactMode = false;
|
||||
defaultPeerAction = "copy-ip";
|
||||
hideDisconnected = false;
|
||||
hideMullvadExitNodes = true;
|
||||
pingCount = 5;
|
||||
refreshInterval = 5000;
|
||||
showIpAddress = true;
|
||||
showPeerCount = true;
|
||||
sshUsername = "";
|
||||
taildropDownloadDir = "~/Downloads";
|
||||
taildropEnabled = true;
|
||||
taildropReceiveMode = "operator";
|
||||
terminalCommand = "";
|
||||
};
|
||||
id = "plugin:tailscale";
|
||||
}
|
||||
|
||||
(
|
||||
if (osConfig.device.type == "laptop") then
|
||||
{
|
||||
applyToAllMonitors = false;
|
||||
displayMode = "onhover";
|
||||
iconColor = "none";
|
||||
id = "Brightness";
|
||||
textColor = "none";
|
||||
}
|
||||
else
|
||||
{ }
|
||||
)
|
||||
{
|
||||
displayMode = "onhover";
|
||||
iconColor = "none";
|
||||
id = "Volume";
|
||||
middleClickCommand = "pwvucontrol || pavucontrol";
|
||||
textColor = "none";
|
||||
}
|
||||
{
|
||||
id = "Brightness";
|
||||
displayMode = "onhover";
|
||||
iconColor = "none";
|
||||
id = "Microphone";
|
||||
middleClickCommand = "pwvucontrol || pavucontrol";
|
||||
textColor = "none";
|
||||
}
|
||||
{
|
||||
id = "ControlCenter";
|
||||
iconColor = "none";
|
||||
id = "WallpaperSelector";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
|
@ -229,7 +474,7 @@
|
|||
solidColor = "#1a1a2e";
|
||||
automationEnabled = true;
|
||||
wallpaperChangeMode = "random";
|
||||
randomIntervalSec = 300;
|
||||
randomIntervalSec = 900;
|
||||
transitionDuration = 1500;
|
||||
transitionType = [
|
||||
"fade"
|
||||
|
|
@ -532,59 +777,77 @@
|
|||
};
|
||||
templates = {
|
||||
activeTemplates = [
|
||||
{ id = alacritty;
|
||||
enable = true;
|
||||
{
|
||||
id = "alacritty";
|
||||
enable = true;
|
||||
}
|
||||
{ id = btop;
|
||||
enable = true;
|
||||
{
|
||||
id = "btop";
|
||||
enable = true;
|
||||
}
|
||||
{ id = cava;
|
||||
enable = true;
|
||||
{
|
||||
id = "cava";
|
||||
enable = true;
|
||||
}
|
||||
{ id = emacs;
|
||||
enable = true;
|
||||
{
|
||||
id = "emacs";
|
||||
enable = true;
|
||||
}
|
||||
{ id = gtk;
|
||||
enable = true;
|
||||
{
|
||||
id = "gtk";
|
||||
enable = true;
|
||||
}
|
||||
{ id = hyprland;
|
||||
enable = true;
|
||||
{
|
||||
id = "hyprland";
|
||||
enable = true;
|
||||
}
|
||||
{ id = hyprtoolkit;
|
||||
enable = true;
|
||||
{
|
||||
id = "hyprtoolkit";
|
||||
enable = true;
|
||||
}
|
||||
{ id = kcolorscheme;
|
||||
enable = true;
|
||||
{
|
||||
id = "kcolorscheme";
|
||||
enable = true;
|
||||
}
|
||||
{ id = kitty;
|
||||
enable = true;
|
||||
{
|
||||
id = "kitty";
|
||||
enable = true;
|
||||
}
|
||||
{ id = mango;
|
||||
enable = true;
|
||||
{
|
||||
id = "mango";
|
||||
enable = true;
|
||||
}
|
||||
{ id = niri;
|
||||
enable = true;
|
||||
{
|
||||
id = "niri";
|
||||
enable = true;
|
||||
}
|
||||
{ id = qt;
|
||||
enable = true;
|
||||
{
|
||||
id = "qt";
|
||||
enable = true;
|
||||
}
|
||||
{ id = steam;
|
||||
enable = true;
|
||||
{
|
||||
id = "steam";
|
||||
enable = true;
|
||||
}
|
||||
{ id = sway;
|
||||
enable = true;
|
||||
{
|
||||
id = "sway";
|
||||
enable = true;
|
||||
}
|
||||
{ id = code;
|
||||
enable = true;
|
||||
{
|
||||
id = "code";
|
||||
enable = true;
|
||||
}
|
||||
{ id = walker;
|
||||
enable = true;
|
||||
{
|
||||
id = "walker";
|
||||
enable = true;
|
||||
}
|
||||
{ id = zed;
|
||||
enable = true;
|
||||
{
|
||||
id = "zed";
|
||||
enable = true;
|
||||
}
|
||||
{ id = zenBrowser;
|
||||
enable = true;
|
||||
{
|
||||
id = "zenBrowser";
|
||||
enable = true;
|
||||
}
|
||||
];
|
||||
enableUserTheming = false;
|
||||
|
|
|
|||
|
|
@ -1,81 +0,0 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
type = config.device.type;
|
||||
in
|
||||
|
||||
{
|
||||
options = {
|
||||
device = {
|
||||
type = lib.mkOption {
|
||||
default = "desktop";
|
||||
description = "device preset: desktop, laptop, server";
|
||||
};
|
||||
};
|
||||
};
|
||||
config = {
|
||||
apps = {
|
||||
audio = {
|
||||
base.enable = (lib.mkIf (type == "desktop")) true;
|
||||
media.enable = true;
|
||||
editing.enable = true;
|
||||
};
|
||||
video = {
|
||||
base.enable = true;
|
||||
media.enable = true;
|
||||
editing.enable = true;
|
||||
};
|
||||
image = {
|
||||
base.enable = true;
|
||||
editing.enable = true;
|
||||
};
|
||||
gaming = {
|
||||
steam.enable = true;
|
||||
};
|
||||
terminal = {
|
||||
kitty = {
|
||||
enable = true;
|
||||
};
|
||||
default = "kitty";
|
||||
toys = true;
|
||||
};
|
||||
};
|
||||
desktop = {
|
||||
window-managers = {
|
||||
hyprland = {
|
||||
enable = true;
|
||||
};
|
||||
niri = {
|
||||
enable = true;
|
||||
};
|
||||
sway = {
|
||||
enable = false;
|
||||
};
|
||||
};
|
||||
shell = {
|
||||
noctalia = {
|
||||
enable = true;
|
||||
};
|
||||
swww = {
|
||||
enable = false;
|
||||
};
|
||||
walker = {
|
||||
enable = true;
|
||||
};
|
||||
waybar = {
|
||||
enable = false;
|
||||
};
|
||||
};
|
||||
utilities = {
|
||||
grimblast = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -17,6 +17,7 @@
|
|||
locale = "de_DE.UTF-8";
|
||||
hostname = "marty-pc";
|
||||
};
|
||||
device.type = "desktop";
|
||||
apps = {
|
||||
audio = {
|
||||
base.enable = true;
|
||||
|
|
@ -72,6 +73,7 @@
|
|||
kde-connect.enable = true;
|
||||
nextcloud.enable = true;
|
||||
syncthing = {
|
||||
enable = true;
|
||||
devices = {
|
||||
marty-pc = {
|
||||
id = "6PJZD52-EEWIO7U-MZMJJ5B-33DGNSU-O7DJVRT-GAE7QZG-ZY3VIMV-VSMBDQP";
|
||||
|
|
|
|||
|
|
@ -57,9 +57,14 @@
|
|||
);
|
||||
programs = {
|
||||
seahorse.enable = true;
|
||||
dconf.enable = true;
|
||||
};
|
||||
services = {
|
||||
gnome.gnome-keyring.enable = true;
|
||||
gnome = {
|
||||
gnome-keyring.enable = true;
|
||||
evolution-data-server.enable = true;
|
||||
gnome-online-accounts.enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,7 +58,6 @@
|
|||
if config.apps.sync.syncthing.enable then
|
||||
{
|
||||
enable = true;
|
||||
tray.enable = true;
|
||||
guiAddress = "0.0.0.0:8384";
|
||||
settings = {
|
||||
devices = config.apps.sync.syncthing.devices;
|
||||
|
|
|
|||
|
|
@ -32,7 +32,11 @@
|
|||
++ (
|
||||
if config.apps.video.editing.enable then
|
||||
|
||||
[ kdePackages.kdenlive ]
|
||||
[
|
||||
kdePackages.kdenlive
|
||||
kdePackages.qtwebsockets
|
||||
obs-studio
|
||||
]
|
||||
else
|
||||
[ ]
|
||||
)
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@
|
|||
imports = [
|
||||
./apps
|
||||
./desktop
|
||||
./device
|
||||
./server
|
||||
./system
|
||||
./user
|
||||
|
|
|
|||
|
|
@ -12,5 +12,4 @@
|
|||
noctalia.enable = lib.mkEnableOption "enable noctalia";
|
||||
};
|
||||
};
|
||||
config.services.gnome.evolution-data-server.enable = true;
|
||||
}
|
||||
|
|
|
|||
22
modules/device/default.nix
Normal file
22
modules/device/default.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
options = {
|
||||
device.type = lib.mkOption {
|
||||
default = "minimal";
|
||||
description = "device type (desktop, laptop, server, minimal) for base config";
|
||||
};
|
||||
};
|
||||
|
||||
imports = [
|
||||
./minimal.nix
|
||||
./desktop.nix
|
||||
./laptop.nix
|
||||
./server.nix
|
||||
];
|
||||
}
|
||||
10
modules/device/desktop.nix
Normal file
10
modules/device/desktop.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = { };
|
||||
}
|
||||
10
modules/device/laptop.nix
Normal file
10
modules/device/laptop.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = { };
|
||||
}
|
||||
10
modules/device/minimal.nix
Normal file
10
modules/device/minimal.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = { };
|
||||
}
|
||||
10
modules/device/server.nix
Normal file
10
modules/device/server.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
config = { };
|
||||
}
|
||||
|
|
@ -5,7 +5,7 @@
|
|||
...
|
||||
}:
|
||||
let
|
||||
domain = ${config.server.misc.lauti.subdomain}.${config.networking.domain};
|
||||
domain = "${config.server.misc.lauti.subdomain}.${config.networking.domain}";
|
||||
in
|
||||
{
|
||||
options = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue