plasma-manager and other changes
This commit is contained in:
parent
315e7eb23e
commit
1da91f0176
8 changed files with 358 additions and 46 deletions
26
flake.lock
generated
26
flake.lock
generated
|
|
@ -92,12 +92,36 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"plasma-manager": {
|
||||
"inputs": {
|
||||
"home-manager": [
|
||||
"home-manager"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1762274591,
|
||||
"narHash": "sha256-Vbhluvk15qwiyNDyPd9tjJh9gxIfUjbKVT79c05Pd3I=",
|
||||
"owner": "nix-community",
|
||||
"repo": "plasma-manager",
|
||||
"rev": "6296d7100cc84b2ff732b7c103a50c2856974cf6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "plasma-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"apple-silicon": "apple-silicon",
|
||||
"catppuccin": "catppuccin",
|
||||
"home-manager": "home-manager",
|
||||
"nixpkgs": "nixpkgs"
|
||||
"nixpkgs": "nixpkgs",
|
||||
"plasma-manager": "plasma-manager"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
|
|||
67
flake.nix
67
flake.nix
|
|
@ -14,62 +14,97 @@
|
|||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
|
||||
plasma-manager = {
|
||||
url = "github:nix-community/plasma-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.home-manager.follows = "home-manager";
|
||||
};
|
||||
|
||||
apple-silicon = {
|
||||
url = "github:nix-community/nixos-apple-silicon";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = { nixpkgs, catppuccin, home-manager, apple-silicon, ... }:
|
||||
outputs =
|
||||
{
|
||||
nixpkgs,
|
||||
catppuccin,
|
||||
home-manager,
|
||||
plasma-manager,
|
||||
apple-silicon,
|
||||
...
|
||||
}:
|
||||
let
|
||||
mkNixosSystem = { name, system, hostModule, extraModules ? [] }:
|
||||
mkNixosSystem =
|
||||
{
|
||||
hostname,
|
||||
system,
|
||||
extraModules ? [ ],
|
||||
}:
|
||||
nixpkgs.lib.nixosSystem {
|
||||
inherit system;
|
||||
specialArgs = { inherit catppuccin; };
|
||||
modules = [
|
||||
./hosts/all.nix
|
||||
hostModule
|
||||
./hosts/${hostname}.nix
|
||||
./hardware/${hostname}.nix
|
||||
catppuccin.nixosModules.catppuccin
|
||||
home-manager.nixosModules.home-manager
|
||||
] ++ extraModules;
|
||||
{
|
||||
home-manager.sharedModules = [ plasma-manager.homeModules.plasma-manager ];
|
||||
}
|
||||
]
|
||||
++ extraModules;
|
||||
};
|
||||
|
||||
mkHomeConfig = { user, system }:
|
||||
mkHomeConfig =
|
||||
{
|
||||
user,
|
||||
hostname,
|
||||
system,
|
||||
}:
|
||||
home-manager.lib.homeManagerConfiguration {
|
||||
pkgs = import nixpkgs { inherit system; };
|
||||
home.username = user;
|
||||
home.homeDirectory = "/home/${user}";
|
||||
modules = [
|
||||
./home/all.nix
|
||||
./home/${hostname}.nix
|
||||
catppuccin.homeModules.catppuccin
|
||||
home-manager.homeModules.home-manager
|
||||
plasma-manager.homeModules.plasma-manager
|
||||
];
|
||||
};
|
||||
in
|
||||
{
|
||||
nixosConfigurations = {
|
||||
peach = mkNixosSystem {
|
||||
name = "peach";
|
||||
hostname = "peach";
|
||||
system = "aarch64-linux";
|
||||
hostModule = ./hosts/peach.nix;
|
||||
extraModules = [
|
||||
./hardware/peach.nix
|
||||
apple-silicon.nixosModules.default
|
||||
{ nixpkgs.overlays = [ apple-silicon.overlays.apple-silicon-overlay ]; }
|
||||
];
|
||||
};
|
||||
|
||||
alien = mkNixosSystem {
|
||||
name = "alien";
|
||||
hostname = "alien";
|
||||
system = "x86_64-linux";
|
||||
hostModule = ./hosts/alien.nix;
|
||||
extraModules = [
|
||||
./hardware/alien.nix
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
homeConfigurations = {
|
||||
peach = mkHomeConfig { user = "sckova"; system = "aarch64-linux"; };
|
||||
alien = mkHomeConfig { user = "sckova"; system = "x86_64-linux"; };
|
||||
peach = mkHomeConfig {
|
||||
user = "sckova";
|
||||
hostname = "peach";
|
||||
system = "aarch64-linux";
|
||||
};
|
||||
alien = mkHomeConfig {
|
||||
user = "sckova";
|
||||
hostname = "alien";
|
||||
system = "x86_64-linux";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
|||
23
home/alien.nix
Normal file
23
home/alien.nix
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
catppuccin = {
|
||||
accent = "mocha";
|
||||
flavor = "blue";
|
||||
};
|
||||
|
||||
programs.plasma = {
|
||||
workspace = {
|
||||
# lookAndFeel = "Catppuccin-Mocha-Blue";
|
||||
colorScheme = "CatppuccinMochaBlue";
|
||||
cursor.theme = "catppuccin-mocha-blue-cursors";
|
||||
splashScreen.theme = "Catpppuccin-Mocha-Blue";
|
||||
};
|
||||
|
||||
configFile = {
|
||||
kdeglobals.KDE = {
|
||||
DefaultDarkLookAndFeel = "Catppuccin-Mocha-Blue";
|
||||
DefaultLightLookAndFeel = "Catppuccin-Latte-Blue";
|
||||
};
|
||||
};
|
||||
}
|
||||
125
home/all.nix
125
home/all.nix
|
|
@ -1,11 +1,6 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
# Home Manager needs a bit of information about you and the
|
||||
# paths it should manage.
|
||||
home.username = "sckova";
|
||||
home.homeDirectory = "/home/sckova";
|
||||
|
||||
home.packages = with pkgs; [
|
||||
vesktop
|
||||
fish
|
||||
|
|
@ -24,19 +19,137 @@
|
|||
fzf
|
||||
wl-clipboard
|
||||
openmw
|
||||
nixfmt-rfc-style
|
||||
|
||||
kde-rounded-corners
|
||||
kdePackages.partitionmanager
|
||||
|
||||
colloid-icon-theme
|
||||
(catppuccin-kde.override {
|
||||
flavour = [
|
||||
"latte"
|
||||
"mocha"
|
||||
];
|
||||
accents = [
|
||||
"peach"
|
||||
"blue"
|
||||
];
|
||||
})
|
||||
];
|
||||
|
||||
catppuccin = {
|
||||
enable = true;
|
||||
flavor = "mocha";
|
||||
cursors = {
|
||||
enable = true;
|
||||
accent = "dark";
|
||||
};
|
||||
firefox = {
|
||||
force = true;
|
||||
};
|
||||
};
|
||||
|
||||
programs.plasma = {
|
||||
enable = true;
|
||||
overrideConfig = true;
|
||||
|
||||
session = {
|
||||
sessionRestore.restoreOpenApplicationsOnLogin = "startWithEmptySession";
|
||||
};
|
||||
|
||||
workspace = {
|
||||
iconTheme = "Colloid-Dark";
|
||||
windowDecorations = {
|
||||
library = "org.kde.breeze";
|
||||
theme = "Breeze";
|
||||
};
|
||||
cursor.size = 24;
|
||||
};
|
||||
|
||||
configFile = {
|
||||
kwinrc.Desktops.Number = 3;
|
||||
# kdeglobals.KDE.AutomaticLookAndFeel = true;
|
||||
kwinrc.Round-Corners.ActiveOutlinePalette = 3;
|
||||
kwinrc.Round-Corners.ActiveOutlineUseCustom = false;
|
||||
kwinrc.Round-Corners.ActiveOutlineUsePalette = true;
|
||||
kwinrc.Round-Corners.ActiveSecondOutlinePalette = 3;
|
||||
kwinrc.Round-Corners.ActiveSecondOutlineUseCustom = false;
|
||||
kwinrc.Round-Corners.ActiveSecondOutlineUsePalette = true;
|
||||
kwinrc.Round-Corners.InactiveOutlinePalette = 2;
|
||||
kwinrc.Round-Corners.InactiveOutlineUseCustom = false;
|
||||
kwinrc.Round-Corners.InactiveOutlineUsePalette = true;
|
||||
kwinrc.Round-Corners.InactiveSecondOutlinePalette = 2;
|
||||
kwinrc.Round-Corners.InactiveSecondOutlineUseCustom = false;
|
||||
kwinrc.Round-Corners.InactiveSecondOutlineUsePalette = true;
|
||||
};
|
||||
|
||||
panels = [
|
||||
# Windows-like panel at the bottom
|
||||
{
|
||||
location = "bottom";
|
||||
height = 40;
|
||||
hiding = "dodgewindows";
|
||||
lengthMode = "fit";
|
||||
floating = true;
|
||||
alignment = "left";
|
||||
widgets = [
|
||||
# Or you can configure the widgets by adding the widget-specific options for it.
|
||||
# See modules/widgets for supported widgets and options for these widgets.
|
||||
# For example:
|
||||
{
|
||||
kickoff = {
|
||||
sortAlphabetically = true;
|
||||
# icon = "nix-snowflake-white";
|
||||
};
|
||||
}
|
||||
# Adding configuration to the widgets can also for example be used to
|
||||
# pin apps to the task-manager, which this example illustrates by
|
||||
# pinning dolphin and konsole to the task-manager by default with widget-specific options.
|
||||
{
|
||||
iconTasks = {
|
||||
launchers = [
|
||||
"applications:firefox.desktop"
|
||||
"applications:org.kde.dolphin.desktop"
|
||||
"applications:org.kde.konsole.desktop"
|
||||
];
|
||||
};
|
||||
}
|
||||
# If no configuration is needed, specifying only the name of the
|
||||
# widget will add them with the default configuration.
|
||||
"org.kde.plasma.activitypager"
|
||||
"org.kde.plasma.marginsseparator"
|
||||
# If you need configuration for your widget, instead of specifying the
|
||||
# the keys and values directly using the config attribute as shown
|
||||
# above, plasma-manager also provides some higher-level interfaces for
|
||||
# configuring the widgets. See modules/widgets for supported widgets
|
||||
# and options for these widgets. The widgets below shows two examples
|
||||
# of usage, one where we add a digital clock, setting 12h time and
|
||||
# first day of the week to Sunday and another adding a systray with
|
||||
# some modifications in which entries to show.
|
||||
{
|
||||
systemTray.items = {
|
||||
# We explicitly show bluetooth and battery
|
||||
shown = [
|
||||
"org.kde.plasma.battery"
|
||||
"org.kde.plasma.bluetooth"
|
||||
];
|
||||
# And explicitly hide networkmanagement and volume
|
||||
hidden = [
|
||||
"org.kde.plasma.networkmanagement"
|
||||
"org.kde.plasma.volume"
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
digitalClock = {
|
||||
calendar.firstDayOfWeek = "sunday";
|
||||
time.format = "12h";
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
# This value determines the Home Manager release that your
|
||||
# configuration is compatible with. This helps avoid breakage
|
||||
# when a new Home Manager release introduces backwards
|
||||
|
|
|
|||
98
home/peach.nix
Normal file
98
home/peach.nix
Normal file
|
|
@ -0,0 +1,98 @@
|
|||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
catppuccin = {
|
||||
accent = "peach";
|
||||
flavor = "mocha";
|
||||
};
|
||||
|
||||
programs.plasma = {
|
||||
workspace = {
|
||||
# lookAndFeel = "Catppuccin-Mocha-Peach";
|
||||
colorScheme = "CatppuccinMochaPeach";
|
||||
cursor.theme = "catppuccin-mocha-peach-cursors";
|
||||
splashScreen.theme = "Catpppuccin-Mocha-Peach";
|
||||
};
|
||||
|
||||
configFile = {
|
||||
kdeglobals.KDE = {
|
||||
DefaultDarkLookAndFeel = "Catppuccin-Mocha-Peach";
|
||||
DefaultLightLookAndFeel = "Catppuccin-Latte-Peach";
|
||||
};
|
||||
};
|
||||
|
||||
panels = [
|
||||
# Application name, Global menu and Song information and playback controls at the top
|
||||
{
|
||||
location = "top";
|
||||
height = 37;
|
||||
widgets = [
|
||||
{
|
||||
applicationTitleBar = {
|
||||
behavior = {
|
||||
activeTaskSource = "activeTask";
|
||||
};
|
||||
layout = {
|
||||
elements = [ "windowTitle" ];
|
||||
horizontalAlignment = "left";
|
||||
showDisabledElements = "deactivated";
|
||||
verticalAlignment = "center";
|
||||
};
|
||||
overrideForMaximized.enable = false;
|
||||
titleReplacements = [
|
||||
{
|
||||
type = "regexp";
|
||||
originalTitle = "^Brave Web Browser$";
|
||||
newTitle = "Brave";
|
||||
}
|
||||
{
|
||||
type = "regexp";
|
||||
originalTitle = ''\\bDolphin\\b'';
|
||||
newTitle = "File manager";
|
||||
}
|
||||
];
|
||||
windowTitle = {
|
||||
font = {
|
||||
bold = false;
|
||||
fit = "fixedSize";
|
||||
size = 12;
|
||||
};
|
||||
hideEmptyTitle = true;
|
||||
margins = {
|
||||
bottom = 0;
|
||||
left = 10;
|
||||
right = 5;
|
||||
top = 0;
|
||||
};
|
||||
source = "appName";
|
||||
};
|
||||
};
|
||||
}
|
||||
"org.kde.plasma.appmenu"
|
||||
"org.kde.plasma.panelspacer"
|
||||
{
|
||||
plasmusicToolbar = {
|
||||
panelIcon = {
|
||||
albumCover = {
|
||||
useAsIcon = false;
|
||||
radius = 8;
|
||||
};
|
||||
icon = "view-media-track";
|
||||
};
|
||||
playbackSource = "auto";
|
||||
musicControls.showPlaybackControls = true;
|
||||
songText = {
|
||||
displayInSeparateLines = true;
|
||||
maximumWidth = 640;
|
||||
scrolling = {
|
||||
behavior = "alwaysScroll";
|
||||
speed = 3;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
@ -1,15 +1,14 @@
|
|||
{ config, pkgs, lib, catppuccin, ... }: {
|
||||
networking.hostName = "alien";
|
||||
|
||||
catppuccin = {
|
||||
accent = "lavender";
|
||||
};
|
||||
catppuccin.accent = "blue";
|
||||
|
||||
home-manager.users.sckova = {
|
||||
imports = [ catppuccin.homeModules.catppuccin ];
|
||||
};
|
||||
|
||||
boot.kernelPackages = pkgs.linuxPackages;
|
||||
boot.loader.systemd-boot.consoleMode = "max";
|
||||
|
||||
programs = {
|
||||
gamescope = {
|
||||
|
|
@ -32,8 +31,8 @@
|
|||
modesetting.enable = true;
|
||||
powerManagement.enable = false;
|
||||
nvidiaSettings = false;
|
||||
open = true;
|
||||
# package = pkgs.linuxPackages.nvidiaPackages.stable;
|
||||
open = false;
|
||||
package = pkgs.linuxPackages.nvidiaPackages.stable;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,20 +2,34 @@
|
|||
# your system. Help is available in the configuration.nix(5) man page
|
||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||
|
||||
{ config, lib, pkgs, ... }:
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
nix.settings.experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
|
||||
home-manager.useGlobalPkgs = true;
|
||||
home-manager.useUserPackages = true;
|
||||
home-manager.users.sckova = {
|
||||
imports = [
|
||||
../home/all.nix
|
||||
../home/${config.networking.hostName}.nix
|
||||
];
|
||||
};
|
||||
|
||||
boot = {
|
||||
|
||||
plymouth = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
loader = {
|
||||
timeout = 3;
|
||||
systemd-boot = {
|
||||
|
|
@ -40,6 +54,11 @@
|
|||
initrd.verbose = false;
|
||||
};
|
||||
|
||||
catppuccin = {
|
||||
enable = true;
|
||||
flavor = "mocha";
|
||||
};
|
||||
|
||||
networking.networkmanager.enable = true;
|
||||
time.timeZone = "America/New_York";
|
||||
i18n.defaultLocale = "en_US.UTF-8";
|
||||
|
|
@ -86,10 +105,14 @@
|
|||
users.users.sckova = {
|
||||
isNormalUser = true;
|
||||
description = "Sean Kovacs";
|
||||
extraGroups = [ "networkmanager" "wheel" ];
|
||||
packages = with pkgs; [];
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
];
|
||||
packages = with pkgs; [ ];
|
||||
hashedPassword = "$6$bvwRUFaJNMpH8rm3$FGDWFN6tBScJ/2DynAjnlZE8JRfyADN78d6c4GawxpAjyNLNE/AjQzMA09tLRqpKX7WnN5PIUZLAm2bT9/RbG0";
|
||||
};
|
||||
|
||||
security.sudo.wheelNeedsPassword = false;
|
||||
|
||||
programs.bash = {
|
||||
|
|
@ -142,4 +165,3 @@
|
|||
system.stateVersion = "25.05"; # Did you read the comment?
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1,7 @@
|
|||
{ config, pkgs, lib, catppuccin, ... }: {
|
||||
networking.hostName = "peach";
|
||||
|
||||
catppuccin = {
|
||||
accent = "peach";
|
||||
};
|
||||
catppuccin.accent = "peach";
|
||||
|
||||
home-manager.users.sckova = {
|
||||
imports = [ catppuccin.homeModules.catppuccin ];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue