Final edits before fork

This commit is contained in:
Dragyx 2024-04-29 13:17:46 +02:00
commit a4edaec9eb
10 changed files with 363 additions and 156 deletions

View file

@ -24,7 +24,9 @@ in
};
home-manager.users.${username} = {
programs.firefox.profiles = {
programs.firefox = {
enable = true;
profiles = {
main = {
id = 0;
isDefault = true;
@ -39,5 +41,6 @@ in
};
};
};
};
}

View file

@ -4,6 +4,21 @@ with lib;
let
username = config.modules.other.system.username;
cfg = config.modules.WM.hyprland;
ani-script = pkgs.writeShellApplication {
name = "ani-cli-advanced";
runtimeInputs = with pkgs; [ ani-cli ];
text = ''
selection=$(printf "\\ueacf Continue\n\\uf002 Search\n\\uea81 Delete History" | rofi -p "ani-cli" -dmenu -i)
case $selection in
*Search) ani-cli --rofi;;
*Continue) ani-cli --rofi -c;;
"*Delete History") ani-cli -D;;
esac
'';
};
in
{
config = mkIf cfg.enable {
@ -32,6 +47,7 @@ in
kb_layout = "us";
natural_scroll = true;
sensitivity = 0;
kb_variant = "altgr-intl";
};
general = {
gaps_in = 2;
@ -58,15 +74,23 @@ in
"windows, 1, 7, myBezier"
];
};
xwayland = {
force_zero_scaling = true;
};
gestures.workspace_swipe = true;
debug.enable_stdout_logs = true;
windowrulev2 = [
"float,title:bluetuith"
];
bind = [
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
"SUPER, RETURN, exec, alacritty"
"SUPER SHIFT, RETURN, exec, rofi -show drun"
"SUPER SHIFT, Q, killactive,"
"SUPER, M, exit, "
"SUPER, B, exec, firefox"
"SUPER, B, exec, alacritty --title bluetuith -e bluetuith"
"SUPER, A, exec, ${ani-script}/bin/ani-cli-advanced"
"SUPER SHIFT, A, exec, ani-cli --rofi -c"
"SUPER, f, fullscreen"
"SUPER, E, exec, nautilus --new-window "
"SUPER, V, togglefloating, "
@ -83,12 +107,12 @@ in
"SUPER, j, movefocus, d"
# move window to next / previous workspace"
"SUPER CTRL, h, movetoworkspace, -1"
"SUPER CTRL, l, movetoworkspace, +1"
"SUPER CTRL, h, movetoworkspace, r-1"
"SUPER CTRL, l, movetoworkspace, r+1"
# move to next / previous workspace"
"SUPER CTRL, h, workspace, -1"
"SUPER CTRL, l, workspace, +1"
"SUPER CTRL, j, workspace, r-1"
"SUPER CTRL, k, workspace, r+1"
# Switch workspaces with mainMod + [0-9]"
@ -103,6 +127,9 @@ in
"SUPER, 9, workspace, 9"
"SUPER, 0, workspace, 10"
# Move active window to a workspace with mainMod + SHIFT + [0-9]"
"SUPER SHIFT, 1, movetoworkspace, 1"
"SUPER SHIFT, 2, movetoworkspace, 2"
@ -115,6 +142,16 @@ in
"SUPER SHIFT, 9, movetoworkspace, 9"
"SUPER SHIFT, 0, movetoworkspace, 10"
"SUPER SHIFT, h, movewindow, l"
"SUPER SHIFT, l, movewindow, r"
"SUPER SHIFT, k, movewindow, u"
"SUPER SHIFT, j, movewindow, d"
# resize windows
"SUPER, -, resizeactive, -30"
"SUPER, +, resizeactive, 30"
# Scroll through existing workspaces with mainMod + scroll"
"SUPER, mouse_down, workspace, e+1"
"SUPER, mouse_up, workspace, e-1"

View file

@ -31,6 +31,7 @@ in
# to display when starting a terminal
zathura
fastfetch
wlr-randr
alacritty
wget
gnumake

View file

@ -0,0 +1 @@
/home/dragyx/.config/waybar/catppuccin.css

View file

@ -5,6 +5,8 @@ let
username = config.modules.other.system.username;
gitPath = config.modules.other.system.gitPath;
variant = "frappe";
catpuccin-rofi = pkgs.stdenv.mkDerivation {
pname = "catppuccin-rofi";
@ -44,12 +46,48 @@ let
# runHook postInstall
'';
};
catppuccin-sddm-corners-patched = pkgs.catppuccin-sddm-corners.overrideAttrs (prevAttrs: {
postInstall = (prevAttrs.postInstall or "") + ''
sed -i -E "s/passwordMaskDelay: [0-9]+/passwordMaskDelay: 0/" $out/share/sddm/themes/catppuccin-sddm-corners/components/PasswordPanel.qml
# catppuccin-sddm-corners-patched = pkgs.catppuccin-sddm-corners.overrideAttrs (prevAttrs: {
# postInstall = (prevAttrs.postInstall or "") + ''
# sed -i -E "s/passwordMaskDelay: [0-9]+/passwordMaskDelay: 0/" $out/share/sddm/themes/catppuccin-sddm-corners/components/PasswordPanel.qml
# '';
# });
catppuccin-sddm = pkgs.stdenv.mkDerivation rec {
pname="catppuccin-sddm";
version="1.0.0";
dontBuild = true;
src = pkgs.fetchFromGitHub {
owner = "catppuccin";
repo = "sddm";
rev = "v${version}";
sha256 = "sha256-SdpkuonPLgCgajW99AzJaR8uvdCPi4MdIxS5eB+Q9WQ=";
};
# nativeBuildInputs = with pkgs; [ qt6.qtsvg qt6.qtdeclarative ];
installPhase = ''
runHook preInstall
theme_dir="$out/share/sddm/themes/";
mkdir -p $theme_dir
for variant in "latte" "frappe" "macchiato" "mocha"; do
this_theme="$theme_dir/catppuccin-$variant"
mkdir "$this_theme"
cp -r $src/src/* $this_theme
# replace the theme name in the metadata file
sed -i -e "s/%%THEME%%/$variant/g" "$this_theme/metadata.desktop"
# handle items that are different per theme
cp "$src/pertheme/$variant.png" "$this_theme/preview.png"
cp "$src/pertheme/$variant.conf" "$this_theme/theme.conf"
done
runHook postInstall
'';
});
};
catppuccin-wallpapers = pkgs.stdenv.mkDerivation {
pname="catppuccin-wallpapers";
version = "0";
@ -60,11 +98,33 @@ let
sha256 = "sha256-h+cFlTXvUVJPRMpk32jYVDDhHu1daWSezFcvhJqDpmU=";
};
installPhase = ''
mkdir -p $out
mkdir -p $out/
cp -r $src/* $out/
'';
};
catppuccin = (pkgs.catppuccin.override {
inherit variant;
});
catppuccin-waybar = pkgs.stdenv.mkDerivation rec {
name = "catppuccin-waybar";
version = "1.1";
src = pkgs.fetchFromGitHub {
owner = "catppuccin";
repo = "waybar";
rev = "v${version}";
hash = "sha256-9lY+v1CTbpw2lREG/h65mLLw5KuT8OJdEPOb+NNC6Fo=";
};
installPhase = ''
runHook preInstall
mkdir -p $out
cp $src/themes/* $out/
runHook postInstall
'';
};
in
{
home-manager.users.${username} = {
@ -72,6 +132,8 @@ in
xdg.dataFile."rofi/themes".source = "${catpuccin-rofi}/share";
programs.waybar.style = ./waybar-style.css;
# add catppuccin theme to waybar
xdg.configFile."waybar/catppuccin.css".source = "${catppuccin-waybar}/${variant}.css";
wayland.windowManager.hyprland.settings.exec-once = [
"hyprshade auto"
@ -87,14 +149,21 @@ in
};
};
environment.systemPackages = with pkgs; [
catppuccin-sddm-corners-patched
# catppuccin-sddm-corners-patched
catppuccin
catppuccin-sddm
# deps of catppuccin-sddm-corners-patched
libsForQt5.qt5.qtgraphicaleffects
libsForQt5.qt5.qtsvg
libsForQt5.qt5.qtquickcontrols
qt6.qtsvg qt6.qtdeclarative
qt6.qtwayland
];
services.displayManager.sddm.theme = "catppuccin-sddm-corners";
services.displayManager.sddm = {
theme = "catppuccin-${variant}";
package = pkgs.kdePackages.sddm; # NEEDED for the catppuccin theme
};
boot.loader.grub.theme = grub-theme;

View file

@ -1,21 +1,7 @@
/* Styles */
@define-color bar-back rgba(40, 40, 40, 0.2);
@define-color widget rgba(40, 40, 40, 0.8);
@define-color warning @bryellow;
@define-color critical red;
@define-color mode black;
@define-color unfocused @widget;
@define-color active rgba(100, 40, 40, 0.7);
@define-color focused red;/*rgba(100, 40, 40, 0.7);*/
@define-color inactive purple;
@define-color fg1 rgba(0, 0, 255, 1);
@define-color fg2 rgba(255, 0, 0, 1);
@import "catppuccin.css";
/* Reset all styles */
* {
border: none;
border-radius: 0;
min-height: 0;
margin: 0;
padding: 0;
@ -26,111 +12,49 @@
/* The whole bar */
#waybar {
background: @bar-back;
/*
background: rgba(0, 0, 0, 0);
*/
/*background-image: linear-gradient(to left, rgba(255, 100, 100, 100), rgba(255, 100, 100, 0));*/
background: linear-gradient(90deg, rgba(0,212,255,0.19089642693014708) 0%, rgba(255,255,255,0) 25%, rgba(255,255,255,0) 75%, rgba(248,0,255,0.2105042700674019) 100%);
color: @white;
/* background: linear-gradient(90deg, @rosewater 0%, rgba(255,255,255,0) 25%, rgba(255,255,255,0) 75%, @teal 100%); */
color: @text;
font-family: JetBrains Mono;
font-size: 13pt;
}
/* Each module */
#battery,
#clock,
#cpu,
#language,
#memory,
#mode,
#network,
#pulseaudio-slider,
#temperature,
#tray,
#backlight,
#wireplumber,
#idle_inhibitor,
#disk,
#user,
#keyboard-state,
#workspaces button,
#custom-os-icon,
#mpris {
background: @widget;
margin: 0 0.2em 0 0.2em;
padding: 0em 0.3em 0em 0.3em;
border-radius: 0.35em;
}
#custom-os-icon {
min-width: 0.8em;
padding: 0 0.5em 0 0.1em; /*Otherwise the icon is not centered properly*/
}
#tray {
min-width: 0.8em;
}
#keyboard-state {
min-width: 2em;
color: white;
#widget {
background: @base;
}
#workspaces button {
opacity: 100;
color: white;
}
/* Inactive (on unfocused output) */
#workspaces button.inactive {
background: @inactive;
margin: 0 5px;
padding: 2px 3px 0 3px;
border-width: 0 0 2px 0;
border-color: @pink;
border-style: solid;
color: @text;
border-radius: 0;
background-color: transparent;
}
#workspaces button.active {
background: @active;
}
#custom-os-icon {
color: rgba(150, 150, 255, 1);
margin: 0 1em 0 0.2em;
}
#wireplumber {
/*color: @fg1;*/
border-radius: 0 0.3em 0.3em 0;
}
#backlight {
/*color: @fg2;*/
border-radius: 0.3em 0 0 0.3em;
background-color: @crust;
border-color: @yellow;
}
/* Active (on focused output) */
#workspaces button.focused {
opacity: 100;
background: @focused;
}
/* Contains an urgent window */
#workspaces button.urgent {
background: @warning;
}
/* Style when cursor is on the button */
#workspaces button:hover {
opacity: 110;
background: @focused;
background-color: @crust;
box-shadow: none;
text-shadow: none;
box-shadow: none; /* Remove predefined box-shadow */
text-shadow: none; /* Remove predefined text-shadow */
background: none; /* Remove predefined background color (white) */
transition: none; /* Disable predefined animations */
}
#clock.date {
border-radius: 0.3em 0 0 0.3em;
min-width: 7em;
#workspaces button.focused {
background-color: @crust;
}
#clock.time{
/*border-radius: 0 0.3em 0.3em 0;*/
border-radius: 0;
min-width: 4em;
#workspaces button.urgent {
background-color: @maroon;
}

