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,20 +24,23 @@ in
};
home-manager.users.${username} = {
programs.firefox.profiles = {
main = {
id = 0;
isDefault = true;
search.default = "DuckDuckGo";
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
ublock-origin
bitwarden
darkreader
maya-dark
];
search.force = true;
programs.firefox = {
enable = true;
profiles = {
main = {
id = 0;
isDefault = true;
search.default = "DuckDuckGo";
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
ublock-origin
bitwarden
darkreader
maya-dark
];
search.force = true;
};
};
};
};
};
}

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]"
@ -102,6 +126,9 @@ in
"SUPER, 8, workspace, 8"
"SUPER, 9, workspace, 9"
"SUPER, 0, workspace, 10"
# Move active window to a workspace with mainMod + SHIFT + [0-9]"
"SUPER SHIFT, 1, movetoworkspace, 1"
@ -114,6 +141,16 @@ in
"SUPER SHIFT, 8, movetoworkspace, 8"
"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"

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