Compare commits

..

No commits in common. "6e6f8200377beb8117f42c94b3daa4cc1db07d7a" and "fe4c868f9580126344af4a88c4730bcc760a6985" have entirely different histories.

53 changed files with 1159 additions and 2647 deletions

View file

@ -4,7 +4,7 @@ This project is an automated installer for the Atlas Desktop.
## Disclaimer ## Disclaimer
### ⚠ Use at your own risk. ### ⚠ This is still a WIP project. Use at your own risk.
Some platforms may not yet be supported such as Nvidia graphic cards for which you'll have to install all the drivers yourself. Sadly I don't have any equipment to test that out. Some platforms may not yet be supported such as Nvidia graphic cards for which you'll have to install all the drivers yourself. Sadly I don't have any equipment to test that out.
@ -26,25 +26,16 @@ Very simple, clone the project (or download it directly from the web interface)
```sh= ```sh=
git clone https://forge.oblic-parallels.fr/guillm/atlas-install git clone https://forge.oblic-parallels.fr/guillm/atlas-install
``` ```
And run `setup.sh` Make `setup.sh` executable
```sh=
chmod u+x setup.sh
```
And run it
```sh= ```sh=
./setup.sh ./setup.sh
``` ```
Then just follow the instructions and you should be good to go ! That said I suggest you to give a look to the packages that will be installed on your system as it's important to know how things will work or to disable some things you wouldn't necessarely want.
If you encounter any error or bug, don't hesitate to open an issue on this repo.
## Configuration
I suggest you to give a look to the packages that will be installed on your system as it's important to know how things will work or to disable some things you wouldn't necessarely want.
I particularly think of helix which is used as the default text editor but may not suit some people needs.
Note that the default keyboard layout is QWERTY (us-fr). You can switch with the AZERTY layout by using `Mod+Ctrl+Space`. That said, the default layout already has french accents if you need them.
If you need to modify the layout, go to `~/.config/hypr/config/default/kb_layouts`.
### Defaults
I'm working on a system to easily change the default programs. I don't know yet if it will result into anything but it's worth trying.
## Future improvements ## Future improvements

View file

@ -0,0 +1,72 @@
[General]
hotkey=Alt+Space
prioritizePerfectMatch=true
showTray=false
telemetry=false
[albert]
global_handler_enabled=false
trigger=albert
[applications]
enabled=true
fuzzy=true
terminal=kitty
use_generic_name=false
use_keywords=true
[caffeine]
enabled=false
[calculator_qalculate]
enabled=true
[clipboard]
enabled=true
persistent=true
[files]
enabled=false
paths=@Invalid()
[hash]
enabled=true
trigger=#
[mpris]
enabled=true
trigger=mp
[path]
enabled=true
[snippets]
enabled=false
[ssh]
enabled=true
[system]
command_lock=hyprlock
command_poweroff=poweroff
command_reboot=reboot
enabled=true
trigger=sys
[triggers]
trigger=?
[widgetsboxmodel]
alwaysOnTop=true
clearOnHide=false
clientShadow=false
darkTheme=Seventy Eight
displayScrollbar=false
followCursor=true
hideOnFocusLoss=true
historySearch=true
itemCount=5
lightTheme=Seventy Eight
quitOnClose=false
showCentered=true
systemShadow=true

View file

@ -0,0 +1,108 @@
/*
* original author: Manuel Schneider <https://github.com/ManuelSchneid3r>
* modified by : Gu://em_
*
* Check http://doc.qt.io/qt-5/stylesheet-syntax.html especially the subtopics:
* The Style Sheet Syntax (http://doc.qt.io/qt-5/stylesheet-syntax.html)
* Qt Style Sheets Reference (http://doc.qt.io/qt-5/stylesheet-reference.html)
*/
* {
border: none;
color: #98C1D9;
background-color: #293241;
}
#frame {
background-color: none;
border: none;
max-width:640px;
min-width:640px;
padding: 10px; /* to have a drag handle */
}
#inputLine {
border-radius: 8px;
border: 1px solid #4C566A;
color: #EE6C4D;
font-size: 26px;
padding: 8px;
selection-background-color: #EE6C4D;
selection-color: #E0FBFC;
}
#settingsButton {
background-color: none;
color: #4C566A;
max-height: 13px;
max-width: 13px;
min-height: 13px;
min-width: 13px;
padding: 16px;
}
QListView {
border-radius: 8px;
border: 1px solid #4C566A;
color: #E0FBFC;
margin-top: 4px;
selection-background-color: #3D5A80;
selection-color: #E0FBFC;
}
QListView::item {
border-radius: 6px;
padding: 4px;
}
QListView::item:selected {
background-color: #3D5A80;
}
QListView#resultsList {
font-size: 20px;
icon-size: 34px;
padding: 4px 8px 4px 8px;
}
QListView#resultsList::item {
margin: 4px 0px 4px 0px;
height: 44px;
}
QListView#actionList {
font-size: 16px;
padding: 6px 8px 6px 8px;
}
QListView#actionList::item {
margin: 2px 0px 2px 0px;
}
QListView QScrollBar::add-line:vertical, QScrollBar::sub-line:vertical,
QListView QScrollBar::up-arrow:vertical, QScrollBar::down-arrow:vertical,
QListView QScrollBar::add-page:vertical, QScrollBar::sub-page:vertical {
background: transparent;
border: 0px;
height: 0px;
width: 0px;
}
QListView QScrollBar:vertical {
background: transparent;
margin: 8px 0px 8px 0px;
width: 2px;
}
QListView QScrollBar::handle:vertical {
background: #4C566A;
min-height: 24px;
}

View file

