First commit: Beta 25.04.04
This commit is contained in:
commit
e6b08b867f
43
README.md
Normal file
43
README.md
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
# Atlas Desktop installer
|
||||||
|
|
||||||
|
This project is an automated installer for the Atlas Desktop.
|
||||||
|
|
||||||
|
## Disclaimer
|
||||||
|
|
||||||
|
### ⚠ 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.
|
||||||
|
|
||||||
|
Also you will very probably miss some software you're used to. I'll strongly recommend you to check the [Additionnal packages](https://hedgedoc.oblic-parallels.fr/s/JSR33pjd_#Additional-packages) section to know about some open source utilities that fit perfectly within the desktop.
|
||||||
|
More generally give a look to the (Quick start guide)[https://hedgedoc.oblic-parallels.fr/s/JSR33pjd_]
|
||||||
|
|
||||||
|
If something doesn't work or behaves anormally don't hesitate to contact me so that it will be fixed for future users.
|
||||||
|
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
You'll just need an already functional (even basic) **Arch Linux** system with `sudo` installed.
|
||||||
|
Setup will take care of configuring AppArmor and Zram if it hasn't been done yet.
|
||||||
|
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Very simple, clone the project (or download it directly from the web interface)
|
||||||
|
```sh=
|
||||||
|
git clone https://forge.oblic-parallels.fr/guillm/atlas-install
|
||||||
|
```
|
||||||
|
Make `setup.sh` executable
|
||||||
|
```sh=
|
||||||
|
chmod u+x setup.sh
|
||||||
|
```
|
||||||
|
And run it
|
||||||
|
```sh=
|
||||||
|
./setup.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
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.
|
||||||
|
|
||||||
|
## Future improvements
|
||||||
|
|
||||||
|
- Nvidia cards handling
|
||||||
|
- Cleaner way to enable/disable some packages / configuratuions
|
72
config/.config/albert/config
Normal file
72
config/.config/albert/config
Normal 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
|
108
config/.config/albert/schemes/Seventy Eight.qss
Normal file
108
config/.config/albert/schemes/Seventy Eight.qss
Normal 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;
|
||||||
|
}
|
1
config/.config/codium-flags.conf
Normal file
1
config/.config/codium-flags.conf
Normal file
|
@ -0,0 +1 @@
|
||||||
|
--enable-features=UseOzonePlatform --ozone-platform=wayland
|
|
@ -0,0 +1,5 @@
|
||||||
|
Some((
|
||||||
|
red: 0.93333334,
|
||||||
|
green: 0.4235294,
|
||||||
|
blue: 0.30196077,
|
||||||
|
))
|
|
@ -0,0 +1 @@
|
||||||
|
3
|
|
@ -0,0 +1,6 @@
|
||||||
|
Some((
|
||||||
|
red: 0.11518643,
|
||||||
|
green: 0.14849715,
|
||||||
|
blue: 0.20401502,
|
||||||
|
alpha: 1.0,
|
||||||
|
))
|
|
@ -0,0 +1,8 @@
|
||||||
|
(
|
||||||
|
radius_0: (0.0, 0.0, 0.0, 0.0),
|
||||||
|
radius_xs: (4.0, 4.0, 4.0, 4.0),
|
||||||
|
radius_s: (8.0, 8.0, 8.0, 8.0),
|
||||||
|
radius_m: (16.0, 16.0, 16.0, 16.0),
|
||||||
|
radius_l: (32.0, 32.0, 32.0, 32.0),
|
||||||
|
radius_xl: (160.0, 160.0, 160.0, 160.0),
|
||||||
|
)
|
|
@ -0,0 +1 @@
|
||||||
|
(0, 8)
|
|
@ -0,0 +1,12 @@
|
||||||
|
(
|
||||||
|
space_none: 0,
|
||||||
|
space_xxxs: 4,
|
||||||
|
space_xxs: 8,
|
||||||
|
space_xs: 12,
|
||||||
|
space_s: 16,
|
||||||
|
space_m: 24,
|
||||||
|
space_l: 32,
|
||||||
|
space_xl: 48,
|
||||||
|
space_xxl: 64,
|
||||||
|
space_xxxl: 128,
|
||||||
|
)
|
|
@ -0,0 +1 @@
|
||||||
|
true
|
1
config/.config/electron-flags.conf
Normal file
1
config/.config/electron-flags.conf
Normal file
|
@ -0,0 +1 @@
|
||||||
|
--enable-features=UseOzonePlatform --ozone-platform=wayland
|
66
config/.config/fnott/fnott.ini
Normal file
66
config/.config/fnott/fnott.ini
Normal 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
|
11
config/.config/gtk-2.0/gtkfilechooser.ini
Normal file
11
config/.config/gtk-2.0/gtkfilechooser.ini
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
[Filechooser Settings]
|
||||||
|
LocationMode=path-bar
|
||||||
|
ShowHidden=false
|
||||||
|
ShowSizeColumn=true
|
||||||
|
GeometryX=1183
|
||||||
|
GeometryY=269
|
||||||
|
GeometryWidth=537
|
||||||
|
GeometryHeight=542
|
||||||
|
SortColumn=name
|
||||||
|
SortOrder=ascending
|
||||||
|
StartupMode=recent
|
17
config/.config/gtk-3.0/settings.ini
Normal file
17
config/.config/gtk-3.0/settings.ini
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
[Settings]
|
||||||
|
gtk-theme-name=adw-gtk3-dark
|
||||||
|
gtk-icon-theme-name=Papirus-Dark
|
||||||
|
gtk-font-name=DejaVu Sans 10
|
||||||
|
gtk-cursor-theme-name=VolantesCursors
|
||||||
|
gtk-cursor-theme-size=24
|
||||||
|
gtk-toolbar-style=GTK_TOOLBAR_ICONS
|
||||||
|
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||||
|
gtk-button-images=0
|
||||||
|
gtk-menu-images=0
|
||||||
|
gtk-enable-event-sounds=1
|
||||||
|
gtk-enable-input-feedback-sounds=0
|
||||||
|
gtk-xft-antialias=1
|
||||||
|
gtk-xft-hinting=1
|
||||||
|
gtk-xft-hintstyle=hintslight
|
||||||
|
gtk-xft-rgba=rgb
|
||||||
|
gtk-application-prefer-dark-theme=1
|
0
config/.config/hypr/application-style.conf
Normal file
0
config/.config/hypr/application-style.conf
Normal file
166
config/.config/hypr/config/appearance.conf
Normal file
166
config/.config/hypr/config/appearance.conf
Normal file
|
@ -0,0 +1,166 @@
|
||||||
|
#####################
|
||||||
|
### LOOK AND FEEL ###
|
||||||
|
#####################
|
||||||
|
|
||||||
|
# Refer to https://wiki.hyprland.org/Configuring/Variables/
|
||||||
|
|
||||||
|
$active_color = rgba(98C1D9FF)
|
||||||
|
$inactive_color = rgba(595959aa)
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#general
|
||||||
|
general {
|
||||||
|
gaps_in = 1
|
||||||
|
gaps_out = 0
|
||||||
|
|
||||||
|
border_size = 1
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
||||||
|
col.active_border = $active_color
|
||||||
|
col.inactive_border = $inactive_color
|
||||||
|
|
||||||
|
# Resizing windows by clicking and dragging on borders and gaps
|
||||||
|
resize_on_border = true
|
||||||
|
|
||||||
|
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
|
||||||
|
allow_tearing = false
|
||||||
|
|
||||||
|
layout = dwindle
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#decoration
|
||||||
|
decoration {
|
||||||
|
rounding = 2
|
||||||
|
|
||||||
|
# Change transparency of focused and unfocused windows
|
||||||
|
active_opacity = 1.0
|
||||||
|
inactive_opacity = 1.0
|
||||||
|
|
||||||
|
shadow {
|
||||||
|
enabled = true
|
||||||
|
range = 4
|
||||||
|
render_power = 3
|
||||||
|
color = rgba(1a1a1aee)
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#blur
|
||||||
|
blur {
|
||||||
|
enabled = true
|
||||||
|
size = 6
|
||||||
|
passes = 3
|
||||||
|
|
||||||
|
vibrancy = 0.1696
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
# Apply blur to waybar
|
||||||
|
layerrule = blur,waybar
|
||||||
|
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#animations
|
||||||
|
animations {
|
||||||
|
enabled = yes, please :)
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||||
|
|
||||||
|
# Bezier curves
|
||||||
|
bezier = easeOutQuint,0.23,1,0.32,1
|
||||||
|
bezier = easeInOutCubic,0.65,0.05,0.36,1
|
||||||
|
bezier = linear,0,0,1,1
|
||||||
|
bezier = almostLinear,0.5,0.5,0.75,1.0
|
||||||
|
bezier = quick,0.15,0,0.1,1
|
||||||
|
|
||||||
|
bezier = easeInOutExpo,0.87,0,0.13,1
|
||||||
|
|
||||||
|
# Animations
|
||||||
|
animation = global, 1, 10, default
|
||||||
|
animation = border, 1, 5.39, easeOutQuint
|
||||||
|
|
||||||
|
animation = windows, 1, 3.79, easeOutQuint
|
||||||
|
animation = windowsIn, 1, 3.1, easeOutQuint, popin 87%
|
||||||
|
animation = windowsOut, 1, 1.49, linear, popin 87%
|
||||||
|
|
||||||
|
animation = fadeIn, 1, 1.73, almostLinear
|
||||||
|
animation = fadeOut, 1, 1.46, almostLinear
|
||||||
|
animation = fade, 1, 3.03, quick
|
||||||
|
|
||||||
|
animation = layers, 1, 3.81, easeOutQuint
|
||||||
|
animation = layersIn, 1, 4, easeOutQuint, fade
|
||||||
|
animation = layersOut, 1, 1.5, linear, fade
|
||||||
|
animation = fadeLayersIn, 1, 1.79, almostLinear
|
||||||
|
animation = fadeLayersOut, 1, 1.39, almostLinear
|
||||||
|
|
||||||
|
animation = workspaces, 1, 1.94, almostLinear, fade
|
||||||
|
animation = workspacesIn, 1, 3, easeOutQuint, slide
|
||||||
|
animation = workspacesOut, 1, 3, easeOutQuint, slide
|
||||||
|
|
||||||
|
#animation = workspacesIn, 1, 3, easeOutQuint, slidefade
|
||||||
|
#animation = workspacesOut, 1, 5, easeOutQuint, slidefade
|
||||||
|
}
|
||||||
|
|
||||||
|
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
|
||||||
|
# "Smart gaps" / "No gaps when only"
|
||||||
|
# uncomment all if you wish to use that.
|
||||||
|
# workspace = w[tv1], gapsout:0, gapsin:0
|
||||||
|
# workspace = f[1], gapsout:0, gapsin:0
|
||||||
|
# windowrulev2 = bordersize 0, floating:0, onworkspace:w[tv1]
|
||||||
|
# windowrulev2 = rounding 0, floating:0, onworkspace:w[tv1]
|
||||||
|
# windowrulev2 = bordersize 0, floating:0, onworkspace:f[1]
|
||||||
|
# windowrulev2 = rounding 0, floating:0, onworkspace:f[1]
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||||
|
dwindle {
|
||||||
|
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||||
|
preserve_split = true # You probably want this
|
||||||
|
}
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||||
|
master {
|
||||||
|
new_status = master
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#misc
|
||||||
|
misc {
|
||||||
|
force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
|
||||||
|
disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
|
||||||
|
disable_splash_rendering = true # Disable default wallpapers rendering
|
||||||
|
vfr = true # Lower sent frames when idle
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
##############################
|
||||||
|
### WINDOWS AND WORKSPACES ###
|
||||||
|
##############################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||||
|
# 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.
|
||||||
|
windowrule = suppressevent maximize, class:.*
|
||||||
|
|
||||||
|
# Fix some dragging issues with XWayland
|
||||||
|
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
|
||||||
|
|
||||||
|
# Albert
|
||||||
|
windowrule=noborder,class:^(albert)$
|
||||||
|
windowrule=noblur,class:^(albert)$
|
||||||
|
windowrule=noshadow,class:^(albert)$
|
||||||
|
windowrule=float,class:^(albert)$
|
||||||
|
windowrule=stayfocused,class:^(albert)$
|
||||||
|
windowrule=nodim,class:^(albert)$
|
||||||
|
|
||||||
|
# Prism Launcher
|
||||||
|
windowrule=pseudo, class:(org.prismlauncher.PrismLauncher)
|
||||||
|
windowrule=size 65% 70%, class:(org.prismlauncher.PrismLauncher), title:^(Prism Launcher .*)$
|
||||||
|
|
||||||
|
# TODO Automatically fullscreen single apps
|
||||||
|
# - Seems impossible for now (try mixing with workspace rules)
|
||||||
|
|
||||||
|
# Increase gaps for single apps
|
||||||
|
workspace=w[t1], gapsout:2
|
63
config/.config/hypr/config/environment.conf
Normal file
63
config/.config/hypr/config/environment.conf
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
###################
|
||||||
|
### MY PROGRAMS ###
|
||||||
|
###################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||||
|
|
||||||
|
# Set programs that you use
|
||||||
|
$terminal = kitty
|
||||||
|
#$fileManager = cosmic-files
|
||||||
|
$fileManager = nautilus
|
||||||
|
$menu = albert toggle
|
||||||
|
$notificationsManager = fnott
|
||||||
|
|
||||||
|
|
||||||
|
#################
|
||||||
|
### AUTOSTART ###
|
||||||
|
#################
|
||||||
|
|
||||||
|
# Autostart necessary processes (like notifications daemons, status bars, etc.)
|
||||||
|
exec-once = ~/.config/hypr/scripts/autostart.sh
|
||||||
|
# Or execute your favorite apps at launch like this:
|
||||||
|
# exec-once = firefox
|
||||||
|
|
||||||
|
|
||||||
|
#############################
|
||||||
|
### ENVIRONMENT VARIABLES ###
|
||||||
|
#############################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Environment-variables/
|
||||||
|
|
||||||
|
# HyprCursor
|
||||||
|
env = HYPRCURSOR_THEME,VolantesCursors
|
||||||
|
env = XCURSOR_THEME,VolantesCursors
|
||||||
|
env = XCURSOR_SIZE,24
|
||||||
|
env = HYPRCURSOR_SIZE,24
|
||||||
|
# XDG Desktop Portal
|
||||||
|
env = XDG_SESSION_DESKTOP,Hyprland
|
||||||
|
env = XDG_CURRENT_DESKTOP,Hyprland
|
||||||
|
|
||||||
|
# Experimental
|
||||||
|
|
||||||
|
# GTK
|
||||||
|
# env = GTK_USE_PORTAL,1
|
||||||
|
# env = GDK_SCALE,2 # Xwayland scale
|
||||||
|
# Qt
|
||||||
|
# env = QT_WAYLAND_DISABLE_WINDOWDECORATION,
|
||||||
|
# Firefox
|
||||||
|
# env = MOZ_ENABLE_WAYLAND,1
|
||||||
|
# env = MOZ_USE_XINPUT2,1
|
||||||
|
# WLRoots
|
||||||
|
# env = WLR_NO_HARDWARE_CURSORS,1
|
||||||
|
# env = WLR_RENDERER,vulkan
|
||||||
|
# SDL
|
||||||
|
# env = SDL_VIDEODRIVER,wayland
|
||||||
|
|
||||||
|
# Nvidia
|
||||||
|
|
||||||
|
# GBM backend
|
||||||
|
# env = GBM_BACKEND,nvidia-drm
|
||||||
|
# env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||||
|
# Hardware acceleration
|
||||||
|
# env = LIBVA_DRIVER_NAME,nvidia
|
||||||
|
# env = NVD_BACKEND,direct
|
150
config/.config/hypr/config/input-en.conf
Normal file
150
config/.config/hypr/config/input-en.conf
Normal file
|
@ -0,0 +1,150 @@
|
||||||
|
#############
|
||||||
|
### INPUT ###
|
||||||
|
#############
|
||||||
|
|
||||||
|
### English configuration (not finished yet)
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#input
|
||||||
|
input {
|
||||||
|
kb_layout = us
|
||||||
|
kb_variant =
|
||||||
|
kb_model =
|
||||||
|
kb_options =
|
||||||
|
kb_rules =
|
||||||
|
numlock_by_default = true
|
||||||
|
|
||||||
|
follow_mouse = 1
|
||||||
|
|
||||||
|
sensitivity = 0.1 # -1.0 - 1.0, 0 means no modification.
|
||||||
|
|
||||||
|
touchpad {
|
||||||
|
natural_scroll = true
|
||||||
|
disable_while_typing = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#gestures
|
||||||
|
gestures {
|
||||||
|
workspace_swipe = true
|
||||||
|
}
|
||||||
|
|
||||||
|
# Example per-device config
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
|
||||||
|
device {
|
||||||
|
name = epic-mouse-v1
|
||||||
|
sensitivity = -0.5
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
###################
|
||||||
|
### KEYBINDINGS ###
|
||||||
|
###################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||||
|
$mainMod = SUPER # Sets "Windows" key as main modifier
|
||||||
|
|
||||||
|
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||||
|
|
||||||
|
# Main desktop controls
|
||||||
|
bind = $mainMod, Q, killactive,
|
||||||
|
bind = $mainMod, R, exec, $menu # Omnibar
|
||||||
|
bind = $mainMod, D, exec, $menu # Legacy menu shortcut
|
||||||
|
bind = $mainMod, L, exec, hyprlock # Lockscreen
|
||||||
|
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, F11, exec, ~/.config/hypr/scripts/gamemode.sh # Gamemode
|
||||||
|
bind = $mainMod SHIFT, M, exit, # Exit desktop session
|
||||||
|
|
||||||
|
# Shortcuts
|
||||||
|
bind = $mainMod, RETURN, exec, $terminal
|
||||||
|
bind = $mainMod, SPACE, exec, $terminal
|
||||||
|
bind = $mainMod, E, exec, $fileManager
|
||||||
|
bindel = , XF86Launch1, exec, kitty vim ~/.config/hypr/config
|
||||||
|
|
||||||
|
# Move focus with mainMod + arrow keys
|
||||||
|
bind = $mainMod, left, movefocus, l
|
||||||
|
bind = $mainMod, right, movefocus, r
|
||||||
|
bind = $mainMod, up, movefocus, u
|
||||||
|
bind = $mainMod, down, movefocus, d
|
||||||
|
|
||||||
|
# Layout
|
||||||
|
bind = $mainMod, F, fullscreen,
|
||||||
|
bind = $mainMod, V, togglesplit, # Horizontal/vertical split
|
||||||
|
bind = $mainMod, T, togglefloating,
|
||||||
|
bind = $mainMod, H, pseudo, # Toggle pseudo-tiling
|
||||||
|
|
||||||
|
# Switch workspaces with mainMod + [0-9]
|
||||||
|
bind = $mainMod, ampersand, workspace, 1
|
||||||
|
bind = $mainMod, eacute, workspace, 2
|
||||||
|
bind = $mainMod, quotedbl, workspace, 3
|
||||||
|
bind = $mainMod, apostrophe, workspace, 4
|
||||||
|
bind = $mainMod, parenleft, workspace, 5
|
||||||
|
bind = $mainMod, minus, workspace, 6
|
||||||
|
bind = $mainMod, egrave, workspace, 7
|
||||||
|
bind = $mainMod, underscore, workspace, 8
|
||||||
|
bind = $mainMod, ccedilla, workspace, 9
|
||||||
|
bind = $mainMod, agrave, workspace, 10
|
||||||
|
|
||||||
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||||
|
bind = $mainMod SHIFT, ampersand, movetoworkspace, 1
|
||||||
|
bind = $mainMod SHIFT, eacute, movetoworkspace, 2
|
||||||
|
bind = $mainMod SHIFT, quotedbl, movetoworkspace, 3
|
||||||
|
bind = $mainMod SHIFT, apostrophe, movetoworkspace, 4
|
||||||
|
bind = $mainMod SHIFT, parenleft, movetoworkspace, 5
|
||||||
|
bind = $mainMod SHIFT, minus, movetoworkspace, 6
|
||||||
|
bind = $mainMod SHIFT, egrave, movetoworkspace, 7
|
||||||
|
bind = $mainMod SHIFT, underscore, movetoworkspace, 8
|
||||||
|
bind = $mainMod SHIFT, ccedilla, movetoworkspace, 9
|
||||||
|
bind = $mainMod SHIFT, agrave, movetoworkspace, 10
|
||||||
|
|
||||||
|
# Example special workspace (scratchpad)
|
||||||
|
bind = $mainMod, S, togglespecialworkspace, magic
|
||||||
|
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||||
|
|
||||||
|
# Minimize function (uses scratchpad)
|
||||||
|
# For testing, may be removed in future releases
|
||||||
|
bind = $mainMod, N, togglespecialworkspace, magic
|
||||||
|
bind = $mainMod, N, movetoworkspace, +0
|
||||||
|
bind = $mainMod, N, togglespecialworkspace, magic
|
||||||
|
bind = $mainMod, N, movetoworkspace, special:magic
|
||||||
|
bind = $mainMod, N, togglespecialworkspace, magic
|
||||||
|
|
||||||
|
# Scroll through existing workspaces with mainMod + scroll
|
||||||
|
bind = $mainMod, mouse_down, workspace, e+1
|
||||||
|
bind = $mainMod, mouse_up, workspace, e-1
|
||||||
|
|
||||||
|
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||||
|
bindm = $mainMod, mouse:272, movewindow
|
||||||
|
bindm = $mainMod, mouse:273, resizewindow
|
||||||
|
|
||||||
|
|
||||||
|
# Function keys
|
||||||
|
|
||||||
|
## Volume
|
||||||
|
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
|
||||||
|
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||||
|
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||||
|
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||||
|
|
||||||
|
## Brightness
|
||||||
|
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 5%+
|
||||||
|
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 5%-
|
||||||
|
bindel = SHIFT, XF86MonBrightnessUp, exec, brightnessctl s 1%+
|
||||||
|
bindel = SHIFT, XF86MonBrightnessDown, exec, brightnessctl s 1%-
|
||||||
|
|
||||||
|
## Player controls
|
||||||
|
bindl = , XF86AudioNext, exec, playerctl next
|
||||||
|
bindl = , XF86AudioPause, exec, playerctl play-pause
|
||||||
|
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
||||||
|
bindl = , XF86AudioPrev, exec, playerctl previous
|
||||||
|
|
||||||
|
## Screenshot
|
||||||
|
bind = , Print, exec, ~/.config/hypr/scripts/screenshot.sh
|
||||||
|
|
||||||
|
## Touchpad toggle
|
||||||
|
### On galaxy books, pressing the disable touchpad key also triggers SUPER and
|
||||||
|
### CONTROL keys, this is why there are present here
|
||||||
|
bind = SUPER CONTROL, XF86TouchpadToggle, exec, ~/.config/hypr/scripts/toggle-touchpad.sh
|
||||||
|
|
||||||
|
## Testing
|
||||||
|
#bind = $mainMod, TAB, overview:toggle, toggle
|
148
config/.config/hypr/config/input.conf
Normal file
148
config/.config/hypr/config/input.conf
Normal file
|
@ -0,0 +1,148 @@
|
||||||
|
#############
|
||||||
|
### INPUT ###
|
||||||
|
#############
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#input
|
||||||
|
input {
|
||||||
|
kb_layout = fr
|
||||||
|
kb_variant =
|
||||||
|
kb_model =
|
||||||
|
kb_options =
|
||||||
|
kb_rules =
|
||||||
|
numlock_by_default = true
|
||||||
|
|
||||||
|
follow_mouse = 1
|
||||||
|
|
||||||
|
sensitivity = 0.1 # -1.0 - 1.0, 0 means no modification.
|
||||||
|
|
||||||
|
touchpad {
|
||||||
|
natural_scroll = true
|
||||||
|
disable_while_typing = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# https://wiki.hyprland.org/Configuring/Variables/#gestures
|
||||||
|
gestures {
|
||||||
|
workspace_swipe = true
|
||||||
|
}
|
||||||
|
|
||||||
|
# Example per-device config
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
|
||||||
|
device {
|
||||||
|
name = epic-mouse-v1
|
||||||
|
sensitivity = -0.5
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
###################
|
||||||
|
### KEYBINDINGS ###
|
||||||
|
###################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Keywords/
|
||||||
|
$mainMod = SUPER # Sets "Windows" key as main modifier
|
||||||
|
|
||||||
|
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||||
|
|
||||||
|
# Main desktop controls
|
||||||
|
bind = $mainMod, Q, killactive,
|
||||||
|
bind = $mainMod, R, exec, $menu # Omnibar
|
||||||
|
bind = $mainMod, D, exec, $menu # Legacy menu shortcut
|
||||||
|
bind = $mainMod, L, exec, hyprlock # Lockscreen
|
||||||
|
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, F11, exec, ~/.config/hypr/scripts/gamemode.sh # Gamemode
|
||||||
|
bind = $mainMod SHIFT, M, exit, # Exit desktop session
|
||||||
|
|
||||||
|
# Shortcuts
|
||||||
|
bind = $mainMod, RETURN, exec, $terminal
|
||||||
|
bind = $mainMod, SPACE, exec, $terminal
|
||||||
|
bind = $mainMod, E, exec, $fileManager
|
||||||
|
bindel = , XF86Launch1, exec, kitty vim ~/.config/hypr/config
|
||||||
|
|
||||||
|
# Move focus with mainMod + arrow keys
|
||||||
|
bind = $mainMod, left, movefocus, l
|
||||||
|
bind = $mainMod, right, movefocus, r
|
||||||
|
bind = $mainMod, up, movefocus, u
|
||||||
|
bind = $mainMod, down, movefocus, d
|
||||||
|
|
||||||
|
# Layout
|
||||||
|
bind = $mainMod, F, fullscreen,
|
||||||
|
bind = $mainMod, V, togglesplit, # Horizontal/vertical split
|
||||||
|
bind = $mainMod, T, togglefloating,
|
||||||
|
bind = $mainMod, H, pseudo, # Toggle pseudo-tiling
|
||||||
|
|
||||||
|
# Switch workspaces with mainMod + [0-9]
|
||||||
|
bind = $mainMod, ampersand, workspace, 1
|
||||||
|
bind = $mainMod, eacute, workspace, 2
|
||||||
|
bind = $mainMod, quotedbl, workspace, 3
|
||||||
|
bind = $mainMod, apostrophe, workspace, 4
|
||||||
|
bind = $mainMod, parenleft, workspace, 5
|
||||||
|
bind = $mainMod, minus, workspace, 6
|
||||||
|
bind = $mainMod, egrave, workspace, 7
|
||||||
|
bind = $mainMod, underscore, workspace, 8
|
||||||
|
bind = $mainMod, ccedilla, workspace, 9
|
||||||
|
bind = $mainMod, agrave, workspace, 10
|
||||||
|
|
||||||
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||||
|
bind = $mainMod SHIFT, ampersand, movetoworkspace, 1
|
||||||
|
bind = $mainMod SHIFT, eacute, movetoworkspace, 2
|
||||||
|
bind = $mainMod SHIFT, quotedbl, movetoworkspace, 3
|
||||||
|
bind = $mainMod SHIFT, apostrophe, movetoworkspace, 4
|
||||||
|
bind = $mainMod SHIFT, parenleft, movetoworkspace, 5
|
||||||
|
bind = $mainMod SHIFT, minus, movetoworkspace, 6
|
||||||
|
bind = $mainMod SHIFT, egrave, movetoworkspace, 7
|
||||||
|
bind = $mainMod SHIFT, underscore, movetoworkspace, 8
|
||||||
|
bind = $mainMod SHIFT, ccedilla, movetoworkspace, 9
|
||||||
|
bind = $mainMod SHIFT, agrave, movetoworkspace, 10
|
||||||
|
|
||||||
|
# Example special workspace (scratchpad)
|
||||||
|
bind = $mainMod, S, togglespecialworkspace, magic
|
||||||
|
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||||||
|
|
||||||
|
# Minimize function (uses scratchpad)
|
||||||
|
# For testing, may be removed in future releases
|
||||||
|
bind = $mainMod, N, togglespecialworkspace, magic
|
||||||
|
bind = $mainMod, N, movetoworkspace, +0
|
||||||
|
bind = $mainMod, N, togglespecialworkspace, magic
|
||||||
|
bind = $mainMod, N, movetoworkspace, special:magic
|
||||||
|
bind = $mainMod, N, togglespecialworkspace, magic
|
||||||
|
|
||||||
|
# Scroll through existing workspaces with mainMod + scroll
|
||||||
|
bind = $mainMod, mouse_down, workspace, e+1
|
||||||
|
bind = $mainMod, mouse_up, workspace, e-1
|
||||||
|
|
||||||
|
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||||
|
bindm = $mainMod, mouse:272, movewindow
|
||||||
|
bindm = $mainMod, mouse:273, resizewindow
|
||||||
|
|
||||||
|
|
||||||
|
# Function keys
|
||||||
|
|
||||||
|
## Volume
|
||||||
|
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
|
||||||
|
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||||
|
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||||
|
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||||
|
|
||||||
|
## Brightness
|
||||||
|
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 5%+
|
||||||
|
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 5%-
|
||||||
|
bindel = SHIFT, XF86MonBrightnessUp, exec, brightnessctl s 1%+
|
||||||
|
bindel = SHIFT, XF86MonBrightnessDown, exec, brightnessctl s 1%-
|
||||||
|
|
||||||
|
## Player controls
|
||||||
|
bindl = , XF86AudioNext, exec, playerctl next
|
||||||
|
bindl = , XF86AudioPause, exec, playerctl play-pause
|
||||||
|
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
||||||
|
bindl = , XF86AudioPrev, exec, playerctl previous
|
||||||
|
|
||||||
|
## Screenshot
|
||||||
|
bind = , Print, exec, ~/.config/hypr/scripts/screenshot.sh
|
||||||
|
|
||||||
|
## Touchpad toggle
|
||||||
|
### On galaxy books, pressing the disable touchpad key also triggers SUPER and
|
||||||
|
### CONTROL keys, this is why there are present here
|
||||||
|
bind = SUPER CONTROL, XF86TouchpadToggle, exec, ~/.config/hypr/scripts/toggle-touchpad.sh
|
||||||
|
|
||||||
|
## Testing
|
||||||
|
#bind = $mainMod, TAB, overview:toggle, toggle
|
20
config/.config/hypr/config/minimalist-mod.conf
Normal file
20
config/.config/hypr/config/minimalist-mod.conf
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
# Mod config file to make the desktop more minimalist
|
||||||
|
|
||||||
|
general {
|
||||||
|
gaps_in = 0
|
||||||
|
gaps_out = 0
|
||||||
|
}
|
||||||
|
|
||||||
|
decoration {
|
||||||
|
rounding = 0
|
||||||
|
|
||||||
|
shadow {
|
||||||
|
enabled = false
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
animations {
|
||||||
|
enabled = false
|
||||||
|
|
||||||
|
}
|
10
config/.config/hypr/config/monitors.conf
Normal file
10
config/.config/hypr/config/monitors.conf
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
################
|
||||||
|
### MONITORS ###
|
||||||
|
################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||||
|
monitor=,preferred,auto,auto
|
||||||
|
monitor=eDP-1,preferred,0x0,1 # Laptop screen
|
||||||
|
monitor=DP-1, preferred, 0x-1080, 1 # HP Home monitor
|
||||||
|
monitor=DP-2, preferred, 0x-1080, 1 # HP Home monitor
|
||||||
|
monitor=HDMI-A-1, preferred, 0x-1440, 1 # Dell monitor
|
7
config/.config/hypr/config/monitors_default.conf
Normal file
7
config/.config/hypr/config/monitors_default.conf
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
################
|
||||||
|
### MONITORS ###
|
||||||
|
################
|
||||||
|
|
||||||
|
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||||
|
monitor=,preferred,auto,auto
|
||||||
|
monitor=eDP-1,preferred,0x0,1 # Laptop screen
|
12
config/.config/hypr/config/plugins.conf
Normal file
12
config/.config/hypr/config/plugins.conf
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
# Plugins settings
|
||||||
|
|
||||||
|
plugin {
|
||||||
|
overview {
|
||||||
|
# disableGestures = true
|
||||||
|
reverseSwipe = true
|
||||||
|
|
||||||
|
overrideGaps = true
|
||||||
|
gapsIn = 10
|
||||||
|
gapsOut = 20
|
||||||
|
}
|
||||||
|
}
|
14
config/.config/hypr/hyprland.conf
Normal file
14
config/.config/hypr/hyprland.conf
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
# Config is based on the example Hyprland config file provided on the project's repo.
|
||||||
|
# Refer to the wiki for more information.
|
||||||
|
# https://wiki.hyprland.org/Configuring/
|
||||||
|
|
||||||
|
# Please note not all available settings / options are set here.
|
||||||
|
# For a full list, see the wiki
|
||||||
|
|
||||||
|
#source = ~/.config/hypr/config/monitors_default.conf
|
||||||
|
source = ~/.config/hypr/config/monitors.conf
|
||||||
|
source = ~/.config/hypr/config/environment.conf
|
||||||
|
source = ~/.config/hypr/config/input.conf
|
||||||
|
source = ~/.config/hypr/config/appearance.conf
|
||||||
|
source = ~/.config/hypr/config/plugins.conf
|
||||||
|
#source = ~/.config/hypr/config/minimalist-mod.conf
|
107
config/.config/hypr/hyprlock.conf
Normal file
107
config/.config/hypr/hyprlock.conf
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
# BACKGROUND
|
||||||
|
background {
|
||||||
|
monitor =
|
||||||
|
path = ~/.config/hypr/images/lockscreen.jpg
|
||||||
|
blur_passes = 0
|
||||||
|
#contrast = 0.8916
|
||||||
|
#brightness = 0.8172
|
||||||
|
#vibrancy = 0.1696
|
||||||
|
#vibrancy_darkness = 0.0
|
||||||
|
}
|
||||||
|
|
||||||
|
# GENERAL
|
||||||
|
general {
|
||||||
|
no_fade_in = false
|
||||||
|
grace = 0
|
||||||
|
disable_loading_bar = false
|
||||||
|
no_cursor = true
|
||||||
|
enable_fingerprint = true
|
||||||
|
}
|
||||||
|
|
||||||
|
# INPUT FIELD
|
||||||
|
input-field {
|
||||||
|
monitor =
|
||||||
|
size = 320, 55
|
||||||
|
outline_thickness = -1
|
||||||
|
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_center = true
|
||||||
|
outer_color = rgba(200, 200, 200, 0.4)
|
||||||
|
inner_color = rgba(100, 114, 125, 0.4)
|
||||||
|
font_color = rgb(200, 200, 200)
|
||||||
|
fade_on_empty = false
|
||||||
|
font_family = DejaVu Sans
|
||||||
|
placeholder_text = <i><span foreground="##ffffff99">Enter Pass</span></i>
|
||||||
|
hide_input = false
|
||||||
|
position = 0, -350
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
}
|
||||||
|
|
||||||
|
# Time
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
#text = cmd[update:1000] echo "<span>$(date +"%H:%M")</span>"
|
||||||
|
text = $TIME
|
||||||
|
color = rgba(216, 222, 233, 1)
|
||||||
|
font_size = 130
|
||||||
|
font_family = JetbrainsMonoNL NF Bold
|
||||||
|
position = 0, 280
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
# TODO make shadowing work
|
||||||
|
#shadow_passes = 10
|
||||||
|
#shadow_size = 3
|
||||||
|
}
|
||||||
|
|
||||||
|
# Day-Month-Date
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
text = cmd[update:1000] echo -e "$(date +"%A, %d %B")"
|
||||||
|
color = rgba(216, 222, 233, 1)
|
||||||
|
font_size = 26
|
||||||
|
font_family = JetbrainsMonoNL NF
|
||||||
|
position = 0, 160
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
}
|
||||||
|
|
||||||
|
# Profie-Photo
|
||||||
|
#image {
|
||||||
|
# monitor =
|
||||||
|
# path = ~/.config/hypr/images/profile.png
|
||||||
|
# border_color = 0xffdddddd
|
||||||
|
# border_size = 0
|
||||||
|
# size = 120
|
||||||
|
# rounding = -1
|
||||||
|
# rotate = 0
|
||||||
|
# reload_time = -1
|
||||||
|
# reload_cmd =
|
||||||
|
# position = 0, -100
|
||||||
|
# halign = center
|
||||||
|
# valign = center
|
||||||
|
#}
|
||||||
|
|
||||||
|
# USER
|
||||||
|
#label {
|
||||||
|
# monitor =
|
||||||
|
# text = Hi, Guillem #$USER
|
||||||
|
# color = rgba(216, 222, 233, 0.70)
|
||||||
|
# font_size = 20
|
||||||
|
# font_family = DejaVu Sans
|
||||||
|
# position = 0, -200
|
||||||
|
# halign = center
|
||||||
|
# valign = center
|
||||||
|
#}
|
||||||
|
|
||||||
|
# CURRENT SONG
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
text = cmd[update:1000] echo "$(~/.config/hypr/scripts/songdetails.sh)"
|
||||||
|
color = rgba(255, 255, 255, 0.7)
|
||||||
|
font_size = 16
|
||||||
|
font_family = DejaVu Sans
|
||||||
|
position = 0, 20
|
||||||
|
halign = center
|
||||||
|
valign = bottom
|
||||||
|
}
|
2
config/.config/hypr/hyprpaper.conf
Normal file
2
config/.config/hypr/hyprpaper.conf
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
preload = ~/.config/hypr/images/wallpaper.png
|
||||||
|
wallpaper = , ~/.config/hypr/images/wallpaper.png
|
BIN
config/.config/hypr/images/lockscreen.jpg
Normal file
BIN
config/.config/hypr/images/lockscreen.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 275 KiB |
BIN
config/.config/hypr/images/wallpaper.png
Executable file
BIN
config/.config/hypr/images/wallpaper.png
Executable file
Binary file not shown.
After Width: | Height: | Size: 13 MiB |
12
config/.config/hypr/scripts/autostart.sh
Executable file
12
config/.config/hypr/scripts/autostart.sh
Executable file
|
@ -0,0 +1,12 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# This script is launched on every hyprland startup
|
||||||
|
# Please note that it is intended for desktop related programs ONLY, as it will be called every time you reload the desktop
|
||||||
|
# If you want to add your own applications you may rather want to use exec-once in the environment.conf file
|
||||||
|
|
||||||
|
hyprpaper &
|
||||||
|
hyprpm reload -nn &
|
||||||
|
albert &
|
||||||
|
# mako &
|
||||||
|
systemctl --user start hyprpolkitagent &
|
||||||
|
~/.config/hypr/scripts/restore-waybar.sh
|
22
config/.config/hypr/scripts/gamemode.sh
Executable file
22
config/.config/hypr/scripts/gamemode.sh
Executable file
|
@ -0,0 +1,22 @@
|
||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
# From Hyprland documentation - https://wiki.hyprland.org/0.41.2/Configuring/Uncommon-tips--tricks/#toggle-animationsbluretc-hotkey
|
||||||
|
|
||||||
|
HYPRGAMEMODE=$(hyprctl getoption animations:enabled | awk 'NR==1{print $2}')
|
||||||
|
if [ "$HYPRGAMEMODE" = 1 ] ; then
|
||||||
|
hyprctl --batch "\
|
||||||
|
keyword animations:enabled 0;\
|
||||||
|
keyword decoration:drop_shadow 0;\
|
||||||
|
keyword decoration:blur:enabled 0;\
|
||||||
|
keyword general:gaps_in 0;\
|
||||||
|
keyword general:gaps_out 0;\
|
||||||
|
keyword general:border_size 1;\
|
||||||
|
keyword decoration:rounding 0"
|
||||||
|
killall waybar
|
||||||
|
hyprctl notify 1 2000 0 "Enabled game mode"
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
hyprctl reload
|
||||||
|
~/.config/hypr/scripts/restore-waybar.sh
|
||||||
|
hyprctl notify 1 2000 0 "Disabled game mode"
|
9
config/.config/hypr/scripts/reload.sh
Executable file
9
config/.config/hypr/scripts/reload.sh
Executable file
|
@ -0,0 +1,9 @@
|
||||||
|
killall albert
|
||||||
|
killall hyprpaper
|
||||||
|
killall waybar
|
||||||
|
|
||||||
|
hyprctl reload
|
||||||
|
|
||||||
|
~/.config/hypr/scripts/autostart.sh
|
||||||
|
|
||||||
|
hyprctl notify 1 2000 0 Desktop reloaded
|
10
config/.config/hypr/scripts/restore-waybar.sh
Executable file
10
config/.config/hypr/scripts/restore-waybar.sh
Executable file
|
@ -0,0 +1,10 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Launch waybar depending on the last status
|
||||||
|
waybar_status=~/.config/hypr/status/waybar
|
||||||
|
if [ "$(cat $waybar_status)" == "on" ]; then
|
||||||
|
killall waybar
|
||||||
|
waybar &
|
||||||
|
elif [ "$(cat $waybar_status)" != "off" ]; then
|
||||||
|
hyprctl notify 0 3000 0 Failed to retrieve waybar status
|
||||||
|
fi
|
1
config/.config/hypr/scripts/screenshot.sh
Executable file
1
config/.config/hypr/scripts/screenshot.sh
Executable file
|
@ -0,0 +1 @@
|
||||||
|
grim -g "$(slurp)" $HOME/Pictures/Screenshots/$(date +'%F_%T.png') && hyprctl notify 1 2000 0 Screenshot saved!
|
2
config/.config/hypr/scripts/songdetails.sh
Executable file
2
config/.config/hypr/scripts/songdetails.sh
Executable file
|
@ -0,0 +1,2 @@
|
||||||
|
song_info=$(playerctl metadata --format '{{title}} {{artist}}')
|
||||||
|
echo "$song_info"
|
35
config/.config/hypr/scripts/toggle-touchpad.sh
Executable file
35
config/.config/hypr/scripts/toggle-touchpad.sh
Executable file
|
@ -0,0 +1,35 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
device=znt0001:00-14e5:650e-touchpad
|
||||||
|
toggle_variable="device[${device}]:enabled"
|
||||||
|
|
||||||
|
hyprctl keyword "${toggle_variable}" true
|
||||||
|
|
||||||
|
status_file="$HOME/.config/hypr/status/touchpad"
|
||||||
|
|
||||||
|
enable_touchpad() {
|
||||||
|
printf "on" > "${status_file}"
|
||||||
|
|
||||||
|
hyprctl notify 1 2000 0 "Enabled touchpad"
|
||||||
|
|
||||||
|
hyprctl keyword "${toggle_variable}" true
|
||||||
|
}
|
||||||
|
|
||||||
|
disable_touchpad() {
|
||||||
|
printf "off" > "${status_file}"
|
||||||
|
|
||||||
|
hyprctl notify 0 2000 0 "Disabled Touchpad"
|
||||||
|
|
||||||
|
hyprctl keyword "${toggle_variable}" false
|
||||||
|
}
|
||||||
|
|
||||||
|
if ! [ -f "${status_file}" ]; then
|
||||||
|
hyprctl notify 3 3000 0 "Status file missing"
|
||||||
|
enable_touchpad
|
||||||
|
else
|
||||||
|
if [ $(cat "${status_file}") = "on" ]; then
|
||||||
|
disable_touchpad
|
||||||
|
elif [ $(cat "${status_file}") = "off" ]; then
|
||||||
|
enable_touchpad
|
||||||
|
fi
|
||||||
|
fi
|
11
config/.config/hypr/scripts/toggle-waybar.sh
Executable file
11
config/.config/hypr/scripts/toggle-waybar.sh
Executable file
|
@ -0,0 +1,11 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
pidof waybar # Check if waybar is running
|
||||||
|
|
||||||
|
if [ $? = 0 ]; then
|
||||||
|
# If running, stop it
|
||||||
|
killall waybar & echo "off" > ~/.config/hypr/status/waybar
|
||||||
|
else
|
||||||
|
# Else, run it
|
||||||
|
waybar & echo "on" > ~/.config/hypr/status/waybar
|
||||||
|
fi
|
1
config/.config/hypr/status/waybar
Normal file
1
config/.config/hypr/status/waybar
Normal file
|
@ -0,0 +1 @@
|
||||||
|
on
|
61
config/.config/kitty/github-dark.conf
Normal file
61
config/.config/kitty/github-dark.conf
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
# vim:ft=kitty
|
||||||
|
|
||||||
|
## name: GitHub Dark
|
||||||
|
## author: GitHub
|
||||||
|
## license: MIT
|
||||||
|
|
||||||
|
#: The basic colors
|
||||||
|
|
||||||
|
foreground #c9d1d9
|
||||||
|
background #0d1117
|
||||||
|
selection_foreground #0d1117
|
||||||
|
selection_background #58a6ff
|
||||||
|
|
||||||
|
|
||||||
|
#: Cursor colors
|
||||||
|
|
||||||
|
cursor #58a6ff
|
||||||
|
|
||||||
|
|
||||||
|
#: Tab bar colors
|
||||||
|
|
||||||
|
tab_bar_background #010409
|
||||||
|
active_tab_foreground #c9d1d9
|
||||||
|
active_tab_background #0d1117
|
||||||
|
inactive_tab_foreground #8b949e
|
||||||
|
inactive_tab_background #010409
|
||||||
|
|
||||||
|
|
||||||
|
#: The basic 16 colors
|
||||||
|
|
||||||
|
#: black
|
||||||
|
color0 #484f58
|
||||||
|
color8 #6e7681
|
||||||
|
|
||||||
|
#: red
|
||||||
|
color1 #ff7b72
|
||||||
|
color9 #ffa198
|
||||||
|
|
||||||
|
#: green
|
||||||
|
color2 #3fb950
|
||||||
|
color10 #56d364
|
||||||
|
|
||||||
|
#: yellow
|
||||||
|
color3 #d29922
|
||||||
|
color11 #e3b341
|
||||||
|
|
||||||
|
#: blue
|
||||||
|
color4 #58a6ff
|
||||||
|
color12 #79c0ff
|
||||||
|
|
||||||
|
#: magenta
|
||||||
|
color5 #bc8cff
|
||||||
|
color13 #d2a8ff
|
||||||
|
|
||||||
|
#: cyan
|
||||||
|
color6 #39c5cf
|
||||||
|
color14 #56d4dd
|
||||||
|
|
||||||
|
#: white
|
||||||
|
color7 #b1bac4
|
||||||
|
color15 #ffffff
|
21
config/.config/kitty/kitty.conf
Normal file
21
config/.config/kitty/kitty.conf
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
## Fonts
|
||||||
|
font_family family="JetBrainsMonoNL Nerd Font Mono"
|
||||||
|
font_size 13.0
|
||||||
|
bold_font auto
|
||||||
|
italic_font auto
|
||||||
|
bold_italic_font auto
|
||||||
|
|
||||||
|
## Theme
|
||||||
|
|
||||||
|
## GitHub Dark
|
||||||
|
# include github-dark.conf
|
||||||
|
## Seventy Eight
|
||||||
|
include seventy-eight.conf
|
||||||
|
## Blurred background
|
||||||
|
# background_opacity 0.6
|
||||||
|
|
||||||
|
## Decent scrolling speed
|
||||||
|
touch_scroll_multiplier 5.0
|
||||||
|
|
||||||
|
## Annoying bell sound
|
||||||
|
enable_audio_bell no
|
61
config/.config/kitty/seventy-eight.conf
Normal file
61
config/.config/kitty/seventy-eight.conf
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
# vim:ft=kitty
|
||||||
|
|
||||||
|
## name: 78
|
||||||
|
## author: Gu://em_ (forked from Github Dark)
|
||||||
|
## license: MIT
|
||||||
|
|
||||||
|
#: The basic colors
|
||||||
|
|
||||||
|
foreground #c9d1d9
|
||||||
|
background #0f131a
|
||||||
|
selection_foreground #EE6C4D
|
||||||
|
selection_background #3D5A80
|
||||||
|
|
||||||
|
|
||||||
|
#: Cursor colors
|
||||||
|
|
||||||
|
cursor #E0FBFC
|
||||||
|
|
||||||
|
|
||||||
|
#: Tab bar colors
|
||||||
|
|
||||||
|
tab_bar_background #010409
|
||||||
|
active_tab_foreground #c9d1d9
|
||||||
|
active_tab_background #0d1117
|
||||||
|
inactive_tab_foreground #8b949e
|
||||||
|
inactive_tab_background #010409
|
||||||
|
|
||||||
|
|
||||||
|
#: The basic 16 colors
|
||||||
|
|
||||||
|
#: black
|
||||||
|
color0 #484f58
|
||||||
|
color8 #6e7681
|
||||||
|
|
||||||
|
#: red
|
||||||
|
color1 #EE6C4D
|
||||||
|
color9 #F5877A
|
||||||
|
|
||||||
|
#: green
|
||||||
|
color2 #3fb950
|
||||||
|
color10 #56d364
|
||||||
|
|
||||||
|
#: yellow
|
||||||
|
color3 #d29922
|
||||||
|
color11 #e3b341
|
||||||
|
|
||||||
|
#: blue
|
||||||
|
color4 #58a6ff
|
||||||
|
color12 #79c0ff
|
||||||
|
|
||||||
|
#: magenta
|
||||||
|
color5 #bc8cff
|
||||||
|
color13 #d2a8ff
|
||||||
|
|
||||||
|
#: cyan
|
||||||
|
color6 #39c5cf
|
||||||
|
color14 #56d4dd
|
||||||
|
|
||||||
|
#: white
|
||||||
|
color7 #b1bac4
|
||||||
|
color15 #ffffff
|
4
config/.config/waybar/colors.css
Normal file
4
config/.config/waybar/colors.css
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
@define-color foreground #c5c5c5;
|
||||||
|
@define-color background #18191c;
|
||||||
|
|
||||||
|
@define-color accentColor #b6c8d3;
|
478
config/.config/waybar/config.jsonc
Normal file
478
config/.config/waybar/config.jsonc
Normal 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": ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
292
config/.config/waybar/style.css
Normal file
292
config/.config/waybar/style.css
Normal 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;
|
||||||
|
}
|
||||||
|
}
|
17
config/.local/bin/codium-patch.sh
Executable file
17
config/.local/bin/codium-patch.sh
Executable file
|
@ -0,0 +1,17 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
if [ $(whoami) != root ]; then
|
||||||
|
echo "Please run this script as root"
|
||||||
|
echo "-> sudo $0"
|
||||||
|
echo
|
||||||
|
sudo $0
|
||||||
|
exit $?
|
||||||
|
fi
|
||||||
|
|
||||||
|
apps_path=/usr/share/applications
|
||||||
|
|
||||||
|
rm $apps_path/codium.desktop
|
||||||
|
sed -i "s/Name=VSCodium - Wayland/Name=VSCodium/g" $apps_path/codium-wayland.desktop
|
||||||
|
|
||||||
|
echo "- Done"
|
||||||
|
exit 0
|
53
config/.local/bin/set-lockscreen
Executable file
53
config/.local/bin/set-lockscreen
Executable file
|
@ -0,0 +1,53 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
# Actually just a modified version of the set-wallpaper script, explaining some potential inconsistencies in variables naming or whatever else.
|
||||||
|
|
||||||
|
print_help() {
|
||||||
|
echo "Usage: $0 [input-file]"
|
||||||
|
echo
|
||||||
|
echo "Changes your current lockscreen wallpaper"
|
||||||
|
echo "Please note that this script is made to be used with the Atlas Desktop and will probably not work on most other desktops."
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ $# -ne 1 ]; then
|
||||||
|
print_help
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check if file exists
|
||||||
|
if [ -e "$1" ]; then
|
||||||
|
|
||||||
|
# Variables declaration
|
||||||
|
wallpaper_config=~/.config/hypr/hyprlock.conf
|
||||||
|
wallpaper_path=~/.config/hypr/images/lockscreen # Doesn't contain file extension
|
||||||
|
file_extension="${1##*.}"
|
||||||
|
|
||||||
|
# In case file has no extension
|
||||||
|
if [ "${file_extension}" == "$1" ]; then
|
||||||
|
echo "Error: please provide a file extension (ex: .jpg, .png...)"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Remove old wallpaper
|
||||||
|
rm $wallpaper_path*
|
||||||
|
|
||||||
|
# Copy file
|
||||||
|
cp "$1" "${wallpaper_path}.${file_extension}"
|
||||||
|
if [ $? != 0 ]; then
|
||||||
|
echo "Aborted."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Update config
|
||||||
|
sed -i "s/lockscreen\.[^[:space:]]*/lockscreen.$file_extension/g" $wallpaper_config # Replace current extension by new extension
|
||||||
|
if [ $? != 0 ]; then
|
||||||
|
echo "Aborted."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Done"
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
echo "Couldn't find '${1}': No such file or directory"
|
||||||
|
exit 1
|
||||||
|
fi
|
57
config/.local/bin/set-wallpaper
Executable file
57
config/.local/bin/set-wallpaper
Executable file
|
@ -0,0 +1,57 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
print_help() {
|
||||||
|
echo "Usage: $0 [input-file]"
|
||||||
|
echo
|
||||||
|
echo "Changes your current wallpaper"
|
||||||
|
echo "Please note that this script is made to be used with the Atlas Desktop and will probably not work on most other desktops."
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ $# -ne 1 ]; then
|
||||||
|
print_help
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check if file exists
|
||||||
|
if [ -e "$1" ]; then
|
||||||
|
|
||||||
|
# Variables declaration
|
||||||
|
wallpaper_config=~/.config/hypr/hyprpaper.conf
|
||||||
|
wallpaper_path=~/.config/hypr/images/wallpaper # Doesn't contain file extension
|
||||||
|
file_extension="${1##*.}"
|
||||||
|
|
||||||
|
# In case file has no extension
|
||||||
|
if [ "${file_extension}" == "$1" ]; then
|
||||||
|
echo "Error: please provide a file extension (ex: .jpg, .png...)"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Remove old wallpaper
|
||||||
|
rm $wallpaper_path*
|
||||||
|
|
||||||
|
# Copy file
|
||||||
|
cp "$1" "${wallpaper_path}.${file_extension}"
|
||||||
|
if [ $? != 0 ]; then
|
||||||
|
echo "Aborted."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Update config
|
||||||
|
sed -i "s/wallpaper\.[^[:space:]]*/wallpaper.$file_extension/g" $wallpaper_config # Replace current extension by new extension
|
||||||
|
if [ $? != 0 ]; then
|
||||||
|
echo "Aborted."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Reload Hyprpaper
|
||||||
|
pkill hyprpaper
|
||||||
|
hyprctl dispatch exec hyprpaper > /dev/null # Start hyprpaper and hide stdout output
|
||||||
|
# Or you can do the old fashioned way :
|
||||||
|
# nohup hyprpaper </dev/null >/dev/null 2>&1 &
|
||||||
|
|
||||||
|
echo "Done"
|
||||||
|
exit 0
|
||||||
|
else
|
||||||
|
echo "Couldn't find '${1}': No such file or directory"
|
||||||
|
exit 1
|
||||||
|
fi
|
1720
config/.p10k.zsh
Normal file
1720
config/.p10k.zsh
Normal file
File diff suppressed because it is too large
Load diff
16
config/.vimrc
Normal file
16
config/.vimrc
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
syntax on
|
||||||
|
filetype plugin indent on
|
||||||
|
|
||||||
|
set autoindent
|
||||||
|
set smartindent
|
||||||
|
set shiftwidth=4
|
||||||
|
set tabstop=4
|
||||||
|
set expandtab
|
||||||
|
set softtabstop=4
|
||||||
|
|
||||||
|
set relativenumber
|
||||||
|
set number
|
||||||
|
|
||||||
|
set showmatch
|
||||||
|
|
||||||
|
set cindent
|
100
config/.zshrc
Normal file
100
config/.zshrc
Normal file
|
@ -0,0 +1,100 @@
|
||||||
|
# Enable Powerlevel10k instant prompt. Should stay close to the top of ~/.zshrc.
|
||||||
|
# Initialization code that may require console input (password prompts, [y/n]
|
||||||
|
# confirmations, etc.) must go above this block; everything else may go below.
|
||||||
|
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
|
||||||
|
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Set the directory where we want to store zinit and plugins
|
||||||
|
ZINIT_HOME="${XDG_DATA_HOME:-${HOME}/.local/share}/zinit/zinit.git"
|
||||||
|
|
||||||
|
# Download zinit if not present
|
||||||
|
if [ ! -d $ZINIT_HOME ]; then
|
||||||
|
mkdir -p "$(dirname $ZINIT_HOME)"
|
||||||
|
git clone https://github.com/zdharma-continuum/zinit.git "$ZINIT_HOME"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Load zinit
|
||||||
|
source "${ZINIT_HOME}/zinit.zsh"
|
||||||
|
|
||||||
|
# Add in Powerlevel10k
|
||||||
|
zinit ice depth=1; zinit light romkatv/powerlevel10k
|
||||||
|
|
||||||
|
# Add in zsh plugins
|
||||||
|
zinit light zsh-users/zsh-syntax-highlighting
|
||||||
|
zinit light zsh-users/zsh-completions
|
||||||
|
zinit light zsh-users/zsh-autosuggestions
|
||||||
|
zinit light Aloxaf/fzf-tab
|
||||||
|
|
||||||
|
# Add in snippets (omz plugins)
|
||||||
|
zinit snippet OMZP::git
|
||||||
|
zinit snippet OMZP::archlinux
|
||||||
|
zinit snippet OMZP::sudo
|
||||||
|
#zinit snippet OMZP::command-not-found
|
||||||
|
|
||||||
|
#zinit snippet OMZP::kubectl
|
||||||
|
#zinit snippet OMZP::kubectx
|
||||||
|
|
||||||
|
# Load completions
|
||||||
|
autoload -U compinit && compinit
|
||||||
|
|
||||||
|
zinit cdreplay -q # Optimize cache (recommended by the zinit doc)
|
||||||
|
|
||||||
|
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
|
||||||
|
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
|
||||||
|
|
||||||
|
# Keybindings
|
||||||
|
bindkey -e # Use emacs keybindings
|
||||||
|
bindkey '^p' history-search-backward
|
||||||
|
bindkey '^n' history-search-forward
|
||||||
|
bindkey '^[[3~' delete-char # Makes the delete key work properly
|
||||||
|
bindkey '^[[3;5~' kill-word # Makes the delete key work properly
|
||||||
|
# Missing ctrl+delete
|
||||||
|
bindkey "^[[1;5C" forward-word # Same with M-arrows
|
||||||
|
bindkey "^[[1;5D" backward-word
|
||||||
|
|
||||||
|
# History
|
||||||
|
HISTSIZE=5000
|
||||||
|
HISTFILE=~/.zsh_hist
|
||||||
|
SAVEHIST=$HISTSIZE
|
||||||
|
setopt appendhistory
|
||||||
|
setopt sharehistory
|
||||||
|
setopt hist_ignore_space
|
||||||
|
# The following lines concerns history duplicates
|
||||||
|
# They're disabled as I prefer having a real history of my commands
|
||||||
|
#HISTDUP=erase
|
||||||
|
#setopt hist_ignore_all_dups
|
||||||
|
#setopt hist_ignore_dups
|
||||||
|
#setopt hist_find_no_dups
|
||||||
|
|
||||||
|
# Completions styling
|
||||||
|
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}' # Makes completions case insensitive
|
||||||
|
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}" # Makes completions colored
|
||||||
|
zstyle ':completion:*' menu no # Hide the default completions menu (replaced by fzf)
|
||||||
|
zstyle ':fzf-tab:complete:cd:*' fzf-preview 'ls --color $realpath'
|
||||||
|
setopt correct # 'Did you mean'
|
||||||
|
|
||||||
|
# Environment variables
|
||||||
|
export PATH=$PATH:~/.local/bin
|
||||||
|
|
||||||
|
# Aliases
|
||||||
|
alias cl='clear'
|
||||||
|
alias hyprcfg='vim ~/.config/hypr/'
|
||||||
|
alias zcfg='vim ~/.zshrc'
|
||||||
|
alias icat='kitten icat'
|
||||||
|
# Power management
|
||||||
|
alias power-draw="cat /sys/class/power_supply/BAT1/current_now /sys/class/power_supply/BAT1/voltage_now | xargs | awk '{print \$1*\$2/1e12 \" W\"}\'"
|
||||||
|
alias battery='cat /sys/class/power_supply/BAT1/capacity'
|
||||||
|
# Override some default commands with more practical alternatives
|
||||||
|
alias ls='eza --icons=automatic --tree --level=1 --follow-symlinks --no-quotes'
|
||||||
|
alias lsa='ls -a'
|
||||||
|
alias lsl='eza --icons=automatic --long --header --group -M'
|
||||||
|
alias tree='ls --level=3'
|
||||||
|
# Keep default commands accessible
|
||||||
|
alias lsd='/usr/bin/ls --color'
|
||||||
|
# Random stuff
|
||||||
|
# ...
|
||||||
|
|
||||||
|
# Shell integrations
|
||||||
|
eval "$(fzf --zsh)"
|
||||||
|
eval "$(zoxide init --cmd cd zsh)" # Override cd with zoxide
|
1
packages/aur.pkgs
Normal file
1
packages/aur.pkgs
Normal file
|
@ -0,0 +1 @@
|
||||||
|
albert
|
8
packages/cli-dev-tools.pkgs
Normal file
8
packages/cli-dev-tools.pkgs
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
base-devel
|
||||||
|
eza
|
||||||
|
fastfetch
|
||||||
|
fzf
|
||||||
|
git
|
||||||
|
gnome-keyring
|
||||||
|
openssh
|
||||||
|
zoxide
|
16
packages/core.pkgs
Normal file
16
packages/core.pkgs
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
apparmor
|
||||||
|
vim
|
||||||
|
ufw
|
||||||
|
intel-ucode
|
||||||
|
sudo
|
||||||
|
grub
|
||||||
|
efibootmgr
|
||||||
|
os-prober
|
||||||
|
networkmanager
|
||||||
|
iwd
|
||||||
|
mandoc
|
||||||
|
man-pages
|
||||||
|
sof-firmware
|
||||||
|
zsh
|
||||||
|
htop
|
||||||
|
zram-generator
|
16
packages/desktop.pkgs
Normal file
16
packages/desktop.pkgs
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
pipewire-jack
|
||||||
|
pipewire
|
||||||
|
wireplumber
|
||||||
|
pipewire-pulse
|
||||||
|
greetd-tuigreet
|
||||||
|
hypridle
|
||||||
|
hyprland
|
||||||
|
hyprlock
|
||||||
|
hyprpaper
|
||||||
|
hypr-qtutils
|
||||||
|
hyprpolkitagent
|
||||||
|
xdg-desktop-portal-hyprland
|
||||||
|
waybar
|
||||||
|
power-profiles-daemon
|
||||||
|
fnott
|
||||||
|
kitty
|
4
packages/fonts.pkgs
Normal file
4
packages/fonts.pkgs
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
ttf-dejavu
|
||||||
|
ttf-jetbrains-mono-nerd
|
||||||
|
noto-fonts
|
||||||
|
noto-fonts-emoji
|
2
packages/intel.pkgs
Normal file
2
packages/intel.pkgs
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
intel-media-driver
|
||||||
|
intel-ucode
|
5
packages/theming.pkgs
Normal file
5
packages/theming.pkgs
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
papirus-icon-theme
|
||||||
|
breeze
|
||||||
|
breeze5
|
||||||
|
qt6ct
|
||||||
|
adw-gtk-theme
|
109
setup.sh
Normal file
109
setup.sh
Normal file
|
@ -0,0 +1,109 @@
|
||||||
|
#!/bin/sh
|
||||||
|
version="Beta 25.04.04"
|
||||||
|
|
||||||
|
echo "Atlas Desktop Installer - ${version}\n"
|
||||||
|
|
||||||
|
# Definitions
|
||||||
|
|
||||||
|
## Vars
|
||||||
|
script_path=$PWD
|
||||||
|
pkgs_path="${script_path}/packages"
|
||||||
|
config_path="${script_path}/config"
|
||||||
|
CPU_vendor=$(lscpu | grep Vendor | awk '{print $NF}')
|
||||||
|
dotfiles_path="~/.dotfiles"
|
||||||
|
|
||||||
|
|
||||||
|
## Functions
|
||||||
|
function install() {
|
||||||
|
echo "Downloading $1 packages"
|
||||||
|
# sudo pacman -Syu --noconfirm --color auto $(cat $pkgs_path/$1.pkgs)
|
||||||
|
echo "Done"
|
||||||
|
}
|
||||||
|
function install-aur() {
|
||||||
|
echo "Downloading $1 packages"
|
||||||
|
# paru -Syu --noconfirm $(cat $pkgs_path/$1.pkgs)
|
||||||
|
echo "Done"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Checks
|
||||||
|
|
||||||
|
## Sudo installed
|
||||||
|
pacman -Q sudo > /dev/null
|
||||||
|
if [ $? != 0 ]; then
|
||||||
|
echo "Please install 'sudo' first"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
## Scripts presence
|
||||||
|
if [ ! -d $pkgs_path ]; then
|
||||||
|
echo "Couldn't find 'packages' folder inside ${script_path}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -d $config_path ]; then
|
||||||
|
echo "Couldn't find 'config' folder inside ${script_path}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
# Install packages
|
||||||
|
|
||||||
|
echo "--- Downloading packages ---"
|
||||||
|
|
||||||
|
##
|
||||||
|
install core
|
||||||
|
install cli-dev-tools
|
||||||
|
install fonts
|
||||||
|
install desktop
|
||||||
|
install theming
|
||||||
|
|
||||||
|
## Install vendor specific software
|
||||||
|
if [ $CPU_vendor == "Genuine Intel" ]; then
|
||||||
|
install intel
|
||||||
|
fi
|
||||||
|
|
||||||
|
## Install paru
|
||||||
|
git clone https://aur.archlinux.org/paru.git /tmp/paru &&
|
||||||
|
cd /tmp/paru &&
|
||||||
|
makepkg -si
|
||||||
|
cd $script_path
|
||||||
|
|
||||||
|
install-aur aur
|
||||||
|
|
||||||
|
# Configuration
|
||||||
|
|
||||||
|
## Dotfiles
|
||||||
|
cp $config_path $dotfiles_path &&
|
||||||
|
cd $dotfiles_path &&
|
||||||
|
stow .
|
||||||
|
cd $script_path
|
||||||
|
|
||||||
|
## Swap (Zram)
|
||||||
|
is_zram_active=$(sudo systemctl is-active systemd-zram-setup@zram0.service)
|
||||||
|
if [ is_zram_active != "active" ]; then
|
||||||
|
...
|
||||||
|
fi
|
||||||
|
|
||||||
|
## Mandatory Access Control (Apparmor)
|
||||||
|
is_aa_active=$(sudo systemctl is-active apparmor.service)
|
||||||
|
if [ is_aa_active != "active" ]; then
|
||||||
|
echo "========================================"
|
||||||
|
echo "WARNING: you don't have apparmor enabled"
|
||||||
|
echo "Since this script is not yet capable to handle kernel parameters, you'll have to do it yourself"
|
||||||
|
echo "Please refer to https://wiki.archlinux.org/title/AppArmor"
|
||||||
|
echo "========================================"
|
||||||
|
fi
|
||||||
|
|
||||||
|
## Display manager (Greetd)
|
||||||
|
sudo systemctl enable greetd
|
||||||
|
|
||||||
|
## Firewall (UFW)
|
||||||
|
sudo systemctl enable ufw
|
||||||
|
sudo ufw enable
|
||||||
|
|
||||||
|
# Finish
|
||||||
|
|
||||||
|
fastfetch
|
||||||
|
echo
|
||||||
|
echo "Installation finished"
|
||||||
|
echo "Please check the previous outputs for warnings"
|
||||||
|
echo "You can make final adjustements before rebooting"
|
Loading…
Reference in a new issue