More hyprland setup, add waybar
This commit is contained in:
parent
a0fe904d6c
commit
084100c557
@ -74,6 +74,7 @@
|
|||||||
## My scripts
|
## My scripts
|
||||||
pkgs.frajul.deploy-to-pianopi
|
pkgs.frajul.deploy-to-pianopi
|
||||||
pkgs.frajul.edit-config
|
pkgs.frajul.edit-config
|
||||||
|
pkgs.frajul.open-messaging
|
||||||
]
|
]
|
||||||
++ lib.lists.concatMap (packages-list-file: import packages-list-file { inherit pkgs; }) [
|
++ lib.lists.concatMap (packages-list-file: import packages-list-file { inherit pkgs; }) [
|
||||||
./fonts.nix
|
./fonts.nix
|
||||||
|
@ -37,11 +37,59 @@ in
|
|||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
wofi
|
wofi
|
||||||
xfce.thunar
|
xfce.thunar
|
||||||
wlogout
|
|
||||||
waybar
|
|
||||||
hyprlock
|
hyprlock
|
||||||
|
hyprpicker
|
||||||
|
hyprcursor
|
||||||
];
|
];
|
||||||
|
|
||||||
|
programs.waybar = {
|
||||||
|
enable = true;
|
||||||
|
systemd.enable = true;
|
||||||
|
style = builtins.readFile ./style-dracula.css;
|
||||||
|
settings = {
|
||||||
|
mainBar = {
|
||||||
|
layer = "top";
|
||||||
|
position = "bottom";
|
||||||
|
height = 30;
|
||||||
|
output = [
|
||||||
|
"eDP-1"
|
||||||
|
"HDMI-A-1"
|
||||||
|
];
|
||||||
|
modules-left = [
|
||||||
|
"hyprland/workspaces"
|
||||||
|
"hyprland/submap"
|
||||||
|
];
|
||||||
|
modules-center = [ "hyprland/window" ];
|
||||||
|
modules-right = [
|
||||||
|
# "mpd"
|
||||||
|
# "idle_inhibitor"
|
||||||
|
"pulseaudio"
|
||||||
|
# "network"
|
||||||
|
"power-profiles-daemon"
|
||||||
|
"cpu"
|
||||||
|
"memory"
|
||||||
|
# "temperature"
|
||||||
|
# "backlight"
|
||||||
|
# "keyboard-state"
|
||||||
|
"battery"
|
||||||
|
# "battery#bat2"
|
||||||
|
"clock"
|
||||||
|
"tray"
|
||||||
|
];
|
||||||
|
|
||||||
|
# "sway/workspaces" = {
|
||||||
|
# disable-scroll = true;
|
||||||
|
# all-outputs = true;
|
||||||
|
# };
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.wlogout.enable = true; # can be configured
|
||||||
|
# services.hypridle.enable = true; # can be configured
|
||||||
|
|
||||||
|
services.network-manager-applet.enable = true;
|
||||||
|
|
||||||
wayland.windowManager.hyprland = {
|
wayland.windowManager.hyprland = {
|
||||||
# Whether to enable Hyprland wayland compositor
|
# Whether to enable Hyprland wayland compositor
|
||||||
enable = true;
|
enable = true;
|
||||||
@ -62,10 +110,8 @@ in
|
|||||||
|
|
||||||
# Autostart
|
# Autostart
|
||||||
exec-once = [
|
exec-once = [
|
||||||
"nm-applet"
|
# "nm-applet"
|
||||||
"waybar"
|
|
||||||
"firefox"
|
"firefox"
|
||||||
"hyprlock"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# Environment Variables
|
# Environment Variables
|
||||||
@ -121,7 +167,14 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
# Window rules
|
# Window rules
|
||||||
windowrulev2 = "suppressevent maximize, class:.*"; # You'll probably like this.
|
windowrulev2 = [
|
||||||
|
"suppressevent maximize, class:.*"
|
||||||
|
"workspace 1, class:firefox"
|
||||||
|
"workspace 9, class:nheko"
|
||||||
|
"workspace 9, class:org.telegram.desktop"
|
||||||
|
"workspace 10, class:thunderbird"
|
||||||
|
"float, class:qalculate-gtk"
|
||||||
|
];
|
||||||
|
|
||||||
# Workspace rules
|
# Workspace rules
|
||||||
workspace = [
|
workspace = [
|
||||||
@ -158,6 +211,7 @@ in
|
|||||||
"$mod, E, exec, thunar"
|
"$mod, E, exec, thunar"
|
||||||
"$mod, Return, exec, alacritty"
|
"$mod, Return, exec, alacritty"
|
||||||
"$mod, B, exec, firefox"
|
"$mod, B, exec, firefox"
|
||||||
|
"$mod, C, exec, qalculate-gtk"
|
||||||
|
|
||||||
# other commands
|
# other commands
|
||||||
"$mod, Escape, exec, wlogout -p layer-shell"
|
"$mod, Escape, exec, wlogout -p layer-shell"
|
||||||
|
265
modules/home/hyprland/style-dracula.css
Normal file
265
modules/home/hyprland/style-dracula.css
Normal file
@ -0,0 +1,265 @@
|
|||||||
|
/* Keyframes */
|
||||||
|
|
||||||
|
@keyframes blink-critical {
|
||||||
|
to {
|
||||||
|
/*color: @white;*/
|
||||||
|
background-color: @critical;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Styles */
|
||||||
|
|
||||||
|
/* Colors (gruvbox) */
|
||||||
|
@define-color black #282828;
|
||||||
|
@define-color red #cc241d;
|
||||||
|
@define-color green #98971a;
|
||||||
|
@define-color yellow #d79921;
|
||||||
|
@define-color blue #458588;
|
||||||
|
@define-color purple #b16286;
|
||||||
|
@define-color aqua #689d6a;
|
||||||
|
@define-color gray #a89984;
|
||||||
|
@define-color brgray #928374;
|
||||||
|
@define-color brred #fb4934;
|
||||||
|
@define-color brgreen #b8bb26;
|
||||||
|
@define-color bryellow #fabd2f;
|
||||||
|
@define-color brblue #83a598;
|
||||||
|
@define-color brpurple #d3869b;
|
||||||
|
@define-color braqua #8ec07c;
|
||||||
|
@define-color white #ebdbb2;
|
||||||
|
@define-color bg2 #504945;
|
||||||
|
|
||||||
|
|
||||||
|
@define-color warning @bryellow;
|
||||||
|
@define-color critical @red;
|
||||||
|
@define-color mode @black;
|
||||||
|
@define-color unfocused @bg2;
|
||||||
|
@define-color focused @braqua;
|
||||||
|
@define-color inactive @purple;
|
||||||
|
@define-color sound @brpurple;
|
||||||
|
@define-color network @purple;
|
||||||
|
@define-color memory @braqua;
|
||||||
|
@define-color cpu @green;
|
||||||
|
@define-color temp @brgreen;
|
||||||
|
@define-color layout @bryellow;
|
||||||
|
@define-color battery @aqua;
|
||||||
|
@define-color date @black;
|
||||||
|
@define-color time @white;
|
||||||
|
|
||||||
|
/* Reset all styles */
|
||||||
|
* {
|
||||||
|
border: none;
|
||||||
|
border-radius: 0;
|
||||||
|
min-height: 0;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
box-shadow: none;
|
||||||
|
text-shadow: none;
|
||||||
|
icon-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* The whole bar */
|
||||||
|
#waybar {
|
||||||
|
background: rgba(40, 40, 40, 0.8784313725); /* #282828e0 */
|
||||||
|
color: @white;
|
||||||
|
font-family: JetBrains Mono, Siji;
|
||||||
|
font-size: 10pt;
|
||||||
|
/*font-weight: bold;*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Each module */
|
||||||
|
#battery,
|
||||||
|
#clock,
|
||||||
|
#cpu,
|
||||||
|
#language,
|
||||||
|
#memory,
|
||||||
|
#mode,
|
||||||
|
#network,
|
||||||
|
#pulseaudio,
|
||||||
|
#temperature,
|
||||||
|
#tray,
|
||||||
|
#backlight,
|
||||||
|
#idle_inhibitor,
|
||||||
|
#disk,
|
||||||
|
#user,
|
||||||
|
#mpris {
|
||||||
|
padding-left: 8pt;
|
||||||
|
padding-right: 8pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Each critical module */
|
||||||
|
#mode,
|
||||||
|
#memory.critical,
|
||||||
|
#cpu.critical,
|
||||||
|
#temperature.critical,
|
||||||
|
#battery.critical.discharging {
|
||||||
|
animation-timing-function: linear;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-direction: alternate;
|
||||||
|
animation-name: blink-critical;
|
||||||
|
animation-duration: 1s;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Each warning */
|
||||||
|
#network.disconnected,
|
||||||
|
#memory.warning,
|
||||||
|
#cpu.warning,
|
||||||
|
#temperature.warning,
|
||||||
|
#battery.warning.discharging {
|
||||||
|
color: @warning;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* And now modules themselves in their respective order */
|
||||||
|
|
||||||
|
/* Current sway mode (resize etc) */
|
||||||
|
#mode {
|
||||||
|
color: @white;
|
||||||
|
background: @mode;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Workspaces stuff */
|
||||||
|
#workspaces button {
|
||||||
|
/*font-weight: bold;*/
|
||||||
|
padding-left: 2pt;
|
||||||
|
padding-right: 2pt;
|
||||||
|
color: @white;
|
||||||
|
background: @unfocused;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Inactive (on unfocused output) */
|
||||||
|
#workspaces button.visible {
|
||||||
|
color: @white;
|
||||||
|
background: @inactive;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Active (on focused output) */
|
||||||
|
#workspaces button.focused {
|
||||||
|
color: @black;
|
||||||
|
background: @focused;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Contains an urgent window */
|
||||||
|
#workspaces button.urgent {
|
||||||
|
color: @black;
|
||||||
|
background: @warning;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Style when cursor is on the button */
|
||||||
|
#workspaces button:hover {
|
||||||
|
background: @black;
|
||||||
|
color: @white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#window {
|
||||||
|
margin-right: 35pt;
|
||||||
|
margin-left: 35pt;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pulseaudio {
|
||||||
|
background: @sound;
|
||||||
|
color: @black;
|
||||||
|
}
|
||||||
|
|
||||||
|
#network {
|
||||||
|
background: @network;
|
||||||
|
color: @white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory {
|
||||||
|
background: @memory;
|
||||||
|
color: @black;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cpu {
|
||||||
|
background: @cpu;
|
||||||
|
color: @white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#temperature {
|
||||||
|
background: @temp;
|
||||||
|
color: @black;
|
||||||
|
}
|
||||||
|
|
||||||
|
#language {
|
||||||
|
background: @layout;
|
||||||
|
color: @black;
|
||||||
|
}
|
||||||
|
|
||||||
|
#battery {
|
||||||
|
background: @battery;
|
||||||
|
color: @white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#tray {
|
||||||
|
background: @date;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock.date {
|
||||||
|
background: @date;
|
||||||
|
color: @white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#clock.time {
|
||||||
|
background: @time;
|
||||||
|
color: @black;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-arrow1 {
|
||||||
|
font-size: 11pt;
|
||||||
|
color: @time;
|
||||||
|
background: @date;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-arrow2 {
|
||||||
|
font-size: 11pt;
|
||||||
|
color: @date;
|
||||||
|
background: @layout;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-arrow3 {
|
||||||
|
font-size: 11pt;
|
||||||
|
color: @layout;
|
||||||
|
background: @battery;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-arrow4 {
|
||||||
|
font-size: 11pt;
|
||||||
|
color: @battery;
|
||||||
|
background: @temp;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-arrow5 {
|
||||||
|
font-size: 11pt;
|
||||||
|
color: @temp;
|
||||||
|
background: @cpu;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-arrow6 {
|
||||||
|
font-size: 11pt;
|
||||||
|
color: @cpu;
|
||||||
|
background: @memory;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-arrow7 {
|
||||||
|
font-size: 11pt;
|
||||||
|
color: @memory;
|
||||||
|
background: @network;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-arrow8 {
|
||||||
|
font-size: 11pt;
|
||||||
|
color: @network;
|
||||||
|
background: @sound;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-arrow9 {
|
||||||
|
font-size: 11pt;
|
||||||
|
color: @sound;
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
#custom-arrow10 {
|
||||||
|
font-size: 11pt;
|
||||||
|
color: @unfocused;
|
||||||
|
background: transparent;
|
||||||
|
}
|
31
packages/open-messaging/default.nix
Normal file
31
packages/open-messaging/default.nix
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
# Snowfall Lib provides a customized `lib` instance with access to your flake's library
|
||||||
|
# as well as the libraries available from your flake's inputs.
|
||||||
|
lib,
|
||||||
|
# You also have access to your flake's inputs.
|
||||||
|
inputs,
|
||||||
|
|
||||||
|
# All other arguments come from NixPkgs. You can use `pkgs` to pull packages or helpers
|
||||||
|
# programmatically or you may add the named attributes as arguments here.
|
||||||
|
pkgs,
|
||||||
|
stdenv,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
pkgs.writeShellApplication {
|
||||||
|
name = "open-messaging";
|
||||||
|
|
||||||
|
runtimeInputs = with pkgs; [
|
||||||
|
nheko
|
||||||
|
telegram-desktop
|
||||||
|
thunderbird
|
||||||
|
];
|
||||||
|
|
||||||
|
text = ''
|
||||||
|
nheko &
|
||||||
|
sleep 0.1
|
||||||
|
telegram-desktop &
|
||||||
|
sleep 0.1
|
||||||
|
thunderbird &
|
||||||
|
'';
|
||||||
|
}
|
@ -104,7 +104,7 @@
|
|||||||
|
|
||||||
# Enable the XFCE Desktop Environment.
|
# Enable the XFCE Desktop Environment.
|
||||||
services.xserver.displayManager.gdm.enable = true;
|
services.xserver.displayManager.gdm.enable = true;
|
||||||
# services.displayManager.sddm.wayland.enable = true;
|
# services.displayManager.sddm.wayland.enable = true;
|
||||||
# services.xserver.desktopManager = {
|
# services.xserver.desktopManager = {
|
||||||
# xterm.enable = false;
|
# xterm.enable = false;
|
||||||
# xfce = {
|
# xfce = {
|
||||||
@ -135,6 +135,8 @@
|
|||||||
hardware.pulseaudio.enable = false;
|
hardware.pulseaudio.enable = false;
|
||||||
security.polkit.enable = true;
|
security.polkit.enable = true;
|
||||||
|
|
||||||
|
security.pam.services.hyprlock = { };
|
||||||
|
|
||||||
# Sound
|
# Sound
|
||||||
security.rtkit.enable = true;
|
security.rtkit.enable = true;
|
||||||
services.pipewire = {
|
services.pipewire = {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user