@ -1,18 +0,0 @@
/* Swaync */
@define-color active #e64e4e;
@define-color background_dark #1c2128;
@define-color background_light #22272e;
@define-color background_transparent alpha(#18191c, 0.7);
@define-color foreground #e4e8ed;
@define-color border #333940;
@define-color alert #ea4545;
/* Waybar */
@define-color foreground #e4e8ed;
@define-color background #18191c;
/* @define-color accentColor #b6c8d3; */
@define-color accentColor #ec775c;
@define-color charging #6bc46d;

View file

@ -1,3 +0,0 @@
#$active_color = rgba(f55c20ff)
$active_color = rgba(de3c3cff)
$inactive_color = rgba(595959aa)

View file

@ -1,62 +0,0 @@
# vim:ft=kitty
## name: 78
## author: Gu://em_ (forked from Github Dark Dimmed)
## license: MIT
#: The basic colors
foreground #adbac7
background #14171F
#background #111317
selection_foreground #EE6C4D
selection_background #3D5A80
#: Cursor colors
cursor #adbac7
#: Tab bar colors
tab_bar_background #22272e
active_tab_foreground #adbac7
active_tab_background #ec775c
inactive_tab_foreground #adbac7
inactive_tab_background #1C2128
#: The basic 16 colors
#: black
color0 #545d68
color8 #636e7b
#: red
color1 #f47067
color9 #ff938a
#: green
color2 #57ab5a
color10 #6bc46d
#: yellow
color3 #c69026
color11 #daaa3f
#: blue
color4 #539bf5
color12 #6cb6ff
#: magenta
color5 #b083f0
color13 #dcbdfb
#: cyan
color6 #39c5cf
color14 #56d4dd
#: white
color7 #909dab
color15 #cdd9e5

View file

@ -0,0 +1,66 @@
# -*- conf -*-
# For documentation on these options, see `man fnott.ini`
# Global values
# output=<undefined>#
min-width=200
# max-width=0
# max-height=0
# stacking-order=bottom-up
anchor=top-right
edge-margin-vertical=10
edge-margin-horizontal=10
notification-margin=10
icon-theme=Papirus
# max-icon-size=32
# selection-helper=dmenu
# selection-helper-uses-null-separator=no
# play-sound=aplay ${filename}
# Default values, may be overridden in 'urgency' specific sections
layer=top
background=293241FF
border-color=EE6C4DFF
border-radius=0
border-size=2
padding-vertical=20
padding-horizontal=20
dpi-aware=yes
title-font=monospace
title-color=ffffffff
title-format=<i>%a%A</i>
summary-font=monospace
summary-color=ffffffff
summary-format=<b>%s</b>\n
body-font=monospace
body-color=ffffffff
body-format=%b
progress-bar-height=20
progress-bar-color=ffffffff
# sound-file=
# icon=
# Timeout values are in seconds. 0 to disable
max-timeout=0
default-timeout=0
idle-timeout=0
# [low]
# background=2b2b2bff
# title-color=888888ff
# summary-color=888888ff
# body-color=888888ff
# [normal]
# [critical]
# background=6c3333ff

View file

@ -1,8 +0,0 @@
[main]
shell=zsh
font=JetBrains Mono Nerd Font:size=14:style=Light
include=~/.config/foot/github-dark.ini
[cursor]
style=beam
blink=true

View file

@ -1,41 +0,0 @@
# -*- conf -*-
# Github Dark
# By Gu://em_
[colors-dark]
# alpha = 0.9
background= 0d1117
foreground= c9d1d9
#: black
regular0= 484f58
bright0= 6e7681
#: red
regular1= ff7b72
bright1= ffa198
#: green
regular2= 3fb950
bright2= 56d364
#: yellow
regular3= d29922
bright3= e3b341
#: blue
regular4= 58a6ff
bright4= 79c0ff
#: magenta
regular5= bc8cff
bright5= d2a8ff
#: cyan
regular6= 39c5cf
bright6= 56d4dd
#: white
regular7= b1bac4
bright7= ffffff

View file

@ -1,5 +0,0 @@
theme = "github_dark"
# theme = "adwaita-light"
[editor]
line-number = "relative"

View file

@ -3,12 +3,14 @@
##################### #####################
# Refer to https://wiki.hyprland.org/Configuring/Variables/ # Refer to https://wiki.hyprland.org/Configuring/Variables/
source = ~/.config/hypr/config/colors.conf
$active_color = rgba(98C1D9FF)
$inactive_color = rgba(595959aa)
# https://wiki.hyprland.org/Configuring/Variables/#general # https://wiki.hyprland.org/Configuring/Variables/#general
general { general {
gaps_in = 1 gaps_in = 1
gaps_out = 1 gaps_out = 0
border_size = 1 border_size = 1
@ -44,52 +46,15 @@ decoration {
blur { blur {
enabled = true enabled = true
size = 6 size = 6
passes = 4 passes = 3
vibrancy = 0.1696 vibrancy = 0.1696
} }
} }
# Layer rules # Apply blur to waybar
layerrule = blur,waybar
layerrule {
name = side-panel
blur = on
ignore_alpha = 0.2
animation = slide right
dim_around = on
match:namespace = ^(swaync-control-center)$
}
layerrule {
name = launcher
blur = off
animation = popin 90%
match:namespace = ^(rofi)$
}
layerrule {
name = status-bar
blur = off
animation = slide up
match:namespace = ^(waybar)$
}
layerrule {
name = screenshot-selection
blur = off
animation = fade
match:namespace = ^(selection)$
}
## Old
# layerrule = blur, swaync-control-center
# layerrule = blur, swaync-notification-window
# layerrule = ignorezero, swaync-control-center
# layerrule = ignorezero, swaync-notification-window
# layerrule = ignorealpha 0.5, swaync-control-center
# layerrule = ignorealpha 0.5, swaync-notification-window
# https://wiki.hyprland.org/Configuring/Variables/#animations # https://wiki.hyprland.org/Configuring/Variables/#animations
@ -109,7 +74,7 @@ animations {
# Animations # Animations
animation = global, 1, 10, default animation = global, 1, 10, default
animation = border, 1, 4, easeOutQuint animation = border, 1, 5.39, easeOutQuint
animation = windows, 1, 3.79, easeOutQuint animation = windows, 1, 3.79, easeOutQuint
animation = windowsIn, 1, 3.1, easeOutQuint, popin 87% animation = windowsIn, 1, 3.1, easeOutQuint, popin 87%
@ -120,12 +85,12 @@ animations {
animation = fade, 1, 3.03, quick animation = fade, 1, 3.03, quick
animation = layers, 1, 3.81, easeOutQuint animation = layers, 1, 3.81, easeOutQuint
animation = layersIn, 1, 3, easeOutQuint, popin 85% animation = layersIn, 1, 4, easeOutQuint, fade
animation = layersOut, 1, 3, linear, popin animation = layersOut, 1, 1.5, linear, fade
# animation = fadeLayersIn, 1, 1.79, almostLinear animation = fadeLayersIn, 1, 1.79, almostLinear
# animation = fadeLayersOut, 1, 1.39, almostLinear animation = fadeLayersOut, 1, 1.39, almostLinear
animation = workspaces, 1, 2.2 , easeOutQuint, slidefadevert animation = workspaces, 1, 1.94, almostLinear, fade
animation = workspacesIn, 1, 3, easeOutQuint, slide animation = workspacesIn, 1, 3, easeOutQuint, slide
animation = workspacesOut, 1, 3, easeOutQuint, slide animation = workspacesOut, 1, 3, easeOutQuint, slide
@ -170,107 +135,32 @@ misc {
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules # See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
# Ignore maximize requests from apps. You'll probably like this. # Ignore maximize requests from apps. You'll probably like this.
windowrule { windowrule = suppressevent maximize, class:.*
name = suppress-maximize-events
suppress_event = maximize
match:class = .*
}
# Fix some dragging issues with XWayland # Fix some dragging issues with XWayland
windowrule { windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
name = fix-xwayland-drags
match:class = ^$
match:title = ^$
match:xwayland = true
match:float = true
match:fullscreen = false
match:pin = false
no_focus = true
}
# Albert # Albert
windowrule { windowrule=noborder,class:^(albert)$
name = albert windowrule=noblur,class:^(albert)$
border_size = 0 windowrule=noshadow,class:^(albert)$
no_blur = on windowrule=float,class:^(albert)$
no_shadow = on windowrule=stayfocused,class:^(albert)$
float = on windowrule=nodim,class:^(albert)$
stay_focused = on
no_dim = on
match:class = ^(albert)$
}
# Prism Launcher # Prism Launcher
windowrule { windowrule=pseudo, class:(org.prismlauncher.PrismLauncher)
name = prismlauncher-all windowrule=size 65% 70%, class:(org.prismlauncher.PrismLauncher), title:^(Prism Launcher .*)$
pseudo = on
match:class = (org.prismlauncher.PrismLauncher)
}
windowrule {
name = prismlauncher-main
size = (monitor_w*0.65) (monitor_h*0.7)
match:class = (org.prismlauncher.PrismLauncher)
match:title = ^(Prism Launcher .*)$
}
# Nautilus
windowrule {
name = nautilus-main
pseudo = on
size = (monitor_w*0.65) (monitor_h*0.7)
match:class = (org.gnome.Nautilus) # initialTitle:^(Loading…)$
}
# GTK file picker
windowrule {
name = gtk-file-picker
float = on
size = (monitor_w*0.65) (monitor_h*0.7)
match:class = (xdg-desktop-portal-gtk)
}
# Vivado
## Loading screen
windowrule {
name = vivado-loading-screen
float = on
center = on
match:class = (ui-PlanAhead)
}
windowrule {
name = vivado-loading-screen-2
size = 397 295
match:class = (ui-PlanAhead) title:^(win0)$
}
## Main window
windowrule {
name = vivado-main
tile = on
match:class = (Vivado)
}
# Kdenlive
windowrule {
name = kdenlive-all
pseudo = on
match:class = (org.kde.kdenlive)
}
windowrule {
name = kdenlive-welcome
size = (512) (544)
match:class = (org.kde.kdenlive) # initialTitle:^(Kdenlive)$
}
# TODO Automatically fullscreen single apps # TODO Automatically fullscreen single apps
# - Seems impossible for now (try mixing with workspace rules) # - Seems impossible for now (try mixing with workspace rules)
# Default size for floating windows
## TODO
#windowrulev2 = size 100 100,floating:1
# Increase gaps for single apps # Increase gaps for single apps
## Usless since I changed the default gap but may be useful if you decide to reset it to 0 workspace=w[t1], gapsout:2
#workspace=w[t1], gapsout:2

View file

@ -1 +0,0 @@
../../../colors/hyprland.conf

View file

@ -5,10 +5,10 @@
# See https://wiki.hyprland.org/Configuring/Keywords/ # See https://wiki.hyprland.org/Configuring/Keywords/
# Set programs that you use # Set programs that you use
$terminal = foot $terminal = kitty
$fileManager = nautilus $fileManager = cosmic-files
$menu = rofi -show drun $menu = albert toggle
$notificationManager = swaync-client -t $notificationsManager = fnott
################# #################

View file

@ -18,7 +18,9 @@ input {
} }
# https://wiki.hyprland.org/Configuring/Variables/#gestures # https://wiki.hyprland.org/Configuring/Variables/#gestures
gesture = 3, horizontal, workspace gestures {
workspace_swipe = true
}
# Example per-device config # Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more # See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
@ -44,17 +46,14 @@ bind = $mainMod, D, exec, $menu # Legacy menu shortcut
bind = $mainMod, L, exec, hyprlock # Lockscreen bind = $mainMod, L, exec, hyprlock # Lockscreen
bind = $mainMod, B, exec, ~/.config/hypr/scripts/toggle-waybar.sh # Toggle sidebar bind = $mainMod, B, exec, ~/.config/hypr/scripts/toggle-waybar.sh # Toggle sidebar
bind = $mainMod SHIFT, R, exec, ~/.config/hypr/scripts/reload.sh # Reload desktop bind = $mainMod SHIFT, R, exec, ~/.config/hypr/scripts/reload.sh # Reload desktop
bind = $mainMod, F11, exec, ~/.config/hypr/scripts/game-mode.sh # Gamemode bind = $mainMod, F11, exec, ~/.config/hypr/scripts/gamemode.sh # Gamemode
bind = $mainMod, F10, exec, ~/.config/hypr/scripts/sharp-mode.sh # Sharp mode
bind = $mainMod SHIFT, M, exit, # Exit desktop session bind = $mainMod SHIFT, M, exit, # Exit desktop session
# Shortcuts # Shortcuts
bind = $mainMod, RETURN, exec, $terminal bind = $mainMod, RETURN, exec, $terminal
bind = $mainMod, X, exec, $terminal # Absolutely not because I dislocated my arm
bind = $mainMod, SPACE, exec, $menu bind = $mainMod, SPACE, exec, $menu
bind = $mainMod, E, exec, $fileManager bind = $mainMod, E, exec, $fileManager
bind = $mainMod, A, exec, $notificationManager bindel = , XF86Launch1, exec, kitty vim ~/.config/hypr/config
bindel = , XF86Launch1, exec, $terminal hx ~/.config/hypr/config # Replace by default editor
# Move focus with mainMod + arrow keys # Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l bind = $mainMod, left, movefocus, l
@ -62,12 +61,6 @@ bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d bind = $mainMod, down, movefocus, d
# Move windows with mainMod + shift + arrow keys
bind = $mainMod SHIFT, left, movewindow, l
bind = $mainMod SHIFT, right, movewindow, r
bind = $mainMod SHIFT, up, movewindow, u
bind = $mainMod SHIFT, down, movewindow, d
# Layout # Layout
bind = $mainMod, F, fullscreen, bind = $mainMod, F, fullscreen,
bind = $mainMod, V, togglesplit, # Horizontal/vertical split bind = $mainMod, V, togglesplit, # Horizontal/vertical split
@ -141,10 +134,6 @@ bindl = , XF86AudioPrev, exec, playerctl previous
## Screenshot ## Screenshot
bind = , Print, exec, ~/.config/hypr/scripts/screenshot.sh bind = , Print, exec, ~/.config/hypr/scripts/screenshot.sh
bind = SHIFT, Print, exec, ~/.config/hypr/scripts/screenshot.sh --fullscreen
# Color picker
bind = $mainMod SHIFT, C, exec, hyprpicker -a
## Touchpad toggle ## Touchpad toggle
### On galaxy books, pressing the disable touchpad key also triggers SUPER and ### On galaxy books, pressing the disable touchpad key also triggers SUPER and
@ -155,9 +144,3 @@ bind = SUPER CONTROL, XF86TouchpadToggle, exec, ~/.config/hypr/scripts/toggle-to
### Only works between AZERTY and QWERTY because of differences in the numbers row ### Only works between AZERTY and QWERTY because of differences in the numbers row
### that prevent using the default way provided by hyprland ### that prevent using the default way provided by hyprland
bind = $mainMod CONTROL, SPACE, exec, ~/.config/hypr/scripts/change-kb-layout.sh bind = $mainMod CONTROL, SPACE, exec, ~/.config/hypr/scripts/change-kb-layout.sh
# Lock laptop on lid close
bindl=,switch:off:Lid Switch, exec, hyprlock --immediate
## Overview plugin
#bind = $mainMod, TAB, overview:toggle, toggle

View file

@ -1,8 +1,8 @@
## Overrides inputs for QWERTY layout ## Overrides inputs for QWERTY layout
input { input {
kb_layout = fr kb_layout = us
kb_variant = us kb_variant =
kb_model = kb_model =
kb_options = kb_options =
kb_rules = kb_rules =

View file

@ -10,3 +10,6 @@ plugin {
gapsOut = 20 gapsOut = 20
} }
} }
# Toggle overview (Read plugins section in wiki before decommenting)
# bind = $mainMod, TAB, overview:toggle, toggle

View file

@ -1,21 +0,0 @@
################
### MONITORS ###
################
# See https://wiki.hyprland.org/Configuring/Monitors/
# All screens
monitorv2 {
output =
mode = preferred
position = auto-up
scale = auto
}
# Laptop screen
monitorv2 {
output = eDP-1
mode = preferred
position = auto-down
scale = 1
}

View file

@ -1,23 +0,0 @@
################
### MONITORS ###
################
# See https://wiki.hyprland.org/Configuring/Monitors/
# Laptop screen
monitorv2 {
output = eDP-1 # <- You may need to change that
mode = preferred
position = 0x0
scale = 1
}
# Other monitors (mirror laptop screen)
monitorv2 {
output = *
mode = preferred
position = auto
scale = 1
mirror = eDP-1 # <- Also don't forget this one
}

View file

@ -1,14 +1,12 @@
# BACKGROUND # BACKGROUND
background { background {
monitor = monitor =
path = ~/.config/hypr/images/wallpaper.jpg path = ~/.config/hypr/images/lockscreen.jpg
blur_passes = 3 blur_passes = 0
blur_size = 4 #contrast = 0.8916
noise = 0.0 #brightness = 0.8172
contrast = 0.7 #vibrancy = 0.1696
brightness = 0.8172 #vibrancy_darkness = 0.0
vibrancy = 0.2
vibrancy_darkness = 0.0
} }
# GENERAL # GENERAL
@ -28,12 +26,12 @@ input-field {
dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8 dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8
dots_spacing = 0.2 # Scale of dots' absolute size, 0.0 - 1.0 dots_spacing = 0.2 # Scale of dots' absolute size, 0.0 - 1.0
dots_center = true dots_center = true
outer_color = rgba(200, 200, 200, 0.4) outer_color = rgba(200, 200, 200, 1)
inner_color = rgba(100, 114, 125, 1) inner_color = rgba(100, 114, 125, 1)
font_color = rgb(200, 200, 200) font_color = rgb(200, 200, 200)
fade_on_empty = false fade_on_empty = false
font_family = DejaVu Sans font_family = DejaVu Sans
placeholder_text = <i><span foreground="##ffffff99">Enter password</span></i> placeholder_text = <i><span foreground="##ffffff99">Enter Pass</span></i>
hide_input = false hide_input = false
position = 0, -350 position = 0, -350
halign = center halign = center
@ -43,6 +41,7 @@ input-field {
# Time # Time
label { label {
monitor = monitor =
#text = cmd[update:1000] echo "<span>$(date +"%H:%M")</span>"
text = $TIME text = $TIME
color = rgba(216, 222, 233, 1) color = rgba(216, 222, 233, 1)
font_size = 130 font_size = 130
@ -50,6 +49,9 @@ label {
position = 0, 280 position = 0, 280
halign = center halign = center
valign = center valign = center
# TODO make shadowing work
#shadow_passes = 10
#shadow_size = 3
} }
# Day-Month-Date # Day-Month-Date
@ -81,37 +83,13 @@ label {
#} #}
# USER # USER
label {
monitor =
text = $USER
color = rgba(216, 222, 233, 0.70)
font_size = 20
font_family = JetbrainsMonoNL NF
position = 0, -200
halign = center
valign = center
}
# Timer
label {
monitor =
text = cmd[update:0] echo "Locked since $TIME"
color = rgba(216, 222, 233, 0.40)
font_size = 20
font_family = JetbrainsMonoNL NF
position = 0, -250
halign = center
valign = center
}
# # Failed login attempts
#label { #label {
# monitor = # monitor =
# text = cmd[update:1000] echo "$ATTEMPTS Failed attempts" # text = Hi, $USER
# color = rgba(216, 222, 233, 0.40) # color = rgba(216, 222, 233, 0.70)
# font_size = 20 # font_size = 20
# font_family = JetbrainsMonoNL NF # font_family = DejaVu Sans
# position = 0, -250 # position = 0, -200
# halign = center # halign = center
# valign = center # valign = center
#} #}
@ -122,7 +100,7 @@ label {
text = cmd[update:1000] echo "$(~/.config/hypr/scripts/songdetails.sh)" text = cmd[update:1000] echo "$(~/.config/hypr/scripts/songdetails.sh)"
color = rgba(255, 255, 255, 0.7) color = rgba(255, 255, 255, 0.7)
font_size = 16 font_size = 16
font_family = JetbrainsMonoNL NF font_family = DejaVu Sans
position = 0, 20 position = 0, 20
halign = center halign = center
valign = bottom valign = bottom

View file

@ -1,6 +1,2 @@
wallpaper { preload = ~/.config/hypr/images/wallpaper.png
monitor = wallpaper = , ~/.config/hypr/images/wallpaper.png
path = ~/.config/hypr/images/wallpaper.jpg
}
splash = false

View file

@ -1,12 +0,0 @@
max-gamma = 150
profile {
time = 8:00
identity = true
}
profile {
time = 21:00
temperature = 5500
gamma = 0.8
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 887 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 MiB

View file

@ -5,8 +5,8 @@
# If you want to add your own applications you may rather want to use exec-once in the environment.conf file # If you want to add your own applications you may rather want to use exec-once in the environment.conf file
hyprpaper & hyprpaper &
# Enable this if you want to use plugins hyprpm reload -nn &
# hyprpm reload & albert &
swaync & # mako &
systemctl --user start hyprpolkitagent & systemctl --user start hyprpolkitagent &
~/.config/hypr/scripts/restore-waybar.sh ~/.config/hypr/scripts/restore-waybar.sh

View file

@ -21,8 +21,9 @@ en_to_fr() {
} }
if ! [ -f "${status_file}" ]; then if ! [ -f "${status_file}" ]; then
hyprctl notify 3 3000 0 "Status file missing"
hyprctl notify 2 6000 0 "Use Mod + Ctrl + Space to change keyboard layout" hyprctl notify 2 6000 0 "Use Mod + Ctrl + Space to change keyboard layout"
fr_to_en en_to_fr
else else
if [ $(cat "${status_file}") = "fr" ]; then if [ $(cat "${status_file}") = "fr" ]; then
fr_to_en fr_to_en

View file

@ -1,6 +1,6 @@
killall albert
killall hyprpaper killall hyprpaper
killall waybar killall waybar
killall swaync
hyprctl reload hyprctl reload

View file

@ -1,13 +1 @@
save_path=$HOME/Pictures/Screenshots/$(date +'%F_%T.png') grim -g "$(slurp)" $HOME/Pictures/Screenshots/$(date +'%F_%T.png') && hyprctl notify 1 2000 0 Screenshot saved!
if [ $# -eq 0 ]; then
grim -g "$(slurp)" $save_path && hyprctl notify 1 2000 0 "Screenshot saved!"
elif [ $# -eq 1 ]; then
if [[ $1 == "--fullscreen" ]]; then
grim $save_path && hyprctl notify 1 2000 0 Screenshot saved!
fi
fi
exit 0

View file

@ -1,21 +0,0 @@
#!/usr/bin/env sh
# Disables animations accros the desktop (as well as some other tweaks)
# Similar to game mode but with the goal to enhance productivity
# From Hyprland documentation - https://wiki.hyprland.org/0.41.2/Configuring/Uncommon-tips--tricks/#toggle-animationsbluretc-hotkey
HYPRSHARPMODE=$(hyprctl getoption animations:enabled | awk 'NR==1{print $2}')
if [ "$HYPRSHARPMODE" = 1 ] ; then
hyprctl --batch "\
keyword animations:enabled 0;\
keyword general:gaps_in 0;\
keyword general:gaps_out 0;\
keyword general:border_size 1;\
keyword decoration:rounding 0"
hyprctl notify 1 2000 0 "Enabled Sharp mode"
exit
fi
hyprctl reload
# ~/.config/hypr/scripts/restore-waybar.sh
hyprctl notify 1 2000 0 "Disabled Sharp mode"

View file

@ -1 +1 @@
en fr

View file

@ -1,17 +0,0 @@
@theme "~/.local/share/rofi/themes/boussole.rasi"
configuration {
modi: "drun,run";
display-drun: "Applications";
display-run: "Run";
drun-display-format: "{icon} {name}";
sort: true;
sorting-method: "fzf";
/* Icons */
show-icons: true;
icon-theme: "Papirus";
}

View file

@ -1,4 +0,0 @@
@theme "~/.local/share/rofi/themes/boussole.rasi"
configuration {
terminal: "foot";
}

View file

@ -1 +0,0 @@
../colors/colors.css

View file

@ -1,113 +0,0 @@
{
"$schema": "/etc/xdg/swaync/configSchema.json",
"positionX": "right",
"positionY": "top",
"layer": "overlay",
"control-center-layer": "top",
"layer-shell": true,
"cssPriority": "application",
"control-center-width": 350,
"control-center-margin-top": 2,
"control-center-margin-bottom": 2,
"control-center-margin-right": 2,
"control-center-margin-left": 2,
"notification-2fa-action": true,
"notification-inline-replies": true,
"notification-window-width": 350,
"notification-icon-size": 60,
"notification-body-image-height": 180,
"notification-body-image-width": 180,
"timeout": 4,
"timeout-low": 2,
"timeout-critical": 0,
"fit-to-screen": true,
"keyboard-shortcuts": true,
"image-visibility": "when available",
"transition-time": 200,
"hide-on-clear": false,
"hide-on-action": true,
"script-fail-notify": true,
"widgets": [
"title",
"notifications",
"mpris",
"volume",
"backlight",
"buttons-grid"
],
"widget-config": {
"title": {
"text": "Notification Center",
"clear-all-button": true,
"button-text": "󰆴"
},
"label": {
"max-lines":1,
"text": "Notification Center!"
},
"mpris": {
"image-size": 80,
"image-radius": 0
},
"volume": {
"label": "󰕾 "
},
"backlight": {
"label": "󰃟 "
},
"buttons-grid": {
"actions": [
{
"label": "󰝟",
"command": "pactl set-sink-mute @DEFAULT_SINK@ toggle",
"type": "toggle"
},
{
"label": "󰍭",
"command": "pactl set-source-mute @DEFAULT_SOURCE@ toggle",
"type": "toggle"
},
{
"label": "",
"command": "rofi-wifi"
},
{
"label": "",
"command": "rofi-bluetooth"
},
{
"label":"󰤄",
"command": "swaync-client -d",
"type":"toggle"
},
{
"label": "",
"command": "foot hx ~/.config/hypr"
},
{
"label": "",
"command": "foot btop"
},
{
"label": "",
"command": "hyprlock"
},
{
"label":"",
"command": "reboot"
},
{
"label":"",
"command": "shutdown now"
}
]
}
}
}

View file

@ -1,486 +0,0 @@
@import url('colors.css');
@define-color control-background alpha(@background_dark, 0.8);
* {
all: unset;
font-family: JetBrainsMono Nerd Font Propo;
transition: 0.1s;
font-size: 1.3rem;
}
/*--------------- Notifications ---------------*/
.floating-notifications.background .notification-row {
padding: 0.5rem;
}
.floating-notifications.background .notification-row .notification-background {
border-radius: 0.3rem;
background-color: @background_light;
color: @foreground;
border: 1px solid @border;
}
.floating-notifications.background
.notification-row
.notification-background
.notification {
padding: 0.6rem;
border-radius: 0.2rem;
}
.floating-notifications.background
.notification-row
.notification-background
.notification.critical {
border: 1px solid @alert;
}
.floating-notifications.background
.notification-row
.notification-background
.notification
.notification-content
.summary {
margin: 0.2rem;
color: @foreground;
font-weight: bold;
}
.floating-notifications.background
.notification-row
.notification-background
.notification
.notification-content
.body {
margin: 0.2rem;
color: @foreground;
}
.floating-notifications.background
.notification-row
.notification-background
.notification
> *:last-child
> * {
min-height: 3rem;
}
.floating-notifications.background
.notification-row
.notification-background
.notification
> *:last-child
> *
.notification-action {
border-radius: 0.2rem;
color: @foreground;
background-color: @background_dark;
border: 1px solid @border;
}
.floating-notifications.background
.notification-row
.notification-background
.notification
> *:last-child
> *
.notification-action:hover {
background-color: #26233a;
}
.floating-notifications.background
.notification-row
.notification-background
.notification
> *:last-child
> *
.notification-action:active {
background-color: @border;
}
.floating-notifications.background
.notification-row
.notification-background
.close-button {
margin: 0.2rem;
padding: 0.25rem;
border-radius: 0.2rem;
color: @foreground;
background-color: alpha(@alert, 0);
}
.floating-notifications.background
.notification-row
.notification-background
.close-button:hover {
/* color: #191724; */
background-color: @alert;
}
.floating-notifications.background
.notification-row
.notification-background
.close-button:active {
background-color: @foreground;
}
/*--------------- Control center ---------------*/
.control-center {
border-radius: .4rem;
background-color: @background_transparent;
color: @foreground;
padding: 1.2rem;
border: 1px solid @border;
}
.control-center .widget-title {
color: @foreground;
font-weight: bold;
}
.control-center .widget-title button {
border-radius: 2rem;
color: @foreground;
background-color: @border;
border: 1px solid @border;
padding: .2rem 1.5rem;
}
.control-center .widget-title button:hover {
background-color: @alert;
}
.control-center .widget-title button:active {
background-color: @border;
}
.control-center .notification-row .notification-background {
border-radius: 0.5rem;
margin: 0.5rem;
background-color: @background_light;
color: @foreground;
border: 1px solid @border;
}
.control-center .notification-row .notification-background .notification {
padding: 0.7rem;
border-radius: 0.2rem;
}
.control-center
.notification-row
.notification-background
.notification.critical {
border: 1px solid @alert;
}
.control-center
.notification-row
.notification-background
.notification
.notification-content {
color: @foreground;
}
.control-center
.notification-row
.notification-background
.notification
.notification-content
.summary {
margin: 0.2rem;
color: @foreground;
font-weight: bold;
}
.control-center
.notification-row
.notification-background
.notification
.notification-content
.body {
margin: 0.2rem;
color: @foreground;
}
.control-center
.notification-row
.notification-background
.notification
> *:last-child
> * {
min-height: 3rem;
}
.control-center
.notification-row
.notification-background
.notification
> *:last-child
> *
.notification-action {
border-radius: 0.2rem;
color: @foreground;
background-color: #1f1d2e;
border: 1px solid @border;
}
.control-center
.notification-row
.notification-background
.notification
> *:last-child
> *
.notification-action:hover {
background-color: @background_light;
}
.control-center
.notification-row
.notification-background
.notification
> *:last-child
> *
.notification-action:active {
background-color: @border;
}
.control-center .notification-row .notification-background .close-button {
margin: 0.5rem;
padding: 0.25rem;
border-radius: 0.2rem;
color: @foreground;
background-color: alpha(@alert, 0);
}
.control-center .notification-row .notification-background .close-button:hover {
background-color: @alert;
}
.control-center
.notification-row
.notification-background
.close-button:active {
background-color: @foreground;
}
progressbar,
progress,
trough {
border-radius: 0.2rem;
}
.notification.critical progress {
background-color: @alert;
}
.notification.low progress,
.notification.normal progress {
background-color: #9ccfd8;
}
trough {
background-color: #1f1d2e;
}
.control-center trough {
background-color: @border;
}
.control-center-dnd {
margin: 1rem 0;
border-radius: 0.2rem;
}
.control-center-dnd slider {
background: #26233a;
border-radius: 0.2rem;
}
.widget-dnd {
color: #908caa;
}
.widget-dnd > switch {
border-radius: 0.2rem;
background: #26233a;
border: 1px solid @border;
}
.widget-dnd > switch:checked slider {
background: #31748f;
}
.widget-dnd > switch slider {
background: @border;
border-radius: 0.2rem;
margin: 0.25rem;
}
/*--------------- Media player ---------------*/
.widget-mpris {
}
.widget-mpris .widget-mpris-player {
padding: 16px;
margin: 0.5rem;
background-color: @mpris-album-art-overlay;
border-radius: 0.7rem;
}
.widget-mpris .widget-mpris-player button:hover {
all: unset;
background: @bg-hover;
text-shadow: none;
border-radius: 0.5rem;
border: none;
padding: 5px;
margin: 5px;
transition: all 0.2s ease;
}
.widget-mpris .widget-mpris-player button {
color:@text;
text-shadow: none;
border-radius: 2rem;
border: none;
padding: 5px;
margin: 5px;
transition: all 0.2s ease;
}
.widget-mpris .widget-mpris-player button:not(.selected) {
background: transparent;
border: 2px solid transparent;
}
.widget-mpris .widget-mpris-player button:hover {
border: 2px solid transparent;
}
.widget-mpris .widget-mpris-player .widget-mpris-album-art {
border-radius: 0.5rem;
box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.5);
}
.widget-mpris .widget-mpris-player .widget-mpris-title {
font-weight: bold;
font-size: 1.25rem;
}
.widget-mpris .widget-mpris-player .widget-mpris-subtitle {
font-size: 1.1rem;
}
.widget-mpris .widget-mpris-player > box > button:hover {
background-color: @mpris-button-hover;
}
/*--------------- Sliders ---------------*/
.widget-volume {
background-color: transparent;
padding: 8px;
/* margin: 8px; */
margin-bottom: 0.5rem;
border-radius: 12px;
}
.widget-backlight {
background-color: transparent;
padding: 8px;
/* margin: 8px; */
margin-bottom: 1.5rem;
border-radius: 12px;
}
trough {
border-radius: 20px;
background: transparent;
}
trough highlight {
padding: 5px;
background: @active;
border-radius: 20px;
transition: all .2s ease;
}
trough highlight:hover {
padding: 5px;
background: @active;
border-radius: 20px;
transition: all .2s ease;
}
trough slider {
background: transparent;
}
trough slider:hover {
background: transparent;
}
/*--------------- Buttons grid ---------------*/
.widget-buttons-grid {
padding-left: 0.2rem;
padding-right: 0.2rem;
padding-bottom: 0.2rem;
/* margin: 1rem; */
border-radius: 0.2rem;
background:transparent;
}
.widget-buttons-grid>flowbox>flowboxchild>button label {
font-size: 20px;
color: @foreground;
transition: all .2s ease;
}
.widget-buttons-grid>flowbox>flowboxchild>button:hover label {
font-size: 20px;
color: @text;
transition: all .2s ease;
}
.widget-buttons-grid > flowbox > flowboxchild > button {
background: alpha(@border, 0.5);
border-radius: 0.2rem;
padding: 0.7rem 2rem;
margin: 0.2rem;
text-shadow:none;
transition: all .2s ease;
}
.widget-buttons-grid > flowbox > flowboxchild > button:hover {
background: @border;
box-shadow: 0px 0px 2px rgba(0, 0, 0, .2);
transition: all .2s ease;
}
.widget-buttons-grid > flowbox > flowboxchild > button.toggle:checked {
background: @active;
}
.widget-buttons-grid > flowbox > flowboxchild > button.toggle:checked label {
color: @background;
}

View file

@ -1,506 +0,0 @@
{
"layer": "top",
"position": "right",
"margin": "1 1 1 2",
"reload_style_on_change": true,
// Modules display
"modules-left": [
//"custom/updates",
"hyprland/workspaces",
"hyprland/submap"
//"group/info",
//"hyprland/window"
],
"modules-right": [
"custom/recorder",
"privacy",
"group/brightness",
"group/sound",
"group/connection",
"tray",
"group/together",
//"group/cnoti",
"group/power"
],
// Modules definition
// Up
"hyprland/workspaces": {
"format": "{icon}",
"on-click": "activate",
"all-outputs": true,
"format-icons": {
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"10": "10"
}
},
"hyprland/submap": {
"format": "<b>󰇘</b>",
"max-length": 8,
"tooltip": true
},
"group/info": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"custom/dmark",
"group/gcpu",
"memory",
"disk",
"hyprland/window"
]
},
"hyprland/window": {
"orientation": "vertical",
"format":"<span weight='bold' >{class}</span>",
"spearate-outputs": true,
"icon": false
},
"custom/dmark": {
"format": "",
"tooltip": false
},
"group/gcpu": {
"orientation": "inherit",
"modules": [
"custom/cpu-icon",
"custom/cputemp",
"cpu"
]
},
"custom/cpu-icon": {
"format": "󰻠",
"tooltip": false
},
"custom/cputemp": {
"format": "{}",
"exec": "~/.config/waybar/bin/cputemp",
"interval": 10,
"return-type": "json"
},
"cpu": {
"format": "<b>{usage}󱉸</b>",
"on-click": "foot btop"
},
"memory": {
"format": "<b>  \n{:2}󱉸</b>"
},
"disk": {
"interval": 600,
"format": "<b> 󰋊 \n{percentage_used}󱉸</b>",
"path": "/"
},
// Bottom
"custom/recorder": {
"format": "{}",
"interval": "once",
"exec": "echo ''",
"tooltip": "false",
"exec-if": "pgrep 'wl-screenrec'",
"on-click": "recorder",
"signal": 4
},
"privacy": {
"orientation": "vertical",
"icon-spacing": 4,
"icon-size": 14,
"transition-duration": 250,
"modules": [
{
"type": "screenshare",
"tooltip": true,
"tooltip-icon-size": 24
}
]
},
"group/brightness": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"backlight"
//"backlight/slider"
]
},
"backlight": {
"device": "intel_backlight",
"format": "{icon}",
"format-icons": [
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
""
],
"on-scroll-down": "brightnessctl s 5%-",
"on-scroll-up": "brightnessctl s +5%",
"tooltip": true,
"tooltip-format": "Brightness: {percent}% ",
"smooth-scrolling-threshold": 1
},
"backlight/slider": {
"min": 1,
"max": 100,
"orientation": "vertical",
"device": "intel_backlight"
},
"group/sound": {
"orientation": "inherit",
"modules": [
"group/audio",
"custom/notifications"
]
},
"group/audio": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"pulseaudio",
"pulseaudio#mic",
"pulseaudio/slider"
]
},
"group/cnoti": {
"orientation": "inherit",
"modules": [
"custom/github"
]
},
"group/connection": {
"orientation": "inherit",
"modules": [
//"custom/vpn",
"custom/hotspot",
"group/network"
//"group/bluetooth"
]
},
"group/together": {
"orientation": "inherit",
"modules": [
"group/utils",
"clock"
]
},
"group/utils": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": true
},
"modules": [
"custom/mark",
"custom/weather",
"custom/colorpicker",
"custom/hyprshade",
"idle_inhibitor"
//"custom/hyprkill"
]
},
"group/network": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"network",
"network#speed"
]
},
"group/bluetooth": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": true
},
"modules": [
"bluetooth",
"bluetooth#status"
]
},
"group/battery": {
"orientation":"vertical",
"modules": [
"battery",
"custom/battery_percentage",
]
},
"group/power": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"group/battery",
"power-profiles-daemon",
]
},
"tray": {
"icon-size": 18,
"spacing": 10
},
"pulseaudio": {
"format": "{icon}",
"format-bluetooth": "{icon}",
"tooltip-format": "{volume}% {icon} | {desc}",
"format-muted": "󰖁",
"format-icons": {
"headphones": "",
"handsfree": "󱡏",
"headset": "",
"phone": "",
"portable": "",
"car": " ",
"default": [
"󰕿",
"󰖀",
"󰕾"
]
},
"on-click": "volume mute",
//"on-click-middle": "pavucontrol",
"on-scroll-up": "wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+",
"on-scroll-down": "wpctl set-volume @DEFAULT_AUDIO_SINK@ -5%",
"smooth-scrolling-threshold": 1
},
"pulseaudio#mic": {
"format": "{format_source}",
"format-source": "󰍬",
"format-source-muted": "󰍭",
"tooltip-format": "{volume}% {format_source} ",
"on-click": "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle",
"on-scroll-down": "wpctl set-volume @DEFAULT_SOURCE@ 5%-",
"on-scroll-up": "wpctl set-volume -l 1 @DEFAULT_SOURCE@ 5%+"
},
"pulseaudio/slider": {
"min": 0,
"max": 100,
"orientation": "vertical"
},
"network": {
"format": "{icon}",
"format-icons": {
"wifi": [
"󰤨"
],
"ethernet": [
""
],
"disconnected": [
"󰤮"
]
},
"format-wifi": "󰤨",
"format-ethernet": "",
"format-disconnected": "󰤮",
"format-linked": "󰈁",
"tooltip": false,
"on-click": "python ~/.local/bin/rofi-wifi",
},
"network#speed": {
"format": " {bandwidthDownBits} ",
"rotate": 90,
"interval": 5,
"tooltip-format": "{ipaddr}",
"tooltip-format-wifi": "{essid} ({signalStrength}%)  \n{ipaddr} | {frequency} MHz{icon} ",
"tooltip-format-ethernet": "{ifname} 󰈀 \n{ipaddr} | {frequency} MHz{icon} ",
"tooltip-format-disconnected": "Not Connected to any type of Network",
"tooltip": true,
"on-click": "pgrep -x rofi &>/dev/null && notify-send rofi || networkmanager_dmenu"
},
"bluetooth": {
"format-on": "󰂯",
"format-off": "󰂲",
"format-disabled": "",
"format-connected": "<b>󰂱</b>",
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%",
"on-click": "rofi-bluetooth"
},
"bluetooth#status": {
"format-on": "",
"format-off": "",
"format-disabled": "",
"format-connected": "<b>{num_connections}</b>",
"format-connected-battery": "<small><b>{device_battery_percentage}%</b></small>",
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%",
"on-click": "rofi-bluetooth -config ~/.config/rofi/menu.d/network.rasi -i"
},
"battery": {
"rotate": 270,
"states": {
"good": 95,
"warning": 16,
"critical": 8
},
"format": "{icon}",
"interval": 1,
"format-charging": "󰂄",
"format-full": "<span color='#82A55F'><b>{icon}</b></span>",
"format-icons": [
"󰁻",
"󰁼",
"󰁾",
"󰂀",
"󰂂",
"󰁹"
],
"tooltip-format": "{timeTo} {capacity} % | {power} W"
},
"custom/battery_percentage": {
"format": "<b>{}</b>",
//"exec": "cat /sys/class/power_supply/BAT*/capacity",
// Makes battery like if 85% was the maximum capacity (100%).
// Useful for people that limit charge up to a certain percentage but like having real percentage
"exec": "echo $(( $(cat /sys/class/power_supply/BAT*/capacity) * 100 / 85 ))",
"interval": 10,
"tooltip": false
},
"clock": {
"format": "{:%H\n%M}",
"tooltip-format": "<tt><small>{calendar}</small></tt>",
"calendar": {
"mode": "month",
"mode-mon-col": 3,
"weeks-pos": "right",
"on-scroll": 1,
"on-click-right": "mode",
"on-click": "swaync-client -t",
"format": {
"today": "<span color='#a6e3a1'><b><u>{}</u></b></span>"
}
}
},
"power-profiles-daemon": {
"format": "{icon}",
"tooltip-format": "Power profile: {profile}\nDriver: {driver}",
"tooltip": true,
"format-icons": {
"default": "",
"performance": "<span color='#B37F34'><small></small></span>",
"balanced": "<span><small> </small></span>",
"power-saver": "<span color='#a6e3a1'><small></small></span>"
}
},
"custom/hyprshade": {
"format": "{}",
"tooltip": true,
"signal": 11,
"exec": "toggle-hyprshade status",
"on-click": "toggle-hyprshade",
"return-type": "json"
},
"custom/weather": {
"format": "{}",
"tooltip": true,
"interval": 3600,
"exec": "wttrbar --custom-indicator '{ICON}\n<b>{temp_C}</b>' --location noida",
"return-type": "json"
},
"custom/updates": {
"format": "{}",
"interval": 10800,
"exec": "~/.config/waybar/bin/updatecheck",
"return-type": "json",
"exec-if": "exit 0",
"signal": 8
},
"custom/vpn": {
"format": "{} ",
"exec": "~/.config/waybar/bin/vpn",
"return-type": "json",
"interval": 5
},
"custom/hotspot": {
"format": "{} ",
"exec": "~/.config/waybar/bin/hotspot",
"return-type": "json",
"on-click": "hash wihotspot && wihotspot",
"interval": 5
},
"custom/mark": {
"format": "",
"tooltip": false
},
"custom/colorpicker": {
"format": "{}",
"interval": "once",
"on-click": "hyprpicker",
"signal": 1
},
"custom/hyprkill": {
"format": "{}",
"interval": "once",
"exec": "echo '󰱝\nKill clients using hyrpctl kill'",
"on-click": "sleep 1 && hyprctl kill"
},
"custom/notifications": {
"format": "<b>{}</b> ",
"exec": "noti-cycle -j",
"on-click": "noti-cycle",
"on-click-right": "noti-cycle rofi",
"return-type": "json",
"interval": "once",
"signal": 2
},
"custom/github": {
"format": "{}",
"return-type": "json",
"interval": 3600,
"signal": 9,
"exec": "$HOME/.config/waybar/bin/github.sh",
"on-click": "xdg-open https://github.com/notifications;pkill -RTMIN+9 waybar"
},
"idle_inhibitor": {
"format": "{icon}",
"tooltip-format-activated": "Idle Inhibitor is active",
"tooltip-format-deactivated": "Idle Inhibitor is not active",
"format-icons": {
"activated": "󰅶",
"deactivated": "󰾪"
}
}
}

