noctalia configuration and basic niri setup
This commit is contained in:
23
flake.lock
generated
23
flake.lock
generated
@@ -311,6 +311,26 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"noctalia": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1766538131,
|
||||
"narHash": "sha256-CAGs0LA27JL9EBLfH1sDb2ljs2hC2KBFCU9CnJfTmR0=",
|
||||
"owner": "noctalia-dev",
|
||||
"repo": "noctalia-shell",
|
||||
"rev": "6ff3debf15aef7c43be7cb43938f78c25d40b3d5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "noctalia-dev",
|
||||
"repo": "noctalia-shell",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit": {
|
||||
"inputs": {
|
||||
"flake-compat": "flake-compat",
|
||||
@@ -345,7 +365,8 @@
|
||||
"microvm": "microvm",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixpkgs-unstable": "nixpkgs-unstable"
|
||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||
"noctalia": "noctalia"
|
||||
}
|
||||
},
|
||||
"rust-overlay": {
|
||||
|
||||
@@ -46,6 +46,11 @@
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
noctalia = {
|
||||
url = "github:noctalia-dev/noctalia-shell";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
outputs = {
|
||||
|
||||
@@ -64,6 +64,7 @@
|
||||
vimiv-qt
|
||||
freecad
|
||||
discord
|
||||
vesktop
|
||||
element-desktop
|
||||
|
||||
# Fileanagement
|
||||
@@ -81,7 +82,6 @@
|
||||
gimp
|
||||
|
||||
# Flatpak
|
||||
prusa-slicer
|
||||
#vscodium
|
||||
(vscode-with-extensions.override {
|
||||
vscode = vscodium;
|
||||
@@ -90,8 +90,8 @@
|
||||
github.copilot
|
||||
#ms-python.python
|
||||
ms-vscode.cpptools
|
||||
dracula-theme.theme-dracula
|
||||
|
||||
catppuccin.catppuccin-vsc-icons
|
||||
catppuccin.catppuccin-vsc
|
||||
];
|
||||
})
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
# └─ default.nix
|
||||
#
|
||||
|
||||
{ lib, config, pkgs, user, ... }:
|
||||
{ inputs, lib, config, pkgs, user, ... }:
|
||||
|
||||
{
|
||||
imports = # For now, if applying to other system, swap files
|
||||
|
||||
@@ -11,15 +11,15 @@
|
||||
# └─ hyprland.nix *
|
||||
#
|
||||
|
||||
{ config, lib, user, pkgs, desktop, ... }:
|
||||
{ config, inputs, lib, user, pkgs, desktop, ... }:
|
||||
|
||||
{
|
||||
imports = [ ../waybar.nix ];
|
||||
imports = [ ../noctalia.nix ];
|
||||
|
||||
environment = {
|
||||
systemPackages = with pkgs; [
|
||||
xdg-desktop-portal-gnome
|
||||
dinit
|
||||
xdg-desktop-portal-gtk
|
||||
swaylock
|
||||
swayidle
|
||||
slurp
|
||||
@@ -29,15 +29,12 @@
|
||||
glib
|
||||
brightnessctl
|
||||
playerctl
|
||||
xwayland-satellite
|
||||
];
|
||||
};
|
||||
services = {
|
||||
iio-niri = {
|
||||
enable = true;
|
||||
extraArgs = [
|
||||
"--monitor"
|
||||
"eDP-1"
|
||||
];
|
||||
};
|
||||
greetd = {
|
||||
enable = true;
|
||||
|
||||
177
modules/wm/noctalia.nix
Normal file
177
modules/wm/noctalia.nix
Normal file
@@ -0,0 +1,177 @@
|
||||
#
|
||||
# Bar
|
||||
#
|
||||
|
||||
{ config, pkgs, inputs, user, ...}:
|
||||
|
||||
{
|
||||
|
||||
# install package
|
||||
environment.systemPackages = with pkgs; [
|
||||
# ... maybe other stuff
|
||||
];
|
||||
|
||||
services.tuned.enable = true;
|
||||
services.upower.enable = true;
|
||||
|
||||
home-manager.users.${user} = { # Home-manager waybar config
|
||||
# import the home manager module
|
||||
imports = [
|
||||
inputs.noctalia.homeModules.default
|
||||
];
|
||||
|
||||
programs.fuzzel = {
|
||||
enable = true; # Super+D in the default setting (app launcher)
|
||||
};
|
||||
services.mako.enable = true; # notification daemon
|
||||
services.polkit-gnome.enable = true; # polkit
|
||||
|
||||
# configure options
|
||||
programs.noctalia-shell = {
|
||||
enable = true;
|
||||
|
||||
# enable the systemd service
|
||||
systemd.enable = true;
|
||||
settings = {
|
||||
# configure noctalia here
|
||||
appLauncher = {
|
||||
terminalCommand = "{pkgs.alacritty}/bin/alacritty -e";
|
||||
};
|
||||
|
||||
bar = {
|
||||
density = "compact";
|
||||
position = "top";
|
||||
showCapsule = false;
|
||||
widgets = {
|
||||
left = [
|
||||
{
|
||||
id = "ControlCenter";
|
||||
useDistroLogo = true;
|
||||
}
|
||||
{
|
||||
hideUnoccupied = false;
|
||||
id = "Workspace";
|
||||
labelMode = "none";
|
||||
}
|
||||
{
|
||||
id = "ActiveWindow";
|
||||
}
|
||||
];
|
||||
center = [
|
||||
{
|
||||
formatHorizontal = "HH:mm";
|
||||
formatVertical = "HH mm";
|
||||
id = "Clock";
|
||||
useMonospacedFont = true;
|
||||
usePrimaryColor = true;
|
||||
}
|
||||
];
|
||||
right = [
|
||||
{
|
||||
id = "MediaMini";
|
||||
}
|
||||
{
|
||||
id = "SystemMonitor";
|
||||
showNetworkStats = true;
|
||||
}
|
||||
{
|
||||
id = "WiFi";
|
||||
}
|
||||
{
|
||||
id = "Bluetooth";
|
||||
}
|
||||
{
|
||||
id = "Battery";
|
||||
warningThreshold = 20;
|
||||
displayMode = "alwaysShow";
|
||||
}
|
||||
{
|
||||
id = "Volume";
|
||||
displayMode = "alwaysShow";
|
||||
}
|
||||
{
|
||||
id = "NotificationHistory";
|
||||
hideWhenZero = true;
|
||||
}
|
||||
{
|
||||
id = "Tray";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
colorSchemes.predefinedScheme = "Catppuccin";
|
||||
|
||||
general = {
|
||||
avatarImage = "/home/kabbone/.face";
|
||||
radiusRatio = 0.2;
|
||||
lockOnSusepnd = true;
|
||||
};
|
||||
|
||||
location = {
|
||||
monthBeforeDay = true;
|
||||
name = "Munich, Germany";
|
||||
showWeekNumberInCalendar = true;
|
||||
firstDayOfWeek = 0;
|
||||
};
|
||||
|
||||
wallpaper = {
|
||||
enabled = true;
|
||||
overviewEnabled = false;
|
||||
directory = "/home/${user}/.setup/modules/themes/";
|
||||
};
|
||||
|
||||
brightness = {
|
||||
enforceMinimum = true;
|
||||
brightnessStep = 5;
|
||||
};
|
||||
|
||||
controlCenter = {
|
||||
shortcuts = {
|
||||
left = [
|
||||
{
|
||||
id = "WiFi";
|
||||
}
|
||||
{
|
||||
id = "Bluetooth";
|
||||
}
|
||||
{
|
||||
id = "ScreenRecorder";
|
||||
}
|
||||
{
|
||||
id = "PowerProfile";
|
||||
}
|
||||
{
|
||||
id = "KeepAwake";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
dock = {
|
||||
enabled = false;
|
||||
};
|
||||
|
||||
templates = {
|
||||
fuzzel = true;
|
||||
alacritty = true;
|
||||
qt = true;
|
||||
gtk = true;
|
||||
discord = true;
|
||||
code = true;
|
||||
telegram = true;
|
||||
niri = true;
|
||||
firefox = true;
|
||||
};
|
||||
};
|
||||
# this may also be a string or a path to a JSON file,
|
||||
# but in this case must include *all* settings.
|
||||
};
|
||||
|
||||
home.file.".cache/noctalia/wallpapers.json" = {
|
||||
text = builtins.toJSON {
|
||||
defaultWallpaper = "/home/${user}/.setup/modules/themes/wall.jpg";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user