View file

@ -0,0 +1,136 @@
/* Styles */
@define-color bar-back rgba(40, 40, 40, 0.2);
@define-color widget rgba(40, 40, 40, 0.8);
@define-color warning @bryellow;
@define-color critical red;
@define-color mode black;
@define-color unfocused @widget;
@define-color active rgba(100, 40, 40, 0.7);
@define-color focused red;/*rgba(100, 40, 40, 0.7);*/
@define-color inactive purple;
@define-color fg1 rgba(0, 0, 255, 1);
@define-color fg2 rgba(255, 0, 0, 1);
/* Reset all styles */
* {
border: none;
border-radius: 0;
min-height: 0;
margin: 0;
padding: 0;
box-shadow: none;
text-shadow: none;
-gtk-icon-shadow: none;
}
/* The whole bar */
#waybar {
background: @bar-back;
/*
background: rgba(0, 0, 0, 0);
*/
/*background-image: linear-gradient(to left, rgba(255, 100, 100, 100), rgba(255, 100, 100, 0));*/
background: linear-gradient(90deg, rgba(0,212,255,0.19089642693014708) 0%, rgba(255,255,255,0) 25%, rgba(255,255,255,0) 75%, rgba(248,0,255,0.2105042700674019) 100%);
color: @white;
font-family: JetBrains Mono;
font-size: 13pt;
}
/* Each module */
#battery,
#clock,
#cpu,
#language,
#memory,
#mode,
#network,
#pulseaudio-slider,
#temperature,
#tray,
#backlight,
#wireplumber,
#idle_inhibitor,
#disk,
#user,
#keyboard-state,
#workspaces button,
#custom-os-icon,
#mpris {
background: @widget;
margin: 0 0.2em 0 0.2em;
padding: 0em 0.3em 0em 0.3em;
border-radius: 0.35em;
}
#custom-os-icon {
min-width: 0.8em;
padding: 0 0.5em 0 0.1em; /*Otherwise the icon is not centered properly*/
}
#tray {
min-width: 0.8em;
}
#keyboard-state {
min-width: 2em;
color: white;
}
#workspaces button {
opacity: 100;
color: white;
}
/* Inactive (on unfocused output) */
#workspaces button.inactive {
background: @inactive;
}
#workspaces button.active {
background: @active;
}
#custom-os-icon {
color: rgba(150, 150, 255, 1);
margin: 0 1em 0 0.2em;
}
#wireplumber {
/*color: @fg1;*/
border-radius: 0 0.3em 0.3em 0;
}
#backlight {
/*color: @fg2;*/
border-radius: 0.3em 0 0 0.3em;
}
/* Active (on focused output) */
#workspaces button.focused {
opacity: 100;
background: @focused;
}
/* Contains an urgent window */
#workspaces button.urgent {
background: @warning;
}
/* Style when cursor is on the button */
#workspaces button:hover {
opacity: 110;
background: @focused;
}
#clock.date {
border-radius: 0.3em 0 0 0.3em;
min-width: 7em;
}
#clock.time{
/*border-radius: 0 0.3em 0.3em 0;*/
border-radius: 0;
min-width: 4em;
}