View file

@ -1,305 +0,0 @@
@import "colors.css";
@define-color active @foreground;
* {
font-size: 17px;
font-family: "JetBrainsMono Nerd Font Propo";
min-width: 8px;
min-height: 0px;
border: none;
border-radius: 0;
box-shadow: none;
text-shadow: none;
padding: 0px;
}
window#waybar {
transition-property: background-color;
transition-duration: 0.5s;
border-radius: 4px;
border: 1px solid alpha(@active, 0.2);
background: @background;
background: alpha(@background, 0.8);
color: @foreground;
}
menu,
tooltip {
border-radius: 2px;
padding: 2px;
border: 1px solid @active;
background: @background;
color: @foreground;
}
menu label,
tooltip label {
font-size: 14px;
color: @foreground;
}
#submap,
#tray>.needs-attention {
animation-name: blink-active;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
.modules-right {
margin: 0px 6px 4px 6px;
border-radius: 4px;
background: alpha(@background, 0);
color: @foreground;
}
.modules-left {
transition-property: background-color;
transition-duration: 0.5s;
margin: 6px 5px 6px 5px; /* Testing with 5 pixels on left/right */
border-radius: 4px;
background: alpha(@background, 0.5);
color: @foreground;
border: 1px solid alpha(@active, 0.1);
}
#gcpu,
#custom-github,
#memory,
#disk,
#together,
#submap,
#custom-weather,
#custom-recorder,
#connection,
#cnoti,
#brightness,
#power,
#custom-updates,
#tray,
/*#audio,*/ /* Duplicate with #sound */
#sound,
#privacy { /*Controls all the right modules for some reason*/
border-radius: 0.15em;
margin: 2px 1px 3px 1px;
background: alpha(darker(@active), 0.25);
border: 1px solid alpha(darker(@active), 0.0);
}
/* Override specific parameters*/
#brightness,
#sound {
padding: 1px 0px;
}
#custom-notifications {
padding-left: 4px;
}
#custom-hotspot,
#custom-github,
#custom-notifications {
font-size: 14px;
}
#custom-vpn,
#custom-hotspot {
background: alpha(darker(@active), 0.3);
}
#privacy-item {
padding: 6px 0px 6px 6px;
}
#gcpu {
padding: 8px 0px 8px 0px;
}
#custom-cpu-icon {
font-size: 25px;
}
#custom-cputemp,
#disk,
#memory,
#cpu {
font-size: 14px;
font-weight: bold;
}
#custom-github {
padding-top: 2px;
}
#custom-dmark {
color: alpha(@foreground, 0.3);
}
#submap {
margin-bottom: 0px;
}
#workspaces {
margin: 0px 2px;
padding: 2px 0px;
border-radius: 8px;
}
#workspaces button {
transition-property: background-color;
transition-duration: 0.1s;
color: @foreground;
background: transparent;
border-radius: 4px;
color: alpha(@foreground, 0.3);
padding: 2px 0px;
}
#workspaces button.urgent {
font-weight: bold;
color: @foreground;
}
#workspaces button.active {
padding: 2px 0px;
background: alpha(@active, 0.4);
color: @foreground;
border-radius: 2px;
}
#network.wifi {
margin: 2px;
}
#network.disconnected {
margin: 2px;
}
#network.ethernet {
margin: 2px;
}
#submap {
min-width: 0px;
margin: 4px 6px 4px 6px;
}
#custom-weather,
#tray {
padding: 4px 0px 4px 0px;
}
#bluetooth {
padding-top: 2px;
}
#group-battery {
/* border-radius: 8px; */
/* padding: 4px 0px; */
margin: 4px 2px 4px 2px;
}
#battery {
font-size: 1.5rem;
border-radius: 3px;
padding: 4px 0px;
margin: 0 0px;
}
#battery.charging {
color: @charging;
}
#battery.discharging.warning {
background-color: #cf9022;
/*animation-name: blink-yellow;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate; */
}
#battery.discharging.critical {
background-color: #c64d4f;
/*animation-name: blink-red;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;*/
}
#custom-battery_percentage {
font-size: 1.1rem;
border-radius: 100px;
/* padding: 0 2px; */
margin: 1px 0;
/* margin: 4px 2px 4px 2px; */
}
#clock {
font-weight: bold;
padding: 4px 2px 2px 2px;
}
#pulseaudio.mic {
border-radius: 4px;
color: @foreground;
padding-left: 2px;
}
#backlight-slider slider,
#pulseaudio-slider slider {
background-color: transparent;
box-shadow: none;
}
#backlight-slider trough,
#pulseaudio-slider trough {
margin-top: 4px;
min-width: 6px;
min-height: 60px;
border-radius: 8px;
background-color: alpha(@background, 0.6);
}
#backlight-slider highlight,
#pulseaudio-slider highlight {
border-radius: 8px;
background-color: @foreground;
}
#bluetooth.discoverable,
#bluetooth.discovering,
#bluetooth.pairable {
border-radius: 8px;
animation-name: blink-active;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
@keyframes blink-active {
to {
background-color: @active;
color: @foreground;
}
}
@keyframes blink-red {
to {
background-color: #c64d4f;
color: @foreground;
}
}
@keyframes blink-yellow {
to {
background-color: #cf9022;
color: @foreground;
}
}

