📦 Created config files with common code
- Created common.nix for various configs - Created theme.nix for theme related configs - Moved some code to more logical files - Moved some standalone files into nix multiline strings, in order to inject data
This commit is contained in:
parent
e223999ae1
commit
1133e01eff
23
common.nix
Normal file
23
common.nix
Normal file
@ -0,0 +1,23 @@
|
||||
rec {
|
||||
keymaps = {
|
||||
layout = "gb,no";
|
||||
options = "grp:alt_shift_toggle"; # Toggle using ALT + SHIFT
|
||||
};
|
||||
|
||||
username = "martin";
|
||||
hostname = "nixos";
|
||||
|
||||
dir = {
|
||||
home = "/home/${username}";
|
||||
pictures = "${dir.home}/Pictures";
|
||||
};
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.version = "24.11";
|
||||
terminal = "kitty";
|
||||
}
|
@ -1,26 +1,26 @@
|
||||
# Edit this configuration file to define what should be installed on
|
||||
# your system. Help is available in the configuration.nix(5) man page
|
||||
# and in the NixOS manual (accessible by running ‘nixos-help’).
|
||||
|
||||
{
|
||||
pkgs,
|
||||
outputs,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
common = import ./common.nix;
|
||||
in
|
||||
{
|
||||
imports = [ ./modules ];
|
||||
|
||||
nixpkgs.overlays = [ outputs.overlays.unstable-packages ];
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
boot.loader = {
|
||||
systemd-boot.enable = true;
|
||||
efi.canTouchEfiVariables = true;
|
||||
};
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users.martin = {
|
||||
users.users.${common.username} = {
|
||||
isNormalUser = true;
|
||||
description = "martin";
|
||||
description = common.username;
|
||||
extraGroups = [
|
||||
"networkmanager"
|
||||
"wheel"
|
||||
@ -42,9 +42,6 @@
|
||||
xdg-utils
|
||||
xdg-desktop-portal
|
||||
xdg-desktop-portal-gtk
|
||||
kdePackages.qtwayland
|
||||
kdePackages.qtsvg
|
||||
kdePackages.qt6ct
|
||||
protonmail-desktop
|
||||
stremio
|
||||
fastfetch
|
||||
@ -63,31 +60,12 @@
|
||||
"flakes"
|
||||
];
|
||||
|
||||
# Some programs need SUID wrappers, can be configured further or are
|
||||
# started in user sessions.
|
||||
# programs.mtr.enable = true;
|
||||
|
||||
programs = {
|
||||
kdeconnect.enable = true;
|
||||
};
|
||||
|
||||
# List services that you want to enable:
|
||||
|
||||
# Enable the OpenSSH daemon.
|
||||
# services.openssh.enable = true;
|
||||
programs.kdeconnect.enable = true;
|
||||
|
||||
services = {
|
||||
flatpak.enable = true;
|
||||
xserver.enable = true;
|
||||
};
|
||||
|
||||
qt.enable = true;
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "24.11"; # Did you read the comment?
|
||||
system.stateVersion = common.system.version;
|
||||
}
|
||||
|
@ -4,7 +4,8 @@
|
||||
...
|
||||
}:
|
||||
let
|
||||
username = "martin";
|
||||
common = import ../common.nix;
|
||||
username = common.username;
|
||||
homeDir = "/home/${username}";
|
||||
in
|
||||
{
|
||||
@ -31,7 +32,7 @@ in
|
||||
# You can update Home Manager without changing this value. See
|
||||
# the Home Manager release notes for a list of state version
|
||||
# changes in each release.
|
||||
stateVersion = "24.11";
|
||||
stateVersion = common.system.version;
|
||||
};
|
||||
|
||||
programs = {
|
||||
|
@ -16,11 +16,6 @@
|
||||
"$mainMod, L, exec, hyprlock"
|
||||
"$mainMod, K, exec, [float] gnome-calculator"
|
||||
|
||||
# Screenshots
|
||||
"$mainMod, PRINT, exec, hyprshot -m window" # Window
|
||||
", PRINT, exec, hyprshot -m output" # Monitor
|
||||
"$shiftMod, PRINT, exec, hyprshot -m region" # Region
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
"$mainMod, left, movefocus, l"
|
||||
"$mainMod, right, movefocus, r"
|
||||
|
@ -6,6 +6,7 @@
|
||||
./waybar
|
||||
./hypridle
|
||||
./hyprlock
|
||||
./hyprshot.nix
|
||||
./settings.nix
|
||||
./swaync
|
||||
];
|
||||
|
@ -1,5 +1,9 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
cursorSize = 24;
|
||||
cursorTheme = "rose-pine-hyprcursor";
|
||||
cursorDir = "hyprcursors";
|
||||
in
|
||||
{
|
||||
home = {
|
||||
packages = with pkgs; [
|
||||
@ -7,12 +11,23 @@
|
||||
];
|
||||
|
||||
file = {
|
||||
".local/share/icons/rose-pine-hyprcursor/manifest.hl".source = ./manifest.hl;
|
||||
".local/share/icons/rose-pine-hyprcursor/hyprcursors" = {
|
||||
source = ./hyprcursors;
|
||||
".local/share/icons/${cursorTheme}/manifest.hl".text = ''
|
||||
name = ${cursorTheme}
|
||||
description = BreezeX remixed with Rose Pine remixed to Hyprcursor format
|
||||
version = 0.3.2
|
||||
cursors_directory = ${cursorDir}
|
||||
'';
|
||||
".local/share/icons/${cursorTheme}/${cursorDir}" = {
|
||||
source = ./${cursorDir};
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
|
||||
sessionVariables = {
|
||||
XCURSOR_SIZE = cursorSize;
|
||||
HYPRCURSOR_SIZE = cursorSize;
|
||||
HYPRCURSOR_THEME = cursorSize;
|
||||
};
|
||||
};
|
||||
|
||||
wayland.windowManager.hyprland.settings.exec-once = [
|
||||
|
@ -1,4 +0,0 @@
|
||||
name = rose-pine-hyprcursor
|
||||
description = BreezeX remixed with Rose Pine remixed to Hyprcursor format
|
||||
version = 0.3.2
|
||||
cursors_directory = hyprcursors
|
@ -1,4 +1,3 @@
|
||||
{ ... }:
|
||||
let
|
||||
# Time in seconds
|
||||
lockAfter = 1200;
|
||||
|
@ -1,20 +1,12 @@
|
||||
{ lib, ... }:
|
||||
|
||||
let
|
||||
theme = import ../../../theme.nix;
|
||||
in
|
||||
{
|
||||
programs.hyprlock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
"$base" = "rgb(1e1e2e)";
|
||||
"$text" = "rgb(cdd6f4)";
|
||||
"$textAlpha" = "cdd6f4";
|
||||
"$mauve" = "rgb(cba6f7)";
|
||||
"$mauveAlpha" = "cba6f7";
|
||||
"$red" = "rgb(f38ba8)";
|
||||
"$yellow" = "rgb(f9e2af)";
|
||||
"$accent" = "$mauve";
|
||||
"$accentAlpha" = "$mauveAlpha";
|
||||
"$surface0" = "rgb(313244)";
|
||||
"$font" = "JetBrainsMono Nerd Font";
|
||||
"$font" = "${theme.nerdFont} Nerd Font";
|
||||
|
||||
# GENERAL
|
||||
general = {
|
||||
@ -26,29 +18,27 @@
|
||||
label = [
|
||||
{
|
||||
text = "$LAYOUT";
|
||||
color = "$text";
|
||||
color = "${theme.textRgb}";
|
||||
font_size = 25;
|
||||
font_family = "$font";
|
||||
position = "30, -30";
|
||||
halign = "left";
|
||||
valign = "top";
|
||||
}
|
||||
|
||||
# TIME
|
||||
{
|
||||
text = "$TIME";
|
||||
color = "$text";
|
||||
color = "${theme.textRgb}";
|
||||
font_size = 90;
|
||||
font_family = "$font";
|
||||
position = "-30, 0";
|
||||
halign = "right";
|
||||
valign = "top";
|
||||
}
|
||||
|
||||
# DATE
|
||||
{
|
||||
text = "cmd[update:43200000] date +\"%A, %d %B %Y\"";
|
||||
color = "$text";
|
||||
color = "${theme.textRgb}";
|
||||
font_size = 25;
|
||||
font_family = "$font";
|
||||
position = "-30, -150";
|
||||
@ -56,7 +46,6 @@
|
||||
valign = "top";
|
||||
}
|
||||
];
|
||||
|
||||
# INPUT FIELD
|
||||
input-field = {
|
||||
size = "300, 60";
|
||||
@ -64,17 +53,17 @@
|
||||
dots_size = 0.2;
|
||||
dots_spacing = 0.2;
|
||||
dots_center = true;
|
||||
outer_color = lib.mkDefault "$accent";
|
||||
inner_color = lib.mkDefault "$surface0";
|
||||
font_color = lib.mkDefault "$text";
|
||||
outer_color = lib.mkDefault "${theme.mauve}";
|
||||
inner_color = lib.mkDefault "${theme.surface0Rgb}";
|
||||
font_color = lib.mkDefault "${theme.textRgb}";
|
||||
fade_on_empty = false;
|
||||
placeholder_text = "<span foreground=\"##$textAlpha\"><i> Logged in as </i><span foreground=\"##$accentAlpha\">$USER</span></span>";
|
||||
placeholder_text = "<span foreground=\"##${theme.textAlpha}\"><i> Logged in as </i><span foreground=\"##${theme.mauveAlpha}\">$USER</span></span>";
|
||||
hide_input = false;
|
||||
check_color = lib.mkDefault "$accent";
|
||||
fail_color = lib.mkDefault "$red";
|
||||
check_color = lib.mkDefault "${theme.mauve}";
|
||||
fail_color = lib.mkDefault "${theme.redRgb}";
|
||||
fail_text = "<i>$FAIL <b>($ATTEMPTS)</b></i>";
|
||||
capslock_color = lib.mkDefault "$yellow";
|
||||
position = "0, -20%";
|
||||
capslock_color = lib.mkDefault "${theme.yellowRgb}";
|
||||
position = "0, -200"; # TODO change -200 to -20% at 25.05
|
||||
halign = "center";
|
||||
valign = "center";
|
||||
};
|
||||
|
19
home-manager/hyprland/hyprshot.nix
Normal file
19
home-manager/hyprland/hyprshot.nix
Normal file
@ -0,0 +1,19 @@
|
||||
let
|
||||
common = import ../../common.nix;
|
||||
in
|
||||
{
|
||||
home.sessionVariables = {
|
||||
HYPRSHOT_DIR = "${common.dir.pictures}/screenshots"; # Store screenshots here
|
||||
};
|
||||
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
"$mainMod" = "SUPER";
|
||||
"$shiftMod" = "$mainMod SHIFT";
|
||||
|
||||
bind = [
|
||||
"$mainMod, PRINT, exec, hyprshot -m window" # Window
|
||||
", PRINT, exec, hyprshot -m output" # Monitor
|
||||
"$shiftMod, PRINT, exec, hyprshot -m region" # Region
|
||||
];
|
||||
};
|
||||
}
|
@ -1,5 +1,8 @@
|
||||
{ lib, ... }:
|
||||
|
||||
let
|
||||
common = import ../../common.nix;
|
||||
theme = import ../../theme.nix;
|
||||
in
|
||||
{
|
||||
wayland.windowManager.hyprland.settings = {
|
||||
monitor = [
|
||||
@ -25,98 +28,15 @@
|
||||
];
|
||||
|
||||
env = [
|
||||
"XCURSOR_SIZE,24"
|
||||
"HYPRCURSOR_SIZE,24"
|
||||
"HYPRCURSOR_THEME,rose-pine-hyprcursor"
|
||||
"ELECTRON_OZONE_PLATFORM_HINT,auto"
|
||||
"HYPRSHOT_DIR,$HOME/Pictures/screenshots" # Store screenshots here
|
||||
];
|
||||
|
||||
# TODO move to common file
|
||||
"$rosewater" = "rgb(f5e0dc)";
|
||||
"$rosewaterAlpha" = "f5e0dc";
|
||||
|
||||
"$flamingo" = "rgb(f2cdcd)";
|
||||
"$flamingoAlpha" = "f2cdcd";
|
||||
|
||||
"$pink" = "rgb(f5c2e7)";
|
||||
"$pinkAlpha" = "f5c2e7";
|
||||
|
||||
"$mauve" = "rgb(cba6f7)";
|
||||
"$mauveAlpha" = "cba6f7";
|
||||
|
||||
"$red" = "rgb(f38ba8)";
|
||||
"$redAlpha" = "f38ba8";
|
||||
|
||||
"$maroon" = "rgb(eba0ac)";
|
||||
"$maroonAlpha" = "eba0ac";
|
||||
|
||||
"$peach" = "rgb(fab387)";
|
||||
"$peachAlpha" = "fab387";
|
||||
|
||||
"$yellow" = "rgb(f9e2af)";
|
||||
"$yellowAlpha" = "f9e2af";
|
||||
|
||||
"$green" = "rgb(a6e3a1)";
|
||||
"$greenAlpha" = "a6e3a1";
|
||||
|
||||
"$teal" = "rgb(94e2d5)";
|
||||
"$tealAlpha" = "94e2d5";
|
||||
|
||||
"$sky" = "rgb(89dceb)";
|
||||
"$skyAlpha" = "89dceb";
|
||||
|
||||
"$sapphire" = "rgb(74c7ec)";
|
||||
"$sapphireAlpha" = "74c7ec";
|
||||
|
||||
"$blue" = "rgb(89b4fa)";
|
||||
"$blueAlpha" = "89b4fa";
|
||||
|
||||
"$lavender" = "rgb(b4befe)";
|
||||
"$lavenderAlpha" = "b4befe";
|
||||
|
||||
"$text" = "rgb(cdd6f4)";
|
||||
"$textAlpha" = "cdd6f4";
|
||||
|
||||
"$subtext1" = "rgb(bac2de)";
|
||||
"$subtext1Alpha" = "bac2de";
|
||||
|
||||
"$subtext0" = "rgb(a6adc8)";
|
||||
"$subtext0Alpha" = "a6adc8";
|
||||
|
||||
"$overlay2" = "rgb(9399b2)";
|
||||
"$overlay2Alpha" = "9399b2";
|
||||
|
||||
"$overlay1" = "rgb(7f849c)";
|
||||
"$overlay1Alpha" = "7f849c";
|
||||
|
||||
"$overlay0" = "rgb(6c7086)";
|
||||
"$overlay0Alpha" = "6c7086";
|
||||
|
||||
"$surface2" = "rgb(585b70)";
|
||||
"$surface2Alpha" = "585b70";
|
||||
|
||||
"$surface1" = "rgb(45475a)";
|
||||
"$surface1Alpha" = "45475a";
|
||||
|
||||
"$surface0" = "rgb(313244)";
|
||||
"$surface0Alpha" = "313244";
|
||||
|
||||
"$base" = "rgb(1e1e2e)";
|
||||
"$baseAlpha" = "1e1e2e";
|
||||
|
||||
"$mantle" = "rgb(181825)";
|
||||
"$mantleAlpha" = "181825";
|
||||
|
||||
"$crust" = "rgb(11111b)";
|
||||
"$crustAlpha" = "11111b";
|
||||
|
||||
general = {
|
||||
gaps_in = 5;
|
||||
gaps_out = 20;
|
||||
border_size = 2;
|
||||
"col.active_border" = lib.mkDefault "$mauve $teal 45deg";
|
||||
"col.inactive_border" = lib.mkDefault "rgba(595959aa)";
|
||||
"col.active_border" = lib.mkDefault "${theme.mauveRgb} ${theme.tealRgb} 45deg";
|
||||
"col.inactive_border" = lib.mkDefault "rgba(${theme.surface2Alpha}aa)";
|
||||
resize_on_border = true;
|
||||
allow_tearing = false;
|
||||
layout = "dwindle";
|
||||
@ -133,7 +53,7 @@
|
||||
enabled = true;
|
||||
range = 4;
|
||||
render_power = 3;
|
||||
color = lib.mkDefault "$base";
|
||||
color = lib.mkDefault theme.baseRgb;
|
||||
};
|
||||
|
||||
blur = {
|
||||
@ -192,10 +112,9 @@
|
||||
|
||||
debug.disable_logs = false;
|
||||
|
||||
# TODO fetch values from common file. Must match configs in nixos!
|
||||
input = {
|
||||
kb_layout = "gb,no";
|
||||
kb_options = "grp:alt_shift_toggle";
|
||||
kb_layout = common.keymaps.layout;
|
||||
kb_options = common.keymaps.options;
|
||||
follow_mouse = 1;
|
||||
sensitivity = 0; # -1.0 - 1.0, 0 means no modification.
|
||||
touchpad.natural_scroll = false;
|
||||
|
@ -1,8 +1,464 @@
|
||||
{ pkgs, lib, ... }:
|
||||
|
||||
{ lib, ... }:
|
||||
let
|
||||
theme = import ../../../theme.nix;
|
||||
in
|
||||
{
|
||||
# TODO inject font
|
||||
services.swaync = {
|
||||
enable = true;
|
||||
style = lib.mkDefault ./mocha.css;
|
||||
style = lib.mkDefault ''
|
||||
* {
|
||||
all: unset;
|
||||
font-size: 14px;
|
||||
font-family: "JetBrains Mono", monospace;
|
||||
transition: 200ms;
|
||||
}
|
||||
|
||||
trough highlight {
|
||||
background: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
scale trough {
|
||||
margin: 0 1rem;
|
||||
background-color: #${theme.surface0Alpha};
|
||||
min-height: 8px;
|
||||
min-width: 70px;
|
||||
}
|
||||
|
||||
slider {
|
||||
background-color: #${theme.blueAlpha};
|
||||
}
|
||||
|
||||
.floating-notifications.background .notification-row .notification-background {
|
||||
box-shadow:
|
||||
0 0 8px 0 rgba(0, 0, 0, 0.8),
|
||||
inset 0 0 0 1px #${theme.surface0Alpha};
|
||||
border-radius: 12.6px;
|
||||
margin: 18px;
|
||||
background-color: #${theme.baseAlpha};
|
||||
color: #${theme.textAlpha};
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification {
|
||||
padding: 7px;
|
||||
border-radius: 12.6px;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification.critical {
|
||||
box-shadow: inset 0 0 7px 0 #${theme.redAlpha};
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content {
|
||||
margin: 7px;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.summary {
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.time {
|
||||
color: #${theme.subtext0Alpha};
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.body {
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> * {
|
||||
min-height: 3.4em;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action {
|
||||
border-radius: 7px;
|
||||
color: #${theme.textAlpha};
|
||||
background-color: #${theme.surface0Alpha};
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
margin: 7px;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:hover {
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
background-color: #${theme.surface0Alpha};
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:active {
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
background-color: #${theme.sapphireAlpha};
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
/* Close Button */
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button {
|
||||
margin: 7px;
|
||||
padding: 2px;
|
||||
border-radius: 6.3px;
|
||||
color: #${theme.baseAlpha};
|
||||
background-color: #${theme.redAlpha};
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button:hover {
|
||||
background-color: #${theme.maroonAlpha};
|
||||
color: #${theme.baseAlpha};
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button:active {
|
||||
background-color: #${theme.redAlpha};
|
||||
color: #${theme.baseAlpha};
|
||||
}
|
||||
|
||||
.control-center {
|
||||
box-shadow:
|
||||
0 0 8px 0 rgba(0, 0, 0, 0.8),
|
||||
inset 0 0 0 1px #${theme.surface0Alpha};
|
||||
border-radius: 12.6px;
|
||||
margin: 18px;
|
||||
background-color: #${theme.baseAlpha};
|
||||
color: #${theme.textAlpha};
|
||||
padding: 14px;
|
||||
}
|
||||
|
||||
.control-center .widget-title > label {
|
||||
color: #${theme.textAlpha};
|
||||
font-size: 1.3em;
|
||||
}
|
||||
|
||||
.control-center .widget-title button {
|
||||
border-radius: 7px;
|
||||
color: #${theme.textAlpha};
|
||||
background-color: #${theme.surface0Alpha};
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
.control-center .widget-title button:hover {
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
background-color: #585b70;
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
.control-center .widget-title button:active {
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
background-color: #${theme.sapphireAlpha};
|
||||
color: #${theme.baseAlpha};
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background {
|
||||
border-radius: 7px;
|
||||
color: #${theme.textAlpha};
|
||||
background-color: #${theme.surface0Alpha};
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
margin-top: 14px;
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background .notification {
|
||||
padding: 7px;
|
||||
border-radius: 7px;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification.critical {
|
||||
box-shadow: inset 0 0 7px 0 #${theme.redAlpha};
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content {
|
||||
margin: 7px;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.summary {
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.time {
|
||||
color: #a6adc8;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.body {
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> * {
|
||||
min-height: 3.4em;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action {
|
||||
border-radius: 7px;
|
||||
color: #${theme.textAlpha};
|
||||
background-color: #${theme.crustAlpha};
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
margin: 7px;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:hover {
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
background-color: #${theme.surface0Alpha};
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:active {
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
background-color: #${theme.sapphireAlpha};
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background .close-button {
|
||||
margin: 7px;
|
||||
padding: 2px;
|
||||
border-radius: 6.3px;
|
||||
color: #${theme.baseAlpha};
|
||||
background-color: #${theme.maroonAlpha};
|
||||
}
|
||||
|
||||
.close-button {
|
||||
border-radius: 6.3px;
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background .close-button:hover {
|
||||
background-color: #${theme.redAlpha};
|
||||
color: #${theme.baseAlpha};
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button:active {
|
||||
background-color: #${theme.redAlpha};
|
||||
color: #${theme.baseAlpha};
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background:hover {
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
background-color: #${theme.overlay1Alpha};
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background:active {
|
||||
box-shadow: inset 0 0 0 1px #${theme.surface1Alpha};
|
||||
background-color: #${theme.sapphireAlpha};
|
||||
color: #${theme.textAlpha};
|
||||
}
|
||||
|
||||
.notification.critical progress {
|
||||
background-color: #${theme.redAlpha};
|
||||
}
|
||||
|
||||
.notification.low progress,
|
||||
.notification.normal progress {
|
||||
background-color: #${theme.blueAlpha};
|
||||
}
|
||||
|
||||
.control-center-dnd {
|
||||
margin-top: 5px;
|
||||
border-radius: 8px;
|
||||
background: #${theme.surface0Alpha};
|
||||
border: 1px solid #${theme.surface1Alpha};
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.control-center-dnd:checked {
|
||||
background: #${theme.surface0Alpha};
|
||||
}
|
||||
|
||||
.control-center-dnd slider {
|
||||
background: #${theme.surface1Alpha};
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.widget-dnd {
|
||||
margin: 0px;
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
|
||||
.widget-dnd > switch {
|
||||
font-size: initial;
|
||||
border-radius: 8px;
|
||||
background: #${theme.surface0Alpha};
|
||||
border: 1px solid #${theme.surface1Alpha};
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.widget-dnd > switch:checked {
|
||||
background: #${theme.surface0Alpha};
|
||||
}
|
||||
|
||||
.widget-dnd > switch slider {
|
||||
background: #${theme.surface1Alpha};
|
||||
border-radius: 8px;
|
||||
border: 1px solid #${theme.overlay0Alpha};
|
||||
}
|
||||
|
||||
.widget-mpris .widget-mpris-player {
|
||||
background: #${theme.surface0Alpha};
|
||||
padding: 7px;
|
||||
}
|
||||
|
||||
.widget-mpris .widget-mpris-title {
|
||||
font-size: 1.2rem;
|
||||
}
|
||||
|
||||
.widget-mpris .widget-mpris-subtitle {
|
||||
font-size: 0.8rem;
|
||||
}
|
||||
|
||||
.widget-menubar > box > .menu-button-bar > button > label {
|
||||
font-size: 3rem;
|
||||
padding: 0.5rem 2rem;
|
||||
}
|
||||
|
||||
.widget-menubar > box > .menu-button-bar > :last-child {
|
||||
color: #${theme.redAlpha};
|
||||
}
|
||||
|
||||
.power-buttons button:hover,
|
||||
.powermode-buttons button:hover,
|
||||
.screenshot-buttons button:hover {
|
||||
background: #${theme.surface0Alpha};
|
||||
}
|
||||
|
||||
.control-center .widget-label > label {
|
||||
color: #${theme.textAlpha};
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.widget-buttons-grid {
|
||||
padding-top: 1rem;
|
||||
}
|
||||
|
||||
.widget-buttons-grid > flowbox > flowboxchild > button label {
|
||||
font-size: 2.5rem;
|
||||
}
|
||||
|
||||
.widget-volume {
|
||||
padding-top: 1rem;
|
||||
}
|
||||
|
||||
.widget-volume label {
|
||||
font-size: 1.5rem;
|
||||
color: #${theme.sapphireAlpha};
|
||||
}
|
||||
|
||||
.widget-volume trough highlight {
|
||||
background: #${theme.sapphireAlpha};
|
||||
}
|
||||
|
||||
.widget-backlight trough highlight {
|
||||
background: #${theme.yellowAlpha};
|
||||
}
|
||||
|
||||
.widget-backlight label {
|
||||
font-size: 1.5rem;
|
||||
color: #${theme.yellowAlpha};
|
||||
}
|
||||
|
||||
.widget-backlight .KB {
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
|
||||
.image {
|
||||
padding-right: 0.5rem;
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
@ -1,453 +0,0 @@
|
||||
/* TODO Variables */
|
||||
* {
|
||||
all: unset;
|
||||
font-size: 14px;
|
||||
font-family: "JetBrains Mono", monospace;
|
||||
transition: 200ms;
|
||||
}
|
||||
|
||||
trough highlight {
|
||||
background: #cdd6f4;
|
||||
}
|
||||
|
||||
scale trough {
|
||||
margin: 0 1rem;
|
||||
background-color: #313244;
|
||||
min-height: 8px;
|
||||
min-width: 70px;
|
||||
}
|
||||
|
||||
slider {
|
||||
background-color: #89b4fa;
|
||||
}
|
||||
|
||||
.floating-notifications.background .notification-row .notification-background {
|
||||
box-shadow:
|
||||
0 0 8px 0 rgba(0, 0, 0, 0.8),
|
||||
inset 0 0 0 1px #313244;
|
||||
border-radius: 12.6px;
|
||||
margin: 18px;
|
||||
background-color: #1e1e2e;
|
||||
color: #cdd6f4;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification {
|
||||
padding: 7px;
|
||||
border-radius: 12.6px;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification.critical {
|
||||
box-shadow: inset 0 0 7px 0 #f38ba8;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content {
|
||||
margin: 7px;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.summary {
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.time {
|
||||
color: #a6adc8;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.body {
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> * {
|
||||
min-height: 3.4em;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action {
|
||||
border-radius: 7px;
|
||||
color: #cdd6f4;
|
||||
background-color: #313244;
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
margin: 7px;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:hover {
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
background-color: #313244;
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:active {
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
background-color: #74c7ec;
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
/* Close Button */
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button {
|
||||
margin: 7px;
|
||||
padding: 2px;
|
||||
border-radius: 6.3px;
|
||||
color: #1e1e2e;
|
||||
background-color: #f38ba8;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button:hover {
|
||||
background-color: #eba0ac;
|
||||
color: #1e1e2e;
|
||||
}
|
||||
|
||||
.floating-notifications.background
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button:active {
|
||||
background-color: #f38ba8;
|
||||
color: #1e1e2e;
|
||||
}
|
||||
|
||||
.control-center {
|
||||
box-shadow:
|
||||
0 0 8px 0 rgba(0, 0, 0, 0.8),
|
||||
inset 0 0 0 1px #313244;
|
||||
border-radius: 12.6px;
|
||||
margin: 18px;
|
||||
background-color: #1e1e2e;
|
||||
color: #cdd6f4;
|
||||
padding: 14px;
|
||||
}
|
||||
|
||||
.control-center .widget-title > label {
|
||||
color: #cdd6f4;
|
||||
font-size: 1.3em;
|
||||
}
|
||||
|
||||
.control-center .widget-title button {
|
||||
border-radius: 7px;
|
||||
color: #cdd6f4;
|
||||
background-color: #313244;
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
.control-center .widget-title button:hover {
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
background-color: #585b70;
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
.control-center .widget-title button:active {
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
background-color: #74c7ec;
|
||||
color: #1e1e2e;
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background {
|
||||
border-radius: 7px;
|
||||
color: #cdd6f4;
|
||||
background-color: #313244;
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
margin-top: 14px;
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background .notification {
|
||||
padding: 7px;
|
||||
border-radius: 7px;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification.critical {
|
||||
box-shadow: inset 0 0 7px 0 #f38ba8;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content {
|
||||
margin: 7px;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.summary {
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.time {
|
||||
color: #a6adc8;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
.notification-content
|
||||
.body {
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> * {
|
||||
min-height: 3.4em;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action {
|
||||
border-radius: 7px;
|
||||
color: #cdd6f4;
|
||||
background-color: #11111b;
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
margin: 7px;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:hover {
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
background-color: #313244;
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.notification
|
||||
> *:last-child
|
||||
> *
|
||||
.notification-action:active {
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
background-color: #74c7ec;
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background .close-button {
|
||||
margin: 7px;
|
||||
padding: 2px;
|
||||
border-radius: 6.3px;
|
||||
color: #1e1e2e;
|
||||
background-color: #eba0ac;
|
||||
}
|
||||
|
||||
.close-button {
|
||||
border-radius: 6.3px;
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background .close-button:hover {
|
||||
background-color: #f38ba8;
|
||||
color: #1e1e2e;
|
||||
}
|
||||
|
||||
.control-center
|
||||
.notification-row
|
||||
.notification-background
|
||||
.close-button:active {
|
||||
background-color: #f38ba8;
|
||||
color: #1e1e2e;
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background:hover {
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
background-color: #7f849c;
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
.control-center .notification-row .notification-background:active {
|
||||
box-shadow: inset 0 0 0 1px #45475a;
|
||||
background-color: #74c7ec;
|
||||
color: #cdd6f4;
|
||||
}
|
||||
|
||||
.notification.critical progress {
|
||||
background-color: #f38ba8;
|
||||
}
|
||||
|
||||
.notification.low progress,
|
||||
.notification.normal progress {
|
||||
background-color: #89b4fa;
|
||||
}
|
||||
|
||||
.control-center-dnd {
|
||||
margin-top: 5px;
|
||||
border-radius: 8px;
|
||||
background: #313244;
|
||||
border: 1px solid #45475a;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.control-center-dnd:checked {
|
||||
background: #313244;
|
||||
}
|
||||
|
||||
.control-center-dnd slider {
|
||||
background: #45475a;
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.widget-dnd {
|
||||
margin: 0px;
|
||||
font-size: 1.1rem;
|
||||
}
|
||||
|
||||
.widget-dnd > switch {
|
||||
font-size: initial;
|
||||
border-radius: 8px;
|
||||
background: #313244;
|
||||
border: 1px solid #45475a;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.widget-dnd > switch:checked {
|
||||
background: #313244;
|
||||
}
|
||||
|
||||
.widget-dnd > switch slider {
|
||||
background: #45475a;
|
||||
border-radius: 8px;
|
||||
border: 1px solid #6c7086;
|
||||
}
|
||||
|
||||
.widget-mpris .widget-mpris-player {
|
||||
background: #313244;
|
||||
padding: 7px;
|
||||
}
|
||||
|
||||
.widget-mpris .widget-mpris-title {
|
||||
font-size: 1.2rem;
|
||||
}
|
||||
|
||||
.widget-mpris .widget-mpris-subtitle {
|
||||
font-size: 0.8rem;
|
||||
}
|
||||
|
||||
.widget-menubar > box > .menu-button-bar > button > label {
|
||||
font-size: 3rem;
|
||||
padding: 0.5rem 2rem;
|
||||
}
|
||||
|
||||
.widget-menubar > box > .menu-button-bar > :last-child {
|
||||
color: #f38ba8;
|
||||
}
|
||||
|
||||
.power-buttons button:hover,
|
||||
.powermode-buttons button:hover,
|
||||
.screenshot-buttons button:hover {
|
||||
background: #313244;
|
||||
}
|
||||
|
||||
.control-center .widget-label > label {
|
||||
color: #cdd6f4;
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.widget-buttons-grid {
|
||||
padding-top: 1rem;
|
||||
}
|
||||
|
||||
.widget-buttons-grid > flowbox > flowboxchild > button label {
|
||||
font-size: 2.5rem;
|
||||
}
|
||||
|
||||
.widget-volume {
|
||||
padding-top: 1rem;
|
||||
}
|
||||
|
||||
.widget-volume label {
|
||||
font-size: 1.5rem;
|
||||
color: #74c7ec;
|
||||
}
|
||||
|
||||
.widget-volume trough highlight {
|
||||
background: #74c7ec;
|
||||
}
|
||||
|
||||
.widget-backlight trough highlight {
|
||||
background: #f9e2af;
|
||||
}
|
||||
|
||||
.widget-backlight label {
|
||||
font-size: 1.5rem;
|
||||
color: #f9e2af;
|
||||
}
|
||||
|
||||
.widget-backlight .KB {
|
||||
padding-bottom: 1rem;
|
||||
}
|
||||
|
||||
.image {
|
||||
padding-right: 0.5rem;
|
||||
}
|
@ -1,5 +1,3 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./development.nix
|
||||
@ -15,5 +13,6 @@
|
||||
./steam.nix
|
||||
./stylix.nix
|
||||
./terminal
|
||||
./qt.nix
|
||||
];
|
||||
}
|
||||
|
@ -1,5 +1,9 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
font-awesome # Icons
|
||||
];
|
||||
|
||||
fonts = {
|
||||
fontconfig.enable = true;
|
||||
@ -8,6 +12,7 @@
|
||||
jetbrains-mono
|
||||
# The line below will replace the lines above in 25.05
|
||||
# nerd-fonts.jetbrains-mono
|
||||
font-awesome
|
||||
];
|
||||
};
|
||||
|
||||
|
@ -10,15 +10,13 @@
|
||||
glib
|
||||
adwaita-icon-theme
|
||||
gnomeExtensions.appindicator
|
||||
# gnome-extension-manager
|
||||
# gnome-extension-manager
|
||||
loupe
|
||||
gnome-calculator
|
||||
gnome-disk-utility
|
||||
];
|
||||
|
||||
programs = {
|
||||
dconf.enable = true; # Required for some gnome applications
|
||||
};
|
||||
programs.dconf.enable = true; # Required for some gnome applications
|
||||
|
||||
services = {
|
||||
gnome.gnome-keyring.enable = true;
|
||||
|
@ -1,13 +1,15 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
common = import ../../common.nix;
|
||||
in
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
nautilus
|
||||
ffmpegthumbnailer
|
||||
ffmpegthumbnailer # Thumbnails
|
||||
];
|
||||
|
||||
programs.nautilus-open-any-terminal = {
|
||||
enable = true;
|
||||
terminal = "kitty";
|
||||
terminal = common.terminal;
|
||||
};
|
||||
}
|
||||
|
@ -1,10 +1,6 @@
|
||||
{
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
gst_all_1.gstreamer
|
||||
gst_all_1.gst-plugins-base
|
||||
@ -17,7 +13,7 @@
|
||||
spotify
|
||||
];
|
||||
|
||||
hardware.pulseaudio.enable = false; # Will be moved to services
|
||||
hardware.pulseaudio.enable = false; # Will be moved to services in 25.05
|
||||
|
||||
security.rtkit.enable = true; # Enable RealtimeKit for audio purposes
|
||||
|
||||
@ -32,6 +28,6 @@
|
||||
# Uncomment the following line if you want to use JACK applications
|
||||
# jack.enable = true;
|
||||
};
|
||||
# pulseaudio.enable = false;
|
||||
# pulseaudio.enable = false; # TODO uncommenct at 25.05
|
||||
};
|
||||
}
|
||||
|
@ -1,5 +1,3 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./audio.nix
|
||||
|
@ -1,5 +1,3 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
hardware.nvidia = {
|
||||
# Required
|
||||
|
@ -1,9 +1,8 @@
|
||||
# System configurations for Hyprland. For home configs, see ./home/hyprland
|
||||
# System configurations for Hyprland. For home configs, see ./home-manager/hyprland
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./waybar.nix
|
||||
./wallpaper.nix
|
||||
];
|
||||
|
||||
@ -11,6 +10,7 @@
|
||||
xdg-desktop-portal-hyprland
|
||||
hyprpolkitagent # Auth deamon providing modals for password auth
|
||||
hyprshot # Screenshots
|
||||
waybar
|
||||
];
|
||||
|
||||
programs = {
|
||||
|
@ -1,12 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
waybar
|
||||
font-awesome # Icons
|
||||
];
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
font-awesome
|
||||
];
|
||||
}
|
@ -5,6 +5,7 @@ let
|
||||
utf-8 = "UTF-8";
|
||||
en = "en_GB.${utf-8}";
|
||||
nb = "nb_NO.${utf-8}";
|
||||
common = import ../common.nix;
|
||||
in
|
||||
{
|
||||
# Configure console keymap
|
||||
@ -31,10 +32,7 @@ in
|
||||
};
|
||||
|
||||
# Configure keymaps
|
||||
services.xserver.xkb = {
|
||||
layout = "gb,no";
|
||||
options = "grp:alt_shift_toggle"; # Toggle using ALT + SHIFT
|
||||
};
|
||||
services.xserver.xkb = common.keymaps;
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "Europe/Oslo";
|
||||
|
@ -1,9 +1,10 @@
|
||||
{ ... }:
|
||||
|
||||
let
|
||||
common = import ../common.nix;
|
||||
in
|
||||
{
|
||||
networking = {
|
||||
networkmanager.enable = true;
|
||||
hostName = "nixos";
|
||||
hostName = common.hostname;
|
||||
# wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||
};
|
||||
|
||||
|
@ -1,9 +1,7 @@
|
||||
# Nix-Helper: swgithub.com/viperML/nh
|
||||
{ ... }:
|
||||
|
||||
# Nix-Helper: github.com/viperML/nh
|
||||
{
|
||||
programs.nh = {
|
||||
enable = true;
|
||||
flake = ./.;
|
||||
flake = ../.;
|
||||
};
|
||||
}
|
||||
|
11
modules/qt.nix
Normal file
11
modules/qt.nix
Normal file
@ -0,0 +1,11 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs.kdePackages; [
|
||||
qtwayland
|
||||
qtsvg
|
||||
qt6ct
|
||||
];
|
||||
|
||||
qt.enable = true;
|
||||
}
|
@ -1,10 +1,13 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
theme = import ../theme.nix;
|
||||
flavor = theme.flavor;
|
||||
in
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
(catppuccin-sddm.override {
|
||||
flavor = "mocha";
|
||||
font = "Noto Sans";
|
||||
flavor = flavor;
|
||||
font = "JetBrainsMono";
|
||||
fontSize = "9";
|
||||
background = "${../catppuccin_high.png}";
|
||||
loginBackground = true;
|
||||
@ -13,7 +16,7 @@
|
||||
|
||||
services.displayManager.sddm = {
|
||||
enable = true;
|
||||
theme = "catppuccin-mocha";
|
||||
theme = "catppuccin-${flavor}";
|
||||
autoNumlock = true; # Enable numlock at login # TODO doesn't work
|
||||
wayland.enable = true;
|
||||
package = pkgs.kdePackages.sddm;
|
||||
|
@ -23,7 +23,7 @@
|
||||
};
|
||||
|
||||
services = {
|
||||
pcscd.enable = true;
|
||||
pcscd.enable = true; # Required for Yubikey
|
||||
udev.packages = with pkgs; [ yubikey-personalization ];
|
||||
};
|
||||
}
|
||||
|
@ -1,5 +1,3 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
|
@ -1,12 +1,15 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
let
|
||||
theme = import ../theme.nix;
|
||||
in
|
||||
{
|
||||
stylix = {
|
||||
enable = true;
|
||||
image = ../catppuccin.png;
|
||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
|
||||
base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-${theme.flavor}.yaml";
|
||||
polarity = "dark";
|
||||
opacity.terminal = 0.8;
|
||||
# Override some colours because of bad contrast
|
||||
override = {
|
||||
base02 = "b0b0b0"; # Comments in shell
|
||||
base03 = "b0b0b0"; # Comments in nvim
|
||||
|
41
theme.nix
Normal file
41
theme.nix
Normal file
@ -0,0 +1,41 @@
|
||||
rec {
|
||||
theme = "catppuccin";
|
||||
flavor = "mocha";
|
||||
|
||||
# TODO how to define font? JetBrainsMono | JetBrains Mono | JetBrainsMono Nerd Font | JetBrains Mono Nerd Font
|
||||
nerdFont = "JetBrainsMono";
|
||||
|
||||
rosewaterAlpha = "f5e0dc";
|
||||
flamingoAlpha = "f2cdcd";
|
||||
pinkAlpha = "f5c2e7";
|
||||
mauveAlpha = "cba6f7";
|
||||
mauveRgb = "rgb(${mauveAlpha})";
|
||||
redAlpha = "f38ba8";
|
||||
redRgb = "rgb(${redAlpha})";
|
||||
maroonAlpha = "eba0ac";
|
||||
peachAlpha = "fab387";
|
||||
yellowAlpha = "f9e2af";
|
||||
yellowRgb = "rgb(${yellowAlpha})";
|
||||
greenAlpha = "a6e3a1";
|
||||
tealAlpha = "94e2d5";
|
||||
tealRgb = "rgb(${tealAlpha})";
|
||||
skyAlpha = "89dceb";
|
||||
sapphireAlpha = "74c7ec";
|
||||
blueAlpha = "89b4fa";
|
||||
lavenderAlpha = "b4befe";
|
||||
textAlpha = "cdd6f4";
|
||||
textRgb = "rgb(${textAlpha})";
|
||||
subtext1Alpha = "bac2de";
|
||||
subtext0Alpha = "a6adc8";
|
||||
overlay2Alpha = "9399b2";
|
||||
overlay1Alpha = "7f849c";
|
||||
overlay0Alpha = "6c7086";
|
||||
surface2Alpha = "585b70";
|
||||
surface1Alpha = "45475a";
|
||||
surface0Alpha = "313244";
|
||||
surface0Rgb = "rgb(${surface0Alpha})";
|
||||
baseAlpha = "1e1e2e";
|
||||
baseRgb = "rgb(${baseAlpha})";
|
||||
mantleAlpha = "181825";
|
||||
crustAlpha = "11111b";
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user