View file

@ -14,7 +14,7 @@ in
layer = "top";
position = "top";
modules-left = [
"custom/os-icon"
# "custom/os-icon"
"hyprland/workspaces"
];
modules-center = [
@ -29,7 +29,7 @@ in
];
# Modules
"custom/os-icon" = {
format = "\\uf313"; #NixOS logo
format = ""; #NixOS logo
};
battery = {
interval = 10;
@ -73,15 +73,15 @@ in
network = {
interval = 5;
format-wifi = "{icon} {essid}";
format-ethernet = "\\udb80\\ude01 {ifname}";
format-disconnected = "\\uf0202 Offline";
format-alt = "\\udb80\\uddda {bandwidthDownBytes} \\udb81\\udd52 {bandwidthUpBytes} \\udb82\\ude5f {ipaddr}/{cidr}";
format-ethernet = "󰈁 {ifname}";
format-disconnected = "2 Offline";
format-alt = "󰇚 {bandwidthDownBytes} 󰕒 {bandwidthUpBytes} 󰩟 {ipaddr}/{cidr}";
format-icons = [
"\\udb82\\udd28 "
"\\udb82\\udd25 "
"\\udb82\\udd22 "
"\\udb82\\udd1f "
"\\udb82\\udd2f "
"󰤨 "
"󰤥 "
"󰤢 "
"󰤟 "
"󰤯 "
];
tooltip = false;
};
@ -94,9 +94,9 @@ in
max-length = 30;
tooltip = false;
rewrite = {
"([Aa]lacritty|kitty)" = "\\ue795 $1";
"(.*) .{15} Mozilla Firefox" = "\\ue745 $1";
"(^Spotify.*)" = "\\uf1bc $1";
"([Aa]lacritty|kitty)" = " $1";
"(.*) .{15} Mozilla Firefox" = " $1";
"(^Spotify.*)" = " $1";
};
};
"hyprland/workspaces" = {
@ -161,26 +161,26 @@ in
backlight = {
format = "{percent}% {icon} ";
format-icons = [
"\\udb80\\udf36"
"\\udb86\\ude4e"
"\\udb86\\ude4f"
"\\udb86\\ude50"
"\\udb86\\ude51"
"\\udb86\\ude52"
"\\udb86\\ude53"
"\\udb86\\ude54"
"\\udb86\\ude55"
"\\udb86\\ude56"
"\\udb81\\udee8"
"󰌶"
"󱩎"
"󱩏"
"󱩐"
"󱩑"
"󱩒"
"󱩓"
"󱩔"
"󱩕"
"󱩖"
"󰛨"
];
};
wireplumber = {
format = "{icon} {volume}%";
format-muted = "\\udb81\\udd81";
format-muted = "󰖁";
format-icons = [
"\\uf026"
"\\uf027"
"\\udb81\\udd7e"
""
""
"󰕾"
];
};
tray = {

View file

@ -115,6 +115,9 @@
security.polkit.enable = true;
home-manager.users."dragyx".home.packages = with pkgs; [ vesktop ];
# Mainly for coding weekend
services.hardware.bolt.enable = true;
modules = {
other = {
system = rec {
@ -131,6 +134,38 @@
};
scale = 1.175;
refresh_rate = 60;
position = {
x = 0;
y = 0;
};
}
rec {
name = "CodingWeekend";
device = "DP-9";
resolution = {
x = 2560;
y = 1440;
};
refresh_rate = 60;
scale = 1;
position = {
x = -152;
y = -resolution.y;
};
}
rec {
name = "CodingWeekend2";
device = "DP-10";
resolution = {
x = 2560;
y = 1440;
};
refresh_rate = 60;
scale = 1;
position = {
x = -152;
y = -resolution.y;
};
}
];
wayland = true;

View file

@ -20,6 +20,7 @@ in
lynis
element-desktop
jetbrains.idea-community
jetbrains.rust-rover
baobab
amdvlk
texlive.combined.scheme-full