View file

@ -1,292 +0,0 @@
@import "colors.css";
@define-color active @accentColor;
* {
font-size: 16px;
font-family: "JetBrainsMono Nerd Font,JetBrainsMono NF";
min-width: 8px;
min-height: 0px;
border: none;
border-radius: 0;
box-shadow: none;
text-shadow: none;
padding: 0px;
}
window#waybar {
transition-property: background-color;
transition-duration: 0.5s;
border-radius: 4px;
border: 1px solid alpha(@active, 0.2);
background: @background;
background: alpha(@background, 0.7);
color: lighter(@active);
}
menu,
tooltip {
border-radius: 2px;
padding: 2px;
border: 1px solid @active;
background: @background;
color: lighter(@active);
}
menu label,
tooltip label {
font-size: 14px;
color: lighter(@active);
}
#submap,
#tray>.needs-attention {
animation-name: blink-active;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
.modules-right {
margin: 0px 6px 4px 6px;
border-radius: 4px;
background: alpha(@background, 0);
color: lighter(@active);
}
.modules-left {
transition-property: background-color;
transition-duration: 0.5s;
margin: 6px 5px 6px 5px; /* Testing with 5 pixels on left/right */
border-radius: 4px;
background: alpha(@background, 0.0);
color: lighter(@active);
border: 1px solid alpha(@active, 0.0);
}
#gcpu,
#custom-github,
#memory,
#disk,
#together,
#submap,
#custom-weather,
#custom-recorder,
#connection,
#cnoti,
#brightness,
#power,
#custom-updates,
#tray,
/*#audio,*/ /* Duplicate with #sound */
#sound,
#privacy { /*Controls all the right modules for some reason*/
border-radius: 2px;
margin: 2px 1px 3px 1px;
background: alpha(darker(@active), 0.0);
border: 1px solid alpha(darker(@active), 0.0);
}
/* Override specific parameters*/
#brightness,
#sound {
padding: 1px 0px;
}
#custom-notifications {
padding-left: 4px;
}
#custom-hotspot,
#custom-github,
#custom-notifications {
font-size: 14px;
}
#custom-hotspot {
padding-right: 2px;
}
#custom-vpn,
#custom-hotspot {
background: alpha(darker(@active), 0.3);
}
#privacy-item {
padding: 6px 0px 6px 6px;
}
#gcpu {
padding: 8px 0px 8px 0px;
}
#custom-cpu-icon {
font-size: 25px;
}
#custom-cputemp,
#disk,
#memory,
#cpu {
font-size: 14px;
font-weight: bold;
}
#custom-github {
padding-top: 2px;
padding-right: 4px;
}
#custom-dmark {
color: alpha(@foreground, 0.3);
}
#submap {
margin-bottom: 0px;
}
#workspaces {
margin: 0px 2px;
padding: 2px 0px;
border-radius: 8px;
}
#workspaces button {
transition-property: background-color;
transition-duration: 0.1s;
color: @foreground;
background: transparent;
border-radius: 4px;
color: alpha(@foreground, 0.3);
padding: 2px 0px;
}
#workspaces button.urgent {
font-weight: bold;
color: @foreground;
}
#workspaces button.active {
padding: 2px 0px;
background: alpha(@active, 0.4);
color: lighter(@active);
border-radius: 2px;
}
#network.wifi {
padding-right: 5px;
margin: 2px 0px;
}
#network.disconnected {
padding-right: 5px;
margin: 2px 0px;
}
#network.ethernet {
padding-right: 3px;
margin: 2px 0px;
}
#submap {
min-width: 0px;
margin: 4px 6px 4px 6px;
}
#custom-weather,
#tray {
padding: 4px 0px 4px 0px;
}
#bluetooth {
padding-top: 2px;
}
#battery {
border-radius: 8px;
padding: 4px 0px;
margin: 4px 2px 4px 2px;
}
#battery.discharging.warning {
animation-name: blink-yellow;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#battery.discharging.critical {
animation-name: blink-red;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#clock {
font-weight: bold;
padding: 4px 2px 2px 2px;
}
#pulseaudio.mic {
border-radius: 4px;
color: lighter(@active);
padding-left: 2px;
}
#backlight-slider slider,
#pulseaudio-slider slider {
background-color: transparent;
box-shadow: none;
}
#backlight-slider trough,
#pulseaudio-slider trough {
margin-top: 4px;
min-width: 6px;
min-height: 60px;
border-radius: 8px;
background-color: alpha(@background, 0.6);
}
#backlight-slider highlight,
#pulseaudio-slider highlight {
border-radius: 8px;
background-color: lighter(@active);
}
#bluetooth.discoverable,
#bluetooth.discovering,
#bluetooth.pairable {
border-radius: 8px;
animation-name: blink-active;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
@keyframes blink-active {
to {
background-color: @active;
color: @foreground;
}
}
@keyframes blink-red {
to {
background-color: #c64d4f;
color: @foreground;
}
}
@keyframes blink-yellow {
to {
background-color: #cf9022;
color: @foreground;
}
}

View file

@ -1,224 +0,0 @@
{
"layer": "top",
"position": "bottom",
"height": 24,
"spacing": 5,
"modules-left": ["hyprland/workspaces"],
"modules-center": ["clock"],
"modules-right": ["tray", "group/audio", "bluetooth", "group/network_grp", "idle_inhibitor", "group/power" ],
"group/network_grp": {
"orientation": "inherit",
"drawer": {
"transition-duration": 300,
"transition-left-to-right": false
},
"modules": [
"network",
"network#speed"
]
},
"group/audio": {
"orientation": "inherit",
"drawer": {
"transition-duration": 300,
"transition-left-to-right": false
},
"modules": [
"pulseaudio",
"pulseaudio#mic",
"pulseaudio#volume",
]
},
"group/power": {
"orientation": "inherit",
"drawer": {
"transition-duration": 300,
"transition-left-to-right": true
},
"modules": [
"battery",
"custom/battery_percentage",
"power-profiles-daemon",
]
},
"hyprland/workspaces": {
"format": "<span size='larger'>{icon}</span>",
"on-click": "activate",
"format-icons": {
"active": "\uf444",
"default": "\uf4c3"
},
"icon-size": 10,
"sort-by-number": true,
"persistent-workspaces": {
"1": [],
"2": [],
"3": [],
"4": [],
"5": [],
}
},
"clock": {
"format": "{:%d.%m.%Y | %H:%M}"
},
//"wireplumber": {
// "format": "\udb81\udd7e {volume}%",
// "max-volume": 100,
// "scroll-step": 5
//},
"pulseaudio": {
"format": "{icon} ",
"format-bluetooth": "{icon}",
"tooltip-format": "{volume}% {icon} | {desc}",
"format-muted": "󰖁",
"format-icons": {
"headphones": "",
"handsfree": "󱡏",
"headset": "",
"phone": "",
"portable": "",
"car": " ",
"default": [
"󰕿",
"󰖀",
"󰕾"
]
},
"on-click": "volume mute",
//"on-click-middle": "pavucontrol",
"on-scroll-up": "wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+",
"on-scroll-down": "wpctl set-volume @DEFAULT_AUDIO_SINK@ -5%",
"smooth-scrolling-threshold": 1
},
"pulseaudio#volume": {
"format": " {volume}% "
},
// TODO missing
"pulseaudio#mic": {
"format": "{format_source}",
"format-source": "󰍬",
"format-source-muted": "󰍭",
"tooltip-format": "{volume}% {format_source} ",
"on-click": "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle",
"on-scroll-down": "wpctl set-volume @DEFAULT_SOURCE@ 5%-",
"on-scroll-up": "wpctl set-volume -l 1 @DEFAULT_SOURCE@ 5%+"
},
// "battery": {
// "bat": "BAT1",
// "interval": 60,
// "format": "{icon} {capacity}%",
// "format-icons": ["\uf244", "\uf243", "\uf242", "\uf241", "\uf240"],
// },
"battery": {
"rotate": 270,
"states": {
"good": 95,
"warning": 16,
"critical": 8
},
"format": "{icon}",
"interval": 1,
"format-charging": "󰂄",
"format-full": "<span color='#82A55F'><b>{icon}</b></span>",
"format-icons": [
"󰁻",
"󰁼",
"󰁾",
"󰂀",
"󰂂",
"󰁹"
],
"tooltip-format": "{timeTo} {capacity} % | {power} W"
},
"custom/battery_percentage": {
"format": "{}",
//"exec": "cat /sys/class/power_supply/BAT*/capacity",
// Makes battery like if 85% was the maximum capacity (100%).
// Useful for people that limit charge up to a certain percentage but like having real percentage
"exec": "echo $(( $(cat /sys/class/power_supply/BAT*/capacity) * 100 / 85 ))%",
"interval": 10,
"tooltip": false
},
"memory": {
"interval": 30,
"format": "\uf4bc {used:0.1f}G"
},
"temperature": {
"format": "{temperatureC}°C"
},
"network": {
"format": "",
"format-ethernet": "\udb83\udc9d",
"format-wifi": "{icon}",
"format-disconnected": "\udb83\udc9c",
"format-icons": ["\udb82\udd2f", "\udb82\udd1f", "\udb82\udd22", "\udb82\udd25", "\udb82\udd28"],
"tooltip-format-wifi": "{essid} ({signalStrength}%)",
"tooltip-format-ethernet": "{ifname}",
"tooltip-format-disconnected": "Disconnected",
"on-click": "python ~/.local/bin/rofi-wifi",
},
"network#speed": {
"format": "{bandwidthDownBits}",
"interval": 5,
"tooltip-format": "{ipaddr}",
"tooltip-format-wifi": "{essid} ({signalStrength}%)  \n{ipaddr} | {frequency} MHz{icon} ",
"tooltip-format-ethernet": "{ifname} 󰈀 \n{ipaddr} | {frequency} MHz{icon}",
"tooltip-format-disconnected": "Disconnected",
"tooltip": true
},
"bluetooth": {
"format": "\udb80\udcaf",
"format-disabled": "\udb80\udcb2",
"format-connected": "\udb80\udcb1",
"tooltip-format": "{controller_alias}\t{controller_address}",
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
"on-click": "rofi-bluetooth"
},
"power-profiles-daemon": {
"format": "{icon}",
"tooltip-format": "Power profile: {profile}\nDriver: {driver}",
"tooltip": true,
"format-icons": {
"default": "",
"performance": "<span color='#B37F34'><small></small></span>",
"balanced": "<span><small> </small></span>",
"power-saver": "<span color='#a6e3a1'><small></small></span>"
}
},
"hyprland/language": {
"format": "{short}"
},
"tray": {
"icon-size": 16,
"spacing": 16
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "\udb80\udd76",
"deactivated": "\udb83\udfaa"
}
}
}

View file

@ -1,60 +0,0 @@
@define-color foreground #eeeeee;
@define-color foreground-inactive #aaaaaa;
@define-color background #000000;
* {
font-family: JetBrainsMono Nerd Font Propo;
font-size: 17px;
padding: 0;
margin: 0;
}
#waybar {
color: @foreground;
background-color: @background;
}
#workspaces button {
color: @foreground;
padding: 0 0.2em;
}
#workspaces button.empty {
color: @foreground-inactive;
}
#memory,
#wireplumber,
#audio,
#language,
#network,
#bluetooth
{
padding-right: 1em
}
#custom-battery_percentage,
#battery {
padding-right: 0.3em
}
#power-profiles-daemon {
padding-right: 0.7em;
padding-left: 0.4em
}
#idle_inhibitor {
padding-right: 0.6em
}
#tray {
padding-right: 1em
}
#network_grp {
padding: 0em
}
#pulseaudio.mic {
padding-left: .7em
}

View file

@ -1 +0,0 @@
../colors/colors.css

View file

@ -0,0 +1,4 @@
@define-color foreground #c5c5c5;
@define-color background #18191c;
@define-color accentColor #b6c8d3;

View file

@ -1 +0,0 @@
Boussole/config.jsonc

View file

@ -0,0 +1,478 @@
{
"layer": "top",
"position": "left",
"margin": "1 1 1 1",
"reload_style_on_change": true,
"modules-left": [
//"custom/updates",
"hyprland/workspaces",
"hyprland/submap"
//"group/info",
//"hyprland/window"
],
"hyprland/workspaces": {
"format": "{icon}",
"on-click": "activate",
"all-outputs": true,
"format-icons": {
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5",
"6": "6",
"7": "7",
"8": "8",
"9": "9",
"10": "10"
}
},
"hyprland/window": {
"format":"",
"spearate-outputs": true,
"icon": true
},
"hyprland/submap": {
"format": "<b>󰇘</b>",
"max-length": 8,
"tooltip": true
},
"group/info": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"custom/dmark",
"group/gcpu",
"memory",
"disk"
]
},
"custom/dmark": {
"format": "",
"tooltip": false
},
"group/gcpu": {
"orientation": "inherit",
"modules": [
"custom/cpu-icon",
"custom/cputemp",
"cpu"
]
},
"custom/cpu-icon": {
"format": "󰻠",
"tooltip": false
},
"custom/cputemp": {
"format": "{}",
"exec": "~/.config/waybar/bin/cputemp",
"interval": 10,
"return-type": "json"
},
"cpu": {
"format": "<b>{usage}󱉸</b>",
"on-click": "foot btop"
},
"memory": {
"format": "<b>  \n{:2}󱉸</b>"
},
"disk": {
"interval": 600,
"format": "<b> 󰋊 \n{percentage_used}󱉸</b>",
"path": "/"
},
"modules-right": [
"custom/recorder",
"privacy",
"group/brightness",
"group/sound",
"group/connection",
"tray",
"group/together",
//"group/cnoti",
"group/power"
],
"custom/recorder": {
"format": "{}",
"interval": "once",
"exec": "echo ''",
"tooltip": "false",
"exec-if": "pgrep 'wl-screenrec'",
"on-click": "recorder",
"signal": 4
},
"privacy": {
"orientation": "vertical",
"icon-spacing": 4,
"icon-size": 14,
"transition-duration": 250,
"modules": [
{
"type": "screenshare",
"tooltip": true,
"tooltip-icon-size": 24
}
]
},
"group/brightness": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"backlight"
//"backlight/slider"
]
},
"backlight": {
"device": "intel_backlight",
"format": "{icon}",
"format-icons": [
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
""
],
"on-scroll-down": "brightnessctl s 5%-",
"on-scroll-up": "brightnessctl s +5%",
"tooltip": true,
"tooltip-format": "Brightness: {percent}% ",
"smooth-scrolling-threshold": 1
},
"backlight/slider": {
"min": 1,
"max": 100,
"orientation": "vertical",
"device": "intel_backlight"
},
"group/sound": {
"orientation": "inherit",
"modules": [
"group/audio",
"custom/notifications"
]
},
"group/audio": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"pulseaudio",
"pulseaudio#mic",
"pulseaudio/slider"
]
},
"group/cnoti": {
"orientation": "inherit",
"modules": [
"custom/github"
]
},
"group/connection": {
"orientation": "inherit",
"modules": [
//"custom/vpn",
"custom/hotspot",
"group/network"
//"group/bluetooth"
]
},
"group/together": {
"orientation": "inherit",
"modules": [
"group/utils",
"clock"
]
},
"group/utils": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": true
},
"modules": [
"custom/mark",
"custom/weather",
"custom/colorpicker",
"custom/hyprshade",
"idle_inhibitor",
"custom/hyprkill"
]
},
"group/network": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"network",
"network#speed"
]
},
"group/bluetooth": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": true
},
"modules": [
"bluetooth",
"bluetooth#status"
]
},
"group/power": {
"orientation": "inherit",
"drawer": {
"transition-duration": 500,
"transition-left-to-right": false
},
"modules": [
"battery",
"power-profiles-daemon"
]
},
"tray": {
"icon-size": 18,
"spacing": 10
},
"pulseaudio": {
"format": "{icon}",
"format-bluetooth": "{icon}",
"tooltip-format": "{volume}% {icon} | {desc}",
"format-muted": "󰖁",
"format-icons": {
"headphones": "",
"handsfree": "󱡏",
"headset": "",
"phone": "",
"portable": "",
"car": " ",
"default": [
"󰕿",
"󰖀",
"󰕾"
]
},
"on-click": "volume mute",
//"on-click-middle": "pavucontrol",
"on-scroll-up": "wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+",
"on-scroll-down": "wpctl set-volume @DEFAULT_AUDIO_SINK@ -5%",
"smooth-scrolling-threshold": 1
},
"pulseaudio#mic": {
"format": "{format_source}",
"format-source": "󰍬",
"format-source-muted": "󰍭",
"tooltip-format": "{volume}% {format_source} ",
"on-click": "wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle",
"on-scroll-down": "wpctl set-volume @DEFAULT_SOURCE@ 5%-",
"on-scroll-up": "wpctl set-volume -l 1 @DEFAULT_SOURCE@ 5%+"
},
"pulseaudio/slider": {
"min": 0,
"max": 100,
"orientation": "vertical"
},
"network": {
"format": "{icon}",
"format-icons": {
"wifi": [
"󰤨"
],
"ethernet": [
""
],
"disconnected": [
"󰤮"
]
},
"format-wifi": "󰤨",
"format-ethernet": "",
"format-disconnected": "󰤮",
"format-linked": "󰈁",
"tooltip": false,
//"on-click": "pgrep -x rofi &>/dev/null && notify-send rofi || networkmanager_dmenu"
"on-click": "kitty nmtui"
},
"network#speed": {
"format": " {bandwidthDownBits} ",
"rotate": 90,
"interval": 5,
"tooltip-format": "{ipaddr}",
"tooltip-format-wifi": "{essid} ({signalStrength}%)  \n{ipaddr} | {frequency} MHz{icon} ",
"tooltip-format-ethernet": "{ifname} 󰈀 \n{ipaddr} | {frequency} MHz{icon} ",
"tooltip-format-disconnected": "Not Connected to any type of Network",
"tooltip": true,
"on-click": "pgrep -x rofi &>/dev/null && notify-send rofi || networkmanager_dmenu"
},
"bluetooth": {
"format-on": "󰂯",
"format-off": "󰂲",
"format-disabled": "",
"format-connected": "<b>󰂱</b>",
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%",
//"on-click": "rofi-bluetooth -config ~/.config/rofi/menu.d/network.rasi -i"
"on-click": "toggle-bluetooth"
},
"bluetooth#status": {
"format-on": "",
"format-off": "",
"format-disabled": "",
"format-connected": "<b>{num_connections}</b>",
"format-connected-battery": "<small><b>{device_battery_percentage}%</b></small>",
"tooltip-format": "{controller_alias}\t{controller_address}\n\n{num_connections} connected",
"tooltip-format-connected": "{controller_alias}\t{controller_address}\n\n{num_connections} connected\n\n{device_enumerate}",
"tooltip-format-enumerate-connected": "{device_alias}\t{device_address}",
"tooltip-format-enumerate-connected-battery": "{device_alias}\t{device_address}\t{device_battery_percentage}%",
"on-click": "rofi-bluetooth -config ~/.config/rofi/menu.d/network.rasi -i"
},
"battery": {
"rotate": 270,
"states": {
"good": 95,
"warning": 16,
"critical": 8
},
"format": "{icon}",
"interval": 1,
"format-charging": "<b>{icon} </b>",
"format-full": "<span color='#82A55F'><b>{icon}</b></span>",
"format-icons": [
"󰁻",
"󰁼",
"󰁾",
"󰂀",
"󰂂",
"󰁹"
],
"tooltip-format": "{timeTo} {capacity} % | {power} W"
},
"clock": {
"format": "{:%H\n%M}",
"tooltip-format": "<tt><small>{calendar}</small></tt>",
"calendar": {
"mode": "month",
"mode-mon-col": 3,
"weeks-pos": "right",
"on-scroll": 1,
"on-click-right": "mode",
"format": {
"today": "<span color='#a6e3a1'><b><u>{}</u></b></span>"
}
}
},
"power-profiles-daemon": {
"format": "{icon}",
"tooltip-format": "Power profile: {profile}\nDriver: {driver}",
"tooltip": true,
"format-icons": {
"default": "",
"performance": "<span color='#B37F34'><small></small></span>",
"balanced": "<span><small> </small></span>",
"power-saver": "<span color='#a6e3a1'><small></small></span>"
}
},
"custom/hyprshade": {
"format": "{}",
"tooltip": true,
"signal": 11,
"exec": "toggle-hyprshade status",
"on-click": "toggle-hyprshade",
"return-type": "json"
},
"custom/weather": {
"format": "{}",
"tooltip": true,
"interval": 3600,
"exec": "wttrbar --custom-indicator '{ICON}\n<b>{temp_C}</b>' --location noida",
"return-type": "json"
},
"custom/updates": {
"format": "{}",
"interval": 10800,
"exec": "~/.config/waybar/bin/updatecheck",
"return-type": "json",
"exec-if": "exit 0",
"signal": 8
},
"custom/vpn": {
"format": "{} ",
"exec": "~/.config/waybar/bin/vpn",
"return-type": "json",
"interval": 5
},
"custom/hotspot": {
"format": "{} ",
"exec": "~/.config/waybar/bin/hotspot",
"return-type": "json",
"on-click": "hash wihotspot && wihotspot",
"interval": 5
},
"custom/mark": {
"format": "",
"tooltip": false
},
"custom/colorpicker": {
"format": "{}",
"return-type": "json",
"interval": "once",
"exec": "colorpicker -j",
"on-click": "sleep 1 && colorpicker",
"signal": 1
},
"custom/hyprkill": {
"format": "{}",
"interval": "once",
"exec": "echo '󰱝\nKill clients using hyrpctl kill'",
"on-click": "sleep 1 && hyprctl kill"
},
"custom/notifications": {
"format": "<b>{}</b> ",
"exec": "noti-cycle -j",
"on-click": "noti-cycle",
"on-click-right": "noti-cycle rofi",
"return-type": "json",
"interval": "once",
"signal": 2
},
"custom/github": {
"format": "{}",
"return-type": "json",
"interval": 3600,
"signal": 9,
"exec": "$HOME/.config/waybar/bin/github.sh",
"on-click": "xdg-open https://github.com/notifications;pkill -RTMIN+9 waybar"
},
"idle_inhibitor": {
"format": "{icon}",
"tooltip-format-activated": "Idle Inhibitor is active",
"tooltip-format-deactivated": "Idle Inhibitor is not active",
"format-icons": {
"activated": "󰅶",
"deactivated": "󰾪"
}
}
}

View file

@ -1 +0,0 @@
Boussole/style.css

View file

@ -0,0 +1,292 @@
@import "colors.css";
@define-color active @accentColor;
* {
font-size: 16px;
font-family: "JetBrainsMono Nerd Font,JetBrainsMono NF";
min-width: 8px;
min-height: 0px;
border: none;
border-radius: 0;
box-shadow: none;
text-shadow: none;
padding: 0px;
}
window#waybar {
transition-property: background-color;
transition-duration: 0.5s;
border-radius: 4px;
border: 1px solid alpha(@active, 0.2);
background: @background;
background: alpha(@background, 0.7);
color: lighter(@active);
}
menu,
tooltip {
border-radius: 2px;
padding: 2px;
border: 1px solid @active;
background: @background;
color: lighter(@active);
}
menu label,
tooltip label {
font-size: 14px;
color: lighter(@active);
}
#submap,
#tray>.needs-attention {
animation-name: blink-active;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
.modules-right {
margin: 0px 6px 4px 6px;
border-radius: 4px;
background: alpha(@background, 0);
color: lighter(@active);
}
.modules-left {
transition-property: background-color;
transition-duration: 0.5s;
margin: 6px 5px 6px 5px; /* Testing with 5 pixels on left/right */
border-radius: 4px;
background: alpha(@background, 0.5);
color: lighter(@active);
border: 1px solid alpha(@active, 0.1);
}
#gcpu,
#custom-github,
#memory,
#disk,
#together,
#submap,
#custom-weather,
#custom-recorder,
#connection,
#cnoti,
#brightness,
#power,
#custom-updates,
#tray,
/*#audio,*/ /* Duplicate with #sound */
#sound,
#privacy { /*Controls all the right modules for some reason*/
border-radius: 2px;
margin: 2px 1px 3px 1px;
background: alpha(darker(@active), 0.3);
border: 1px solid alpha(darker(@active), 0.2);
}
/* Override specific parameters*/
#brightness,
#sound {
padding: 1px 0px;
}
#custom-notifications {
padding-left: 4px;
}
#custom-hotspot,
#custom-github,
#custom-notifications {
font-size: 14px;
}
#custom-hotspot {
padding-right: 2px;
}
#custom-vpn,
#custom-hotspot {
background: alpha(darker(@active), 0.3);
}
#privacy-item {
padding: 6px 0px 6px 6px;
}
#gcpu {
padding: 8px 0px 8px 0px;
}
#custom-cpu-icon {
font-size: 25px;
}
#custom-cputemp,
#disk,
#memory,
#cpu {
font-size: 14px;
font-weight: bold;
}
#custom-github {
padding-top: 2px;
padding-right: 4px;
}
#custom-dmark {
color: alpha(@foreground, 0.3);
}
#submap {
margin-bottom: 0px;
}
#workspaces {
margin: 0px 2px;
padding: 2px 0px;
border-radius: 8px;
}
#workspaces button {
transition-property: background-color;
transition-duration: 0.1s;
color: @foreground;
background: transparent;
border-radius: 4px;
color: alpha(@foreground, 0.3);
padding: 2px 0px;
}
#workspaces button.urgent {
font-weight: bold;
color: @foreground;
}
#workspaces button.active {
padding: 2px 0px;
background: alpha(@active, 0.4);
color: lighter(@active);
border-radius: 2px;
}
#network.wifi {
padding-right: 5px;
margin: 2px 0px;
}
#network.disconnected {
padding-right: 5px;
margin: 2px 0px;
}
#network.ethernet {
padding-right: 3px;
margin: 2px 0px;
}
#submap {
min-width: 0px;
margin: 4px 6px 4px 6px;
}
#custom-weather,
#tray {
padding: 4px 0px 4px 0px;
}
#bluetooth {
padding-top: 2px;
}
#battery {
border-radius: 8px;
padding: 4px 0px;
margin: 4px 2px 4px 2px;
}
#battery.discharging.warning {
animation-name: blink-yellow;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#battery.discharging.critical {
animation-name: blink-red;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
#clock {
font-weight: bold;
padding: 4px 2px 2px 2px;
}
#pulseaudio.mic {
border-radius: 4px;
color: lighter(@active);
padding-left: 2px;
}
#backlight-slider slider,
#pulseaudio-slider slider {
background-color: transparent;
box-shadow: none;
}
#backlight-slider trough,
#pulseaudio-slider trough {
margin-top: 4px;
min-width: 6px;
min-height: 60px;
border-radius: 8px;
background-color: alpha(@background, 0.6);
}
#backlight-slider highlight,
#pulseaudio-slider highlight {
border-radius: 8px;
background-color: lighter(@active);
}
#bluetooth.discoverable,
#bluetooth.discovering,
#bluetooth.pairable {
border-radius: 8px;
animation-name: blink-active;
animation-duration: 1s;
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
@keyframes blink-active {
to {
background-color: @active;
color: @foreground;
}
}
@keyframes blink-red {
to {
background-color: #c64d4f;
color: @foreground;
}
}
@keyframes blink-yellow {
to {
background-color: #cf9022;
color: @foreground;
}
}

View file

@ -1,101 +0,0 @@
/* Boussole theme by Gu://em_*/
/* Based on work done by */
/* Newman Sanchez (https://github.com/newmanls) */
* {
font: "JetBrainsMono Nerd Font Propo Regular 12";
bg0: #0d1117;
bg1: #1a2330;
fg0: #eeffff;
accent-color: #e64e4e;
urgent-color: #ffcb6b;
background-color: transparent;
text-color: @fg0;
margin: 0;
padding: 0;
spacing: 0;
}
window {
location: center;
width: 600;
background-color: @bg0;
/*border-radius: 4px;*/
}
inputbar {
spacing: 8px;
padding: 8px;
background-color: @bg1;
children: [ prompt, entry ];
}
prompt, entry, element-icon, element-text {
vertical-align: 0.5;
}
prompt {
text-color: @accent-color;
}
textbox {
padding: 8px;
background-color: @bg1;
}
listview {
padding: 4px 0;
lines: 8;
columns: 1;
fixed-height: false;
}
element {
padding: 8px;
spacing: 8px;
}
element normal normal {
text-color: @fg0;
}
element normal urgent {
text-color: @urgent-color;
}
element normal active {
text-color: @accent-color;
}
element alternate active {
text-color: @accent-color;
}
element selected {
text-color: @bg0;
}
element selected normal, element selected active {
background-color: @accent-color;
}
element selected urgent {
background-color: @urgent-color;
}
element-icon {
size: 0.8em;
}
element-text {
text-color: inherit;
}

View file

@ -1 +1 @@
rofi-bluetooth-git albert

View file

@ -4,7 +4,5 @@ fastfetch
fzf fzf
git git
gnome-keyring gnome-keyring
helix
openssh openssh
wget
zoxide zoxide

View file

@ -8,9 +8,8 @@ mandoc
man-pages man-pages
networkmanager networkmanager
os-prober os-prober
sof-firmware
stow
sudo sudo
sof-firmware
ufw ufw
vim vim
zram-generator zram-generator

View file

@ -1,23 +1,18 @@
foot pipewire-jack
grim pipewire
wireplumber
pipewire-pulse
greetd-tuigreet
hypridle hypridle
hyprland hyprland
hyprland-qtutils
hyprlock hyprlock
hyprpaper hyprpaper
hyprpicker hyprland-qtutils
hyprpolkitagent hyprpolkitagent
hyprsunset
ly
pipewire
pipewire-jack
pipewire-pulse
power-profiles-daemon
pulsemixer
rofi
rofimoji
slurp
swaync
waybar
wireplumber
xdg-desktop-portal-hyprland xdg-desktop-portal-hyprland
waybar
power-profiles-daemon
fnott
kitty
grim
slurp

View file

@ -1,4 +1,3 @@
bluez bluez
bluez-utils bluez-utils
blueman blueman
fprintd

62
setup.sh Executable file → Normal file
View file

@ -1,8 +1,7 @@
#!/bin/sh #!/bin/sh
version="Beta 26.04.27-1" version="Beta 25.04.04-2"
echo "Atlas Desktop Installer - ${version}" echo -e "Atlas Desktop Installer - ${version}\n"
echo
# Definitions # Definitions
@ -11,31 +10,27 @@ script_path=$PWD
pkgs_path="${script_path}/packages" pkgs_path="${script_path}/packages"
config_path="${script_path}/config" config_path="${script_path}/config"
CPU_vendor=$(lscpu | grep Vendor | awk '{print $NF}') CPU_vendor=$(lscpu | grep Vendor | awk '{print $NF}')
dotfiles_path="$HOME/.dotfiles" dotfiles_path="~/.dotfiles"
## Functions ## Functions
install() { function install() {
echo echo -e "\nDownloading $1 packages...\n"
echo "Downloading $1 packages..." sudo pacman -Syu --noconfirm --color auto $(cat $pkgs_path/$1.pkgs)
echo echo -e "\n\nDone\n"
sudo pacman -Syu --noconfirm --color auto "$(cat "$pkgs_path"/"$1".pkgs)"
printf "\n\nDone\n\n"
} }
install_aur() { function install_aur() {
echo echo -e "\nDownloading $1 packages...\n"
echo "Downloading $1 packages..." paru -Syu --noconfirm --color auto $(cat $pkgs_path/$1.pkgs)
echo echo -e "\nDone\n"
paru -Syu --noconfirm --color auto "$(cat "$pkgs_path"/"$1".pkgs)"
printf "\n\nDone\n\n"
} }
# Checks # Checks
## Sudo installed ## Sudo installed
pacman -Q sudo > /dev/null
if ! pacman -Q sudo > /dev/null; then if [ $? != 0 ]; then
echo "Please install 'sudo' first" echo "Please install 'sudo' first"
exit 1 exit 1
fi fi
@ -64,7 +59,7 @@ install desktop
install theming install theming
## Vendor specific packages ## Vendor specific packages
if [ "$CPU_vendor" = "Genuine Intel" ]; then if [ $CPU_vendor == "Genuine Intel" ]; then
install intel install intel
fi fi
@ -73,7 +68,7 @@ git clone https://aur.archlinux.org/paru.git /tmp/paru &&
echo "Installing paru" && echo "Installing paru" &&
cd /tmp/paru && cd /tmp/paru &&
makepkg -si makepkg -si
cd "$script_path" || exit 1 cd $script_path
## AUR packages ## AUR packages
install_aur aur install_aur aur
@ -81,37 +76,40 @@ install_aur aur
# Configuration # Configuration
printf "\n--- Configuration ---\n\n" echo -e "\n--- Configuration ---\n"
## Dotfiles ## Dotfiles
echo "Copying configuration files" echo "Copying configuration files"
cp -r "$config_path" "$dotfiles_path" && cp -r $config_path $dotfiles_path &&
cd "$dotfiles_path" && cd $dotfiles_path &&
stow . stow .
cd "$script_path" || exit 1 cd $script_path
## Install launcher theme (albert)
sudo ln -s .config/albert/schemes/Seventy\ Eight.qss /usr/share/albert/widgetsboxmodel/themes/
## Swap (Zram) ## Swap (Zram)
is_zram_active=$(sudo systemctl is-active systemd-zram-setup@zram0.service) is_zram_active=$(sudo systemctl is-active systemd-zram-setup@zram0.service)
if [ "$is_zram_active" != "active" ]; then if [ is_zram_active != "active" ]; then
printf "\n========================================\n" echo -e "\n========================================"
echo "WARNING: you don't have Zram enabled" echo "WARNING: you don't have Zram enabled"
echo "Since this script is not yet capable of activating zram, you'll have to do it yourself" echo "Since this script is not yet capable of activating zram, you'll have to do it yourself"
echo "Please refer to https://wiki.archlinux.org/title/Zram#Using_zram-generator" echo "Please refer to https://wiki.archlinux.org/title/Zram#Using_zram-generator"
printf "========================================\n\n" echo -e "========================================\n"
fi fi
## Mandatory Access Control (Apparmor) ## Mandatory Access Control (Apparmor)
is_aa_active=$(sudo systemctl is-active apparmor.service) is_aa_active=$(sudo systemctl is-active apparmor.service)
if [ "$is_aa_active" != "active" ]; then if [ is_aa_active != "active" ]; then
printf "\n========================================\n" echo -e "\n========================================"
echo "WARNING: you don't have AppArmor enabled" echo "WARNING: you don't have AppArmor enabled"
echo "Since this script is not yet capable of managing kernel parameters, you'll have to do it yourself" echo "Since this script is not yet capable of managing kernel parameters, you'll have to do it yourself"
echo "Please refer to https://wiki.archlinux.org/title/AppArmor" echo "Please refer to https://wiki.archlinux.org/title/AppArmor"
printf "========================================\n\n" echo -e "========================================\n"
fi fi
## Display manager (Ly) ## Display manager (Greetd)
sudo systemctl enable ly@tty1.service sudo systemctl enable greetd
## Firewall (UFW) ## Firewall (UFW)
sudo systemctl enable ufw sudo systemctl enable ufw