Compare commits

...

142 Commits

Author SHA1 Message Date
463889f166 use capslock as esc 2024-09-19 17:57:15 +02:00
564708e505 some zshrc stuff 2024-09-08 21:55:53 +02:00
7911ff53b8 added lazygit config 2024-09-08 21:55:16 +02:00
058334fdfe removed unused profile config vars 2024-09-08 21:54:37 +02:00
83e63b5d83 moved desktop scripts to nix package 2024-09-08 21:53:29 +02:00
a9323f4aec hyprland new mouse settings 2024-09-08 21:51:50 +02:00
2834f960b3 git delta for blame 2024-09-08 21:24:58 +02:00
17ecd5ec71 alacritty ui changes 2024-09-08 21:21:32 +02:00
e3934aea05 added boot to windows from nix config to powermenu 2024-06-18 21:35:17 +02:00
deaff85de5 fixed oh-my-posh promt order 2024-06-18 21:33:24 +02:00
ae0181148b removed metapkg
not needed anymore. Switched from Arch
2024-06-18 21:32:24 +02:00
e4d2947f66 added oh-my-posh. Removed p10k 2024-06-11 23:44:44 +02:00
21769684b1 Merge pull request 'nix is now the master' (#1) from nix into master
Reviewed-on: #1
2024-06-01 19:12:43 +00:00
ec866a2bb1 vscode cleanup 2024-06-01 21:10:43 +02:00
880a59e531 chadrc color theme 2024-06-01 21:10:03 +02:00
857dff3253 removed unused wallpaper set calls 2024-06-01 21:03:42 +02:00
4ca3f717d6 oh yeah it's update time 2024-06-01 20:58:43 +02:00
bf3d8f2215 fixed screenshot script path in hyprland 2024-03-31 23:17:02 +02:00
71abf58c40 updated scripts 2024-03-31 23:16:00 +02:00
45e1045a90 removed unused scripts 2024-03-31 23:15:28 +02:00
20569ee0a7 removed scripts in from PATH 2024-03-31 23:12:58 +02:00
cd8bd0c95f flatpak overrides update new paths 2024-03-31 23:12:05 +02:00
1c8beadaa6 too lazy. something zsh. 2024-03-31 23:10:27 +02:00
425a7e9565 .profile cleanup 2024-03-31 23:09:19 +02:00
9e652df0e9 added .vscode to gitignore 2024-03-31 21:54:56 +02:00
a61c8a5e78 added webp coversion scipt 2024-03-07 14:24:28 +01:00
92b619f61b added new permission for steam flatpak 2024-03-05 11:38:25 +01:00
19f7e68a2e fixed shebang in script 2024-03-05 11:36:09 +01:00
e2143ef4d8 updated gtk config 2024-03-05 11:35:00 +01:00
48225e8e97 untracked p10k config 2024-03-05 11:32:50 +01:00
b2f3428a2b added product.json to vscodium 2024-03-04 17:45:01 +01:00
3ba41f56dc linked vscodium config 2024-03-04 15:55:07 +01:00
7f80be1f31 added git-unpushed script 2024-02-28 23:28:06 +01:00
70535430b9 fixed .profile data path 2024-02-26 14:58:18 +01:00
9c917bd97f nixed zshrc 2024-02-26 14:56:07 +01:00
dc75f8b062 removed nord colors file for hyprland 2024-01-12 04:26:20 +01:00
865f63ecbe added default colors for hyprland 2024-01-12 04:24:56 +01:00
f3ccfbfb9d added waybar color template for wal 2024-01-12 04:21:09 +01:00
fa6deede5f added wal.sh 2024-01-12 02:48:16 +01:00
571d65bda8 use sudoedit 2024-01-12 00:39:49 +01:00
2425b9ec52 removed hyper-chan :( 2024-01-12 00:38:53 +01:00
f3606d3fd0 screenshit stuff 2023-12-02 02:24:01 +01:00
5c9cb4ef94 profile update 2023-12-02 02:23:04 +01:00
a8c82f7294 updated zshrc 2023-12-02 02:22:06 +01:00
a93fb0f4ec waybar update 2023-12-02 00:00:56 +01:00
08390b9437 metapkg update 2023-12-01 23:56:54 +01:00
fcc14643c1 hyperland update keybinds & xkb setting 2023-12-01 23:51:50 +01:00
6500282293 added eww config 2023-11-27 00:34:43 +01:00
cd5ae55cd3 fixed git profile select 2023-11-07 18:46:22 +01:00
80199181b9 removed upload to nextcloud 2023-11-01 23:29:52 +01:00
851b1538ab moved global gitignore into git config dir 2023-11-01 23:28:12 +01:00
7ee2892ec1 updated git config to use seperate user profiles 2023-11-01 23:23:01 +01:00
a0907a888f added uploade image script for imgur upload 2023-11-01 23:17:43 +01:00
ac09714cc6 changed waybar style and config 2023-10-26 20:57:09 +02:00
b33675b792 added current waybar style 2023-10-25 22:45:26 +02:00
59dff59883 updated metapackage 2023-10-19 15:16:52 +02:00
d79e9d6881 updated gitconfig 2023-10-18 00:44:26 +02:00
4a67266a2f open new project in vscode 2023-10-18 00:38:17 +02:00
d236dcc8c7 updated screenshot scripts 2023-10-18 00:37:29 +02:00
12cd2e2fba minor fixes in scripts 2023-10-18 00:34:53 +02:00
29841882d4 waybar on top layer for context menu fix 2023-10-18 00:18:27 +02:00
fd4fae0cd5 windows rules for ts3,dc,ff & color theme 2023-10-18 00:16:27 +02:00
b054af43e2 added cs2 audio fix 2023-09-28 23:05:09 +02:00
86c0ceeaaa removed unused scripts 2023-09-28 20:22:18 +02:00
034a8258d4 fixed waybar config 2023-09-14 15:44:31 +02:00
b91afebd2a updated hyprland config 2023-09-14 15:42:20 +02:00
6865cd761f added flatpack overrides 2023-09-14 00:33:49 +02:00
8b2a21af68 added new project script 2023-09-05 17:08:38 +02:00
d2c122e4c9 vscode with wayland is not perfect yet 2023-08-08 16:39:14 +02:00
e209973cb1 profile disable gpg dir and at stuff 2023-08-08 16:37:50 +02:00
3eb5a27a02 added duf alias 2023-08-08 16:36:52 +02:00
be52a4c459 added metapkg 2023-08-08 16:35:25 +02:00
f0e6726728 added audio buttons 2023-05-11 18:48:36 +02:00
fd3c7ac30c hyperland added SDL env 2023-05-11 18:48:17 +02:00
c4104d12f3 removed polybar 2023-05-05 15:41:27 +02:00
209b269343 removed picom 2023-05-05 15:40:22 +02:00
e16e40eafe removed nitrogen 2023-05-05 15:39:58 +02:00
9832e2db6a removed i3 config 2023-05-05 15:39:32 +02:00
1b0ef7b91f added swaync config 2023-05-05 15:37:42 +02:00
9e6377bf59 removed dunstrc 2023-05-05 15:37:19 +02:00
cea6e1450c added waybar config 2023-05-05 15:35:28 +02:00
0cbb143d31 updated rofi 2023-05-05 15:34:30 +02:00
035283fcce added hyprpaper config 2023-05-05 15:33:09 +02:00
449383d535 added hyperland config 2023-05-05 15:32:51 +02:00
13576ad416 added vscode flags to use wayland by default 2023-05-05 15:32:09 +02:00
2dc054c0a9 added nvchad's config file
it need to be simlinked into the nvchad at
.config/nvim/lua/custom/chadrc.lua
2023-05-05 15:28:37 +02:00
03535234ca use nvchad for neovim 2023-05-05 15:18:00 +02:00
8ce5ac1bde updated zshrc 2023-05-05 15:03:03 +02:00
405ba3fd5d added some stuff to profile 2023-05-05 15:01:41 +02:00
739edfe915 updated p10k config 2023-05-05 14:59:54 +02:00
b0016360ca removed nextcloud share scripts 2022-09-09 00:09:35 +02:00
57f2b1100d archwiki script improvement 2022-09-09 00:08:43 +02:00
160500ab1d animated wallpaper script fix 2022-09-09 00:07:54 +02:00
9ad0179554 removed spotifyd stuff 2022-09-09 00:06:35 +02:00
8cc013ad0a added upload last steam screenshot to rofi 2022-09-09 00:04:51 +02:00
b5bb2a75ca updated mimeapps.list 2022-09-09 00:03:34 +02:00
bac7ded52a updated vscode settings 2022-09-09 00:00:05 +02:00
1f556c6d24 added upload-last-steam-screenshot.sh 2022-09-08 12:02:04 +02:00
ac612a40b5 added last steam screenshot script 2022-09-08 01:49:41 +02:00
14d9dfeef7 moved p10k config 2022-06-08 21:36:49 +02:00
43259d2f0f added mangohud config 2022-05-29 20:45:22 +02:00
4479abcf31 fixed pywal rofi theme 2022-05-29 20:44:03 +02:00
98fd0208f9 click to unmute 2022-05-29 20:43:11 +02:00
076999678a freed the home dir more 2022-05-29 20:42:18 +02:00
fd432089e4 changed toggle mute script in i3 2022-05-29 19:35:59 +02:00
af6676a8b6 changed toggle mute 2022-05-29 19:07:06 +02:00
307fdec462 moved gtk config 2022-05-29 19:05:14 +02:00
c3c5f26bb9 moved gitconfig 2022-05-29 19:03:37 +02:00
a1c1477d6a moved tmux config 2022-05-29 19:02:21 +02:00
524436a1a6 added ZSH_VERSION to zcompdump 2022-05-29 18:53:01 +02:00
7560b8678d added more bin dirs to path 2022-05-29 18:52:19 +02:00
645c66ec29 added XDG_STATE_HOME 2022-05-29 18:46:41 +02:00
d73317997f added click handler to polybar playerctl 2022-05-29 18:44:52 +02:00
ea8c69925a added origin fix to i3 2022-05-29 18:43:44 +02:00
663ade9046 new alacritty config 2022-02-25 16:02:41 +01:00
68795a52de vscode terminal keybindings 2022-02-25 16:01:57 +01:00
19fd7d86e3 tmux mouse scroll 2022-01-20 01:21:30 +01:00
b31c377e8e git diff 2021-12-20 01:58:32 +01:00
dcd0feccdb use old name for git 2021-10-28 19:49:26 +02:00
0ec52e0427 removed unused desktop files 2021-10-28 19:48:14 +02:00
679dc4c00d delete xmonad 2021-10-28 19:46:27 +02:00
0736615eb8 added more mimetypes 2021-10-28 19:45:43 +02:00
aecfacd0bf fixed "open in termnial" in thunar 2021-10-28 19:44:07 +02:00
d9a5387827 improved zshrc 2021-10-28 19:43:04 +02:00
7c5689aa9f added pacman browse aur script 2021-06-01 20:22:44 +02:00
0d901f25a2 new ls command 2021-05-24 15:31:03 +02:00
31ec109990 global gitignore 2021-05-24 15:30:34 +02:00
c12258d4c5 nvim clipboard & save as sudo 2021-05-24 15:28:48 +02:00
77b7bad05a mimetypes 2021-05-24 15:28:13 +02:00
557bc6ab98 added vscode React snippet 2021-05-24 15:27:08 +02:00
98fb809911 vscode settings 2021-05-24 15:26:39 +02:00
c179252621 i3 audiokeys default sink 2021-04-02 18:28:36 +02:00
d66feaa4d7 fixed path bug in nc script 2021-03-24 23:17:20 +01:00
9b357d7d82 image support for nc-share.sh 2021-03-07 01:14:36 +01:00
425e4f2bdc improved nc share 2021-03-07 01:09:00 +01:00
4c250aecf9 new notify system 2021-03-06 23:00:33 +01:00
5932cf96ee unumte on start 2021-03-02 20:38:53 +01:00
f1b5a56283 android_home envar 2021-03-02 20:37:36 +01:00
9c8822fd20 fixed typo 2021-03-02 20:36:32 +01:00
1c1377c3e3 git master branch config 2021-02-26 16:12:43 +01:00
2cf52e0d49 vim stuff 2021-02-26 16:12:16 +01:00
b3d133aa28 zsh stuff for ssh 2021-02-26 16:11:35 +01:00
128 changed files with 2226 additions and 4363 deletions

View File

@@ -7,5 +7,20 @@
{ {
"key": "ctrl+shift+[Equal]", "key": "ctrl+shift+[Equal]",
"command": "-workbench.action.terminal.toggleTerminal" "command": "-workbench.action.terminal.toggleTerminal"
},
{
"key": "ctrl+shift+c",
"command": "-workbench.action.terminal.openNativeConsole",
"when": "!terminalFocus"
},
{
"key": "ctrl+shift+enter",
"command": "workbench.action.terminal.new",
"when": "terminalProcessSupported && terminalFocus"
},
{
"key": "ctrl+shift+`",
"command": "-workbench.action.terminal.new",
"when": "terminalProcessSupported"
} }
] ]

View File

@@ -1,23 +1,44 @@
{ {
"glassit.alpha": 220,
"workbench.iconTheme": "vscode-icons",
"terminal.integrated.fontFamily": "'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback', 'Hack Nerd Font'", "terminal.integrated.fontFamily": "'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback', 'Hack Nerd Font'",
"workbench.enableExperiments": false,
"update.mode": "manual", "update.mode": "manual",
"telemetry.enableCrashReporter": false, "telemetry.enableCrashReporter": false,
"telemetry.enableTelemetry": false, "telemetry.enableTelemetry": false,
"vsicons.dontShowNewVersionMessage": true,
"workbench.colorTheme": "Visual Studio Dark",
"terminal.integrated.cursorStyle": "line", "terminal.integrated.cursorStyle": "line",
"explorer.confirmDelete": false, "explorer.confirmDelete": false,
"C_Cpp.intelliSenseEngine": "Tag Parser",
"explorer.confirmDragAndDrop": false, "explorer.confirmDragAndDrop": false,
"git.confirmSync": false, "git.confirmSync": false,
"csharp.semanticHighlighting.enabled": true,
"terminal.external.linuxExec": "alacritty", "terminal.external.linuxExec": "alacritty",
"terminal.integrated.copyOnSelection": true, "terminal.integrated.copyOnSelection": true,
"terminal.integrated.rightClickBehavior": "paste", "terminal.integrated.rightClickBehavior": "paste",
"debug.onTaskErrors": "showErrors", "debug.onTaskErrors": "showErrors",
"omnisharp.enableImportCompletion": true, "gitlens.currentLine.enabled": false,
"omnisharp.useGlobalMono": "always" "gitlens.hovers.currentLine.over": "line",
} "gitlens.codeLens.enabled": false,
"workbench.editorAssociations": {
"*.hex": "hexEditor.hexedit",
"*.bin": "hexEditor.hexedit"
},
"go.toolsManagement.autoUpdate": true,
"[yaml]": {
"editor.insertSpaces": true,
"editor.tabSize": 2,
"editor.autoIndent": "advanced"
},
"[dockercompose]": {
"editor.insertSpaces": true,
"editor.tabSize": 2,
"editor.autoIndent": "advanced",
"editor.quickSuggestions": {
"other": true,
"comments": false,
"strings": true
}
},
"typescript.updateImportsOnFileMove.enabled": "always",
"svelte.enable-ts-plugin": true,
"workbench.startupEditor": "none",
"terminal.integrated.showExitAlert": false,
"terminal.integrated.enableShellIntegration": true,
"diffEditor.ignoreTrimWhitespace": false,
"editor.inlineSuggest.enabled": true
}

View File

@@ -20,5 +20,22 @@
"", "",
"export default $1;" "export default $1;"
] ]
},
"FuncComponent":{
"prefix": "rfc",
"description": "React functional component",
"body": [
"import React from \"react\"",
"",
"const $1: React.FC = () => {",
"\treturn (",
"\t\t<div>",
"\t\t\t$1",
"\t\t</div>",
"\t)",
"}",
"",
"export default $1",
]
} }
} }

View File

@@ -0,0 +1,12 @@
fps
frame_timing
cpu_stats
gpu_stats
cpu_temp
gpu_temp
wine
show_fps_limit
fps_limit=0,60,120
toggle_hud=Shift_L+F12
toggle_logging=
no_display

View File

@@ -4,23 +4,10 @@
<icon>utilities-terminal</icon> <icon>utilities-terminal</icon>
<name>Open Terminal Here</name> <name>Open Terminal Here</name>
<unique-id>1593976619886933-1</unique-id> <unique-id>1593976619886933-1</unique-id>
<command>exo-open --working-directory %f --launch TerminalEmulator</command> <command>alacritty --working-directory %f</command>
<description></description> <description></description>
<patterns>*</patterns> <patterns>*</patterns>
<startup-notify/> <startup-notify/>
<directories/> <directories/>
</action> </action>
<action>
<icon></icon>
<name>Upload to Nextcloud</name>
<unique-id>1594761029052126-1</unique-id>
<command>$XDG_DATA_HOME/scripts/nc-share-file.sh %f | xclip -i -selection &quot;clipboard&quot; &amp;&amp; notify-send -u low &quot;Upload complete&quot;</command>
<description>Uploads file to Nextcloud and copys the share link</description>
<patterns>*</patterns>
<audio-files/>
<image-files/>
<other-files/>
<text-files/>
<video-files/>
</action>
</actions> </actions>

View File

@@ -0,0 +1 @@
/home/niklas/.config/Code - OSS/User/keybindings.json

View File

@@ -0,0 +1 @@
/home/niklas/.config/Code - OSS/User/settings.json

View File

@@ -0,0 +1,9 @@
{
"extensionsGallery": {
"serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery",
"cacheUrl": "https://vscode.blob.core.windows.net/gallery/index",
"itemUrl": "https://marketplace.visualstudio.com/items",
"controlUrl": "",
"recommendationsUrl": ""
}
}

View File

@@ -0,0 +1,15 @@
ipc_socket = false
live_config_reload = false
[cursor]
unfocused_hollow = false
[cursor.style]
shape = "Beam"
[mouse]
hide_when_typing = true
[window]
opacity = 0.7
decorations = "None"
blur = true

View File

@@ -1,663 +0,0 @@
# _
# /_| /_ _ _ '_/_/
#( |((/( / / / /(/
# /
# Configuration for Alacritty, the GPU enhanced terminal emulator.
# Any items in the `env` entry below will be added as
# environment variables. Some entries may override variables
# set by alacritty itself.
#env:
# TERM variable
#
# This value is used to set the `$TERM` environment variable for
# each instance of Alacritty. If it is not present, alacritty will
# check the local terminfo database and use `alacritty` if it is
# available, otherwise `xterm-256color` is used.
#TERM: alacritty
#window:
# Window dimensions (changes require restart)
#
# Specified in number of columns/lines, not pixels.
# If both are `0`, this setting is ignored.
#dimensions:
# columns: 0
# lines: 0
# Window position (changes require restart)
#
# Specified in number of pixels.
# If the position is not set, the window manager will handle the placement.
#position:
# x: 0
# y: 0
# Window padding (changes require restart)
#
# Blank space added around the window in pixels. This padding is scaled
# by DPI and the specified value is always added at both opposing sides.
#padding:
# x: 0
# y: 0
# Spread additional padding evenly around the terminal content.
#dynamic_padding: false
# Window decorations
#
# Values for `decorations`:
# - full: Borders and title bar
# - none: Neither borders nor title bar
#
# Values for `decorations` (macOS only):
# - transparent: Title bar, transparent background and title bar buttons
# - buttonless: Title bar, transparent background, but no title bar buttons
#decorations: full
# Startup Mode (changes require restart)
#
# Values for `startup_mode`:
# - Windowed
# - Maximized
# - Fullscreen
#
# Values for `startup_mode` (macOS only):
# - SimpleFullscreen
#startup_mode: Windowed
# Window title
#title: Alacritty
# Window class (Linux/BSD only):
#class:
# Application instance name
#instance: Alacritty
# General application class
#general: Alacritty
# GTK theme variant (Linux/BSD only)
#
# Override the variant of the GTK theme. Commonly supported values are `dark` and `light`.
# Set this to `None` to use the default theme variant.
#gtk_theme_variant: None
#scrolling:
# Maximum number of lines in the scrollback buffer.
# Specifying '0' will disable scrolling.
#history: 10000
# Scrolling distance multiplier.
#multiplier: 3
# Font configuration
#font:
# Normal (roman) font face
#normal:
# Font family
#
# Default:
# - (macOS) Menlo
# - (Linux/BSD) monospace
# - (Windows) Consolas
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Regular
# Bold font face
#bold:
# Font family
#
# If the bold family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Bold
# Italic font face
#italic:
# Font family
#
# If the italic family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Italic
# Bold italic font face
#bold_italic:
# Font family
#
# If the bold italic family is not specified, it will fall back to the
# value specified for the normal font.
#family: monospace
# The `style` can be specified to pick a specific face.
#style: Bold Italic
# Point size
#size: 11.0
# Offset is the extra space around each character. `offset.y` can be thought of
# as modifying the line spacing, and `offset.x` as modifying the letter spacing.
#offset:
# x: 0
# y: 0
# Glyph offset determines the locations of the glyphs within their cells with
# the default being at the bottom. Increasing `x` moves the glyph to the right,
# increasing `y` moves the glyph upwards.
#glyph_offset:
# x: 0
# y: 0
# Thin stroke font rendering (macOS only)
#
# Thin strokes are suitable for retina displays, but for non-retina screens
# it is recommended to set `use_thin_strokes` to `false`
#
# macOS >= 10.14.x:
#
# If the font quality on non-retina display looks bad then set
# `use_thin_strokes` to `true` and enable font smoothing by running the
# following command:
# `defaults write -g CGFontRenderingFontSmoothingDisabled -bool NO`
#
# This is a global setting and will require a log out or restart to take
# effect.
#use_thin_strokes: true
# If `true`, bold text is drawn using the bright color variants.
#draw_bold_text_with_bright_colors: false
# Colors (Tomorrow Night Bright)
#colors:
# Default colors
#primary:
# background: '#000000'
# foreground: '#eaeaea'
# Bright and dim foreground colors
#
# The dimmed foreground color is calculated automatically if it is not present.
# If the bright foreground color is not set, or `draw_bold_text_with_bright_colors`
# is `false`, the normal foreground color will be used.
#dim_foreground: '#9a9a9a'
#bright_foreground: '#ffffff'
# Cursor colors
#
# Colors which should be used to draw the terminal cursor. If these are
# unset, the cursor color will be the inverse of the cell color.
#cursor:
# text: '#000000'
# cursor: '#ffffff'
# Vi mode cursor colors
#
# Colors for the cursor when the vi mode is active. If these are unset, the
# cursor color will be the inverse of the cell color.
#vi_mode_cursor:
# text: '#000000'
# cursor: '#ffffff'
# Selection colors
#
# Colors which should be used to draw the selection area. If selection
# background is unset, selection color will be the inverse of the cell colors.
# If only text is unset the cell text color will remain the same.
#selection:
# text: '#eaeaea'
# background: '#404040'
# Normal colors
#normal:
# black: '#000000'
# red: '#d54e53'
# green: '#b9ca4a'
# yellow: '#e6c547'
# blue: '#7aa6da'
# magenta: '#c397d8'
# cyan: '#70c0ba'
# white: '#eaeaea'
# Bright colors
#bright:
# black: '#666666'
# red: '#ff3334'
# green: '#9ec400'
# yellow: '#e7c547'
# blue: '#7aa6da'
# magenta: '#b77ee0'
# cyan: '#54ced6'
# white: '#ffffff'
# Dim colors
#
# If the dim colors are not set, they will be calculated automatically based
# on the `normal` colors.
#dim:
# black: '#000000'
# red: '#8c3336'
# green: '#7a8530'
# yellow: '#97822e'
# blue: '#506d8f'
# magenta: '#80638e'
# cyan: '#497e7a'
# white: '#9a9a9a'
# Indexed Colors
#
# The indexed colors include all colors from 16 to 256.
# When these are not set, they're filled with sensible defaults.
#
# Example:
# `- { index: 16, color: '#ff00ff' }`
#
#indexed_colors: []
# Visual Bell
#
# Any time the BEL code is received, Alacritty "rings" the visual bell. Once
# rung, the terminal background will be set to white and transition back to the
# default background color. You can control the rate of this transition by
# setting the `duration` property (represented in milliseconds). You can also
# configure the transition function by setting the `animation` property.
#
# Values for `animation`:
# - Ease
# - EaseOut
# - EaseOutSine
# - EaseOutQuad
# - EaseOutCubic
# - EaseOutQuart
# - EaseOutQuint
# - EaseOutExpo
# - EaseOutCirc
# - Linear
#
# Specifying a `duration` of `0` will disable the visual bell.
#visual_bell:
# animation: EaseOutExpo
# duration: 0
# color: '#ffffff'
# Background opacity
#
# Window opacity as a floating point number from `0.0` to `1.0`.
# The value `0.0` is completely transparent and `1.0` is opaque.
background_opacity: 0.8
selection:
#semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
# When set to `true`, selected text will be copied to the primary clipboard.
save_to_clipboard: false
# Allow terminal applications to change Alacritty's window title.
#dynamic_title: true
cursor:
# Cursor style
#
# Values for `style`:
# - ▇ Block
# - _ Underline
# - | Beam
style: Beam
# Vi mode cursor style
#
# If the vi mode cursor style is `None` or not specified, it will fall back to
# the style of the active value of the normal cursor.
#
# See `cursor.style` for available options.
#vi_mode_style: None
# If this is `true`, the cursor will be rendered as a hollow box when the
# window is not focused.
#unfocused_hollow: true
# Thickness of the cursor relative to the cell width as floating point number
# from `0.0` to `1.0`.
#thickness: 0.15
# Live config reload (changes require restart)
#live_config_reload: true
# Shell
#
# You can set `shell.program` to the path of your favorite shell, e.g. `/bin/fish`.
# Entries in `shell.args` are passed unmodified as arguments to the shell.
#
# Default:
# - (macOS) /bin/bash --login
# - (Linux/BSD) user login shell
# - (Windows) powershell
#shell:
# program: /bin/bash
# args:
# - --login
# Startup directory
#
# Directory the shell is started in. If this is unset, or `None`, the working
# directory of the parent process will be used.
#working_directory: None
# WinPTY backend (Windows only)
#
# Alacritty defaults to using the newer ConPTY backend if it is available,
# since it resolves a lot of bugs and is quite a bit faster. If it is not
# available, the the WinPTY backend will be used instead.
#
# Setting this option to `true` makes Alacritty use the legacy WinPTY backend,
# even if the ConPTY backend is available.
#winpty_backend: false
# Send ESC (\x1b) before characters when alt is pressed.
#alt_send_esc: true
#mouse:
# Click settings
#
# The `double_click` and `triple_click` settings control the time
# alacritty should wait for accepting multiple clicks as one double
# or triple click.
#double_click: { threshold: 300 }
#triple_click: { threshold: 300 }
# If this is `true`, the cursor is temporarily hidden when typing.
#hide_when_typing: false
#url:
# URL launcher
#
# This program is executed when clicking on a text which is recognized as a URL.
# The URL is always added to the command as the last parameter.
#
# When set to `None`, URL launching will be disabled completely.
#
# Default:
# - (macOS) open
# - (Linux/BSD) xdg-open
# - (Windows) explorer
#launcher:
# program: xdg-open
# args: []
# URL modifiers
#
# These are the modifiers that need to be held down for opening URLs when clicking
# on them. The available modifiers are documented in the key binding section.
#modifiers: None
# Mouse bindings
#
# Mouse bindings are specified as a list of objects, much like the key
# bindings further below.
#
# To trigger mouse bindings when an application running within Alacritty captures the mouse, the
# `Shift` modifier is automatically added as a requirement.
#
# Each mouse binding will specify a:
#
# - `mouse`:
#
# - Middle
# - Left
# - Right
# - Numeric identifier such as `5`
#
# - `action` (see key bindings)
#
# And optionally:
#
# - `mods` (see key bindings)
#mouse_bindings:
# - { mouse: Middle, action: PasteSelection }
# Key bindings
#
# Key bindings are specified as a list of objects. For example, this is the
# default paste binding:
#
# `- { key: V, mods: Control|Shift, action: Paste }`
#
# Each key binding will specify a:
#
# - `key`: Identifier of the key pressed
#
# - A-Z
# - F1-F24
# - Key0-Key9
#
# A full list with available key codes can be found here:
# https://docs.rs/glutin/*/glutin/event/enum.VirtualKeyCode.html#variants
#
# Instead of using the name of the keys, the `key` field also supports using
# the scancode of the desired key. Scancodes have to be specified as a
# decimal number. This command will allow you to display the hex scancodes
# for certain keys:
#
# `showkey --scancodes`.
#
# Then exactly one of:
#
# - `chars`: Send a byte sequence to the running application
#
# The `chars` field writes the specified string to the terminal. This makes
# it possible to pass escape sequences. To find escape codes for bindings
# like `PageUp` (`"\x1b[5~"`), you can run the command `showkey -a` outside
# of tmux. Note that applications use terminfo to map escape sequences back
# to keys. It is therefore required to update the terminfo when changing an
# escape sequence.
#
# - `action`: Execute a predefined action
#
# - ToggleViMode
# - Copy
# - Paste
# - PasteSelection
# - IncreaseFontSize
# - DecreaseFontSize
# - ResetFontSize
# - ScrollPageUp
# - ScrollPageDown
# - ScrollLineUp
# - ScrollLineDown
# - ScrollToTop
# - ScrollToBottom
# - ClearHistory
# - Hide
# - Minimize
# - Quit
# - ToggleFullscreen
# - SpawnNewInstance
# - ClearLogNotice
# - ClearSelection
# - ReceiveChar
# - None
#
# (`mode: Vi` only):
# - Open
# - Up
# - Down
# - Left
# - Right
# - First
# - Last
# - FirstOccupied
# - High
# - Middle
# - Low
# - SemanticLeft
# - SemanticRight
# - SemanticLeftEnd
# - SemanticRightEnd
# - WordRight
# - WordLeft
# - WordRightEnd
# - WordLeftEnd
# - Bracket
# - ToggleNormalSelection
# - ToggleLineSelection
# - ToggleBlockSelection
# - ToggleSemanticSelection
#
# (macOS only):
# - ToggleSimpleFullscreen: Enters fullscreen without occupying another space
#
# (Linux/BSD only):
# - CopySelection: Copies into selection buffer
#
# - `command`: Fork and execute a specified command plus arguments
#
# The `command` field must be a map containing a `program` string and an
# `args` array of command line parameter strings. For example:
# `{ program: "alacritty", args: ["-e", "vttest"] }`
#
# And optionally:
#
# - `mods`: Key modifiers to filter binding actions
#
# - Command
# - Control
# - Option
# - Super
# - Shift
# - Alt
#
# Multiple `mods` can be combined using `|` like this:
# `mods: Control|Shift`.
# Whitespace and capitalization are relevant and must match the example.
#
# - `mode`: Indicate a binding for only specific terminal reported modes
#
# This is mainly used to send applications the correct escape sequences
# when in different modes.
#
# - AppCursor
# - AppKeypad
# - Alt
#
# A `~` operator can be used before a mode to apply the binding whenever
# the mode is *not* active, e.g. `~Alt`.
#
# Bindings are always filled by default, but will be replaced when a new
# binding with the same triggers is defined. To unset a default binding, it can
# be mapped to the `ReceiveChar` action. Alternatively, you can use `None` for
# a no-op if you do not wish to receive input characters for that binding.
#
# If the same trigger is assigned to multiple actions, all of them are executed
# at once.
#key_bindings:
#- { key: Paste, action: Paste }
#- { key: Copy, action: Copy }
#- { key: L, mods: Control, action: ClearLogNotice }
#- { key: L, mods: Control, mode: ~Vi, chars: "\x0c" }
#- { key: PageUp, mods: Shift, mode: ~Alt, action: ScrollPageUp, }
#- { key: PageDown, mods: Shift, mode: ~Alt, action: ScrollPageDown }
#- { key: Home, mods: Shift, mode: ~Alt, action: ScrollToTop, }
#- { key: End, mods: Shift, mode: ~Alt, action: ScrollToBottom }
# Vi Mode
#- { key: Space, mods: Shift|Control, mode: Vi, action: ScrollToBottom }
#- { key: Space, mods: Shift|Control, action: ToggleViMode }
#- { key: Escape, mode: Vi, action: ClearSelection }
#- { key: I, mode: Vi, action: ScrollToBottom }
#- { key: I, mode: Vi, action: ToggleViMode }
#- { key: Y, mods: Control, mode: Vi, action: ScrollLineUp }
#- { key: E, mods: Control, mode: Vi, action: ScrollLineDown }
#- { key: G, mode: Vi, action: ScrollToTop }
#- { key: G, mods: Shift, mode: Vi, action: ScrollToBottom }
#- { key: B, mods: Control, mode: Vi, action: ScrollPageUp }
#- { key: F, mods: Control, mode: Vi, action: ScrollPageDown }
#- { key: U, mods: Control, mode: Vi, action: ScrollHalfPageUp }
#- { key: D, mods: Control, mode: Vi, action: ScrollHalfPageDown }
#- { key: Y, mode: Vi, action: Copy }
#- { key: Y, mode: Vi, action: ClearSelection }
#- { key: Copy, mode: Vi, action: ClearSelection }
#- { key: V, mode: Vi, action: ToggleNormalSelection }
#- { key: V, mods: Shift, mode: Vi, action: ToggleLineSelection }
#- { key: V, mods: Control, mode: Vi, action: ToggleBlockSelection }
#- { key: V, mods: Alt, mode: Vi, action: ToggleSemanticSelection }
#- { key: Return, mode: Vi, action: Open }
#- { key: K, mode: Vi, action: Up }
#- { key: J, mode: Vi, action: Down }
#- { key: H, mode: Vi, action: Left }
#- { key: L, mode: Vi, action: Right }
#- { key: Up, mode: Vi, action: Up }
#- { key: Down, mode: Vi, action: Down }
#- { key: Left, mode: Vi, action: Left }
#- { key: Right, mode: Vi, action: Right }
#- { key: Key0, mode: Vi, action: First }
#- { key: Key4, mods: Shift, mode: Vi, action: Last }
#- { key: Key6, mods: Shift, mode: Vi, action: FirstOccupied }
#- { key: H, mods: Shift, mode: Vi, action: High }
#- { key: M, mods: Shift, mode: Vi, action: Middle }
#- { key: L, mods: Shift, mode: Vi, action: Low }
#- { key: B, mode: Vi, action: SemanticLeft }
#- { key: W, mode: Vi, action: SemanticRight }
#- { key: E, mode: Vi, action: SemanticRightEnd }
#- { key: B, mods: Shift, mode: Vi, action: WordLeft }
#- { key: W, mods: Shift, mode: Vi, action: WordRight }
#- { key: E, mods: Shift, mode: Vi, action: WordRightEnd }
#- { key: Key5, mods: Shift, mode: Vi, action: Bracket }
# (Windows, Linux, and BSD only)
#- { key: V, mods: Control|Shift, action: Paste }
#- { key: C, mods: Control|Shift, action: Copy }
#- { key: C, mods: Control|Shift, mode: Vi, action: ClearSelection }
#- { key: Insert, mods: Shift, action: PasteSelection }
#- { key: Key0, mods: Control, action: ResetFontSize }
#- { key: Equals, mods: Control, action: IncreaseFontSize }
#- { key: Add, mods: Control, action: IncreaseFontSize }
#- { key: Subtract, mods: Control, action: DecreaseFontSize }
#- { key: Minus, mods: Control, action: DecreaseFontSize }
# (Windows only)
#- { key: Return, mods: Alt, action: ToggleFullscreen }
# (macOS only)
#- { key: K, mods: Command, mode: ~Vi, chars: "\x0c" }
#- { key: Key0, mods: Command, action: ResetFontSize }
#- { key: Equals, mods: Command, action: IncreaseFontSize }
#- { key: Add, mods: Command, action: IncreaseFontSize }
#- { key: Minus, mods: Command, action: DecreaseFontSize }
#- { key: K, mods: Command, action: ClearHistory }
#- { key: V, mods: Command, action: Paste }
#- { key: C, mods: Command, action: Copy }
#- { key: C, mods: Command, mode: Vi, action: ClearSelection }
#- { key: H, mods: Command, action: Hide }
#- { key: M, mods: Command, action: Minimize }
#- { key: Q, mods: Command, action: Quit }
#- { key: W, mods: Command, action: Quit }
#- { key: N, mods: Command, action: SpawnNewInstance }
#- { key: F, mods: Command|Control, action: ToggleFullscreen }
#debug:
# Display the time it takes to redraw each frame.
#render_timer: false
# Keep the log file after quitting Alacritty.
#persistent_logging: false
# Log level
#
# Values for `log_level`:
# - None
# - Error
# - Warn
# - Info
# - Debug
# - Trace
#log_level: Warn
# Print all received window events.
#print_events: false

20
.config/chadrc.lua Normal file
View File

@@ -0,0 +1,20 @@
---@type ChadrcConfig
local M = {}
M.ui = {
theme = 'vscode_dark',
transparency = true
}
-- Reset curser
vim.api.nvim_create_autocmd({"VimLeave"}, {
pattern = {"*"},
callback = function()
vim.o.guicursor = "a:ver1-blinkon0"
end
})
-- Enable strg + shift + c clipboard
vim.o.clipboard = "unnamedplus"
return M

View File

@@ -1,370 +0,0 @@
[global]
### Display ###
# Which monitor should the notifications be displayed on.
monitor = 0
# Display notification on focused monitor. Possible modes are:
# mouse: follow mouse pointer
# keyboard: follow window with keyboard focus
# none: don't follow anything
#
# "keyboard" needs a window manager that exports the
# _NET_ACTIVE_WINDOW property.
# This should be the case for almost all modern window managers.
#
# If this option is set to mouse or keyboard, the monitor option
# will be ignored.
follow = mouse
# The geometry of the window:
# [{width}]x{height}[+/-{x}+/-{y}]
# The geometry of the message window.
# The height is measured in number of notifications everything else
# in pixels. If the width is omitted but the height is given
# ("-geometry x2"), the message window expands over the whole screen
# (dmenu-like). If width is 0, the window expands to the longest
# message displayed. A positive x is measured from the left, a
# negative from the right side of the screen. Y is measured from
# the top and down respectively.
# The width can be negative. In this case the actual width is the
# screen width minus the width defined in within the geometry option.
geometry = "300x5-30+20"
# Show how many messages are currently hidden (because of geometry).
indicate_hidden = yes
# Shrink window if it's smaller than the width. Will be ignored if
# width is 0.
shrink = no
# The transparency of the window. Range: [0; 100].
# This option will only work if a compositing window manager is
# present (e.g. xcompmgr, compiz, etc.).
transparency = 20
# The height of the entire notification. If the height is smaller
# than the font height and padding combined, it will be raised
# to the font height and padding.
notification_height = 0
# Draw a line of "separator_height" pixel height between two
# notifications.
# Set to 0 to disable.
separator_height = 2
# Padding between text and separator.
padding = 8
# Horizontal padding.
horizontal_padding = 8
# Defines width in pixels of frame around the notification window.
# Set to 0 to disable.
frame_width = 0
# Defines color of the frame around the notification window.
frame_color = "#aaaaaa"
# Define a color for the separator.
# possible values are:
# * auto: dunst tries to find a color fitting to the background;
# * foreground: use the same color as the foreground;
# * frame: use the same color as the frame;
# * anything else will be interpreted as a X color.
separator_color = auto
# Sort messages by urgency.
sort = yes
# Don't remove messages, if the user is idle (no mouse or keyboard input)
# for longer than idle_threshold seconds.
# Set to 0 to disable.
# A client can set the 'transient' hint to bypass this. See the rules
# section for how to disable this if necessary
idle_threshold = 120
### Text ###
font = Monospace 8
# The spacing between lines. If the height is smaller than the
# font height, it will get raised to the font height.
line_height = 0
# Possible values are:
# full: Allow a small subset of html markup in notifications:
# <b>bold</b>
# <i>italic</i>
# <s>strikethrough</s>
# <u>underline</u>
#
# For a complete reference see
# <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>.
#
# strip: This setting is provided for compatibility with some broken
# clients that send markup even though it's not enabled on the
# server. Dunst will try to strip the markup but the parsing is
# simplistic so using this option outside of matching rules for
# specific applications *IS GREATLY DISCOURAGED*.
#
# no: Disable markup parsing, incoming notifications will be treated as
# plain text. Dunst will not advertise that it has the body-markup
# capability if this is set as a global setting.
#
# It's important to note that markup inside the format option will be parsed
# regardless of what this is set to.
markup = full
# The format of the message. Possible variables are:
# %a appname
# %s summary
# %b body
# %i iconname (including its path)
# %I iconname (without its path)
# %p progress value if set ([ 0%] to [100%]) or nothing
# %n progress value if set without any extra characters
# %% Literal %
# Markup is allowed
format = "<b>%s</b>\n%b"
# Alignment of message text.
# Possible values are "left", "center" and "right".
alignment = left
# Show age of message if message is older than show_age_threshold
# seconds.
# Set to -1 to disable.
show_age_threshold = 60
# Split notifications into multiple lines if they don't fit into
# geometry.
word_wrap = yes
# When word_wrap is set to no, specify where to make an ellipsis in long lines.
# Possible values are "start", "middle" and "end".
ellipsize = middle
# Ignore newlines '\n' in notifications.
ignore_newline = no
# Stack together notifications with the same content
stack_duplicates = false
# Hide the count of stacked notifications with the same content
hide_duplicate_count = false
# Display indicators for URLs (U) and actions (A).
show_indicators = yes
### Icons ###
# Align icons left/right/off
icon_position = left
# Scale larger icons down to this size, set to 0 to disable
max_icon_size = 32
# Paths to default icons.
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
### History ###
# Should a notification popped up from history be sticky or timeout
# as if it would normally do.
sticky_history = yes
# Maximum amount of notifications kept in history
history_length = 20
### Misc/Advanced ###
# dmenu path.
dmenu = /usr/bin/rofi
# Browser for opening urls in context menu.
browser = /usr/bin/firefox -new-tab
# Always run rule-defined scripts, even if the notification is suppressed
always_run_script = false
# Define the title of the windows spawned by dunst
title = Dunst
# Define the class of the windows spawned by dunst
class = Dunst
# Print a notification on startup.
# This is mainly for error detection, since dbus (re-)starts dunst
# automatically after a crash.
startup_notification = false
# Manage dunst's desire for talking
# Can be one of the following values:
# crit: Critical features. Dunst aborts
# warn: Only non-fatal warnings
# mesg: Important Messages
# info: all unimportant stuff
# debug: all less than unimportant stuff
verbosity = mesg
# Define the corner radius of the notification window
# in pixel size. If the radius is 0, you have no rounded
# corners.
# The radius will be automatically lowered if it exceeds half of the
# notification height to avoid clipping text and/or icons.
corner_radius = 0
### Legacy
# Use the Xinerama extension instead of RandR for multi-monitor support.
# This setting is provided for compatibility with older nVidia drivers that
# do not support RandR and using it on systems that support RandR is highly
# discouraged.
#
# By enabling this setting dunst will not be able to detect when a monitor
# is connected or disconnected which might break follow mode if the screen
# layout changes.
force_xinerama = false
### mouse
# Defines action of mouse event
# Possible values are:
# * none: Don't do anything.
# * do_action: If the notification has exactly one action, or one is marked as default,
# invoke it. If there are multiple and no default, open the context menu.
# * close_current: Close current notification.
# * close_all: Close all notifications.
mouse_left_click = close_current
mouse_middle_click = close_all
mouse_right_click = do_action
# Experimental features that may or may not work correctly. Do not expect them
# to have a consistent behaviour across releases.
[experimental]
# Calculate the dpi to use on a per-monitor basis.
# If this setting is enabled the Xft.dpi value will be ignored and instead
# dunst will attempt to calculate an appropriate dpi value for each monitor
# using the resolution and physical size. This might be useful in setups
# where there are multiple screens with very different dpi values.
per_monitor_dpi = false
[shortcuts]
# Shortcuts are specified as [modifier+][modifier+]...key
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
# "mod3" and "mod4" (windows-key).
# Xev might be helpful to find names for keys.
# Close notification.
#close = mod4+n
# Close all notifications.
close_all = mod4+n
# Redisplay last message(s).
# On the US keyboard layout "grave" is normally above TAB and left
# of "1". Make sure this key actually exists on your keyboard layout,
# e.g. check output of 'xmodmap -pke'
#history = mod4+m
# Context menu.
context = mod4+shift+n
[urgency_low]
# IMPORTANT: colors have to be defined in quotation marks.
# Otherwise the "#" and following would be interpreted as a comment.
background = "#222222"
foreground = "#888888"
timeout = 10
# Icon for notifications with low urgency, uncomment to enable
#icon = /path/to/icon
[urgency_normal]
background = "#285577"
foreground = "#ffffff"
timeout = 10
# Icon for notifications with normal urgency, uncomment to enable
#icon = /path/to/icon
[urgency_critical]
background = "#900000"
foreground = "#ffffff"
frame_color = "#ff0000"
timeout = 0
# Icon for notifications with critical urgency, uncomment to enable
#icon = /path/to/icon
# Every section that isn't one of the above is interpreted as a rules to
# override settings for certain messages.
#
# Messages can be matched by
# appname (discouraged, see desktop_entry)
# body
# category
# desktop_entry
# icon
# match_transient
# msg_urgency
# stack_tag
# summary
#
# and you can override the
# background
# foreground
# format
# frame_color
# fullscreen
# new_icon
# set_stack_tag
# set_transient
# timeout
# urgency
#
# Shell-like globbing will get expanded.
#
# Instead of the appname filter, it's recommended to use the desktop_entry filter.
# GLib based applications export their desktop-entry name. In comparison to the appname,
# the desktop-entry won't get localized.
#
# SCRIPTING
# You can specify a script that gets run when the rule matches by
# setting the "script" option.
# The script will be called as follows:
# script appname summary body icon urgency
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
#
# NOTE: if you don't want a notification to be displayed, set the format
# to "".
# NOTE: It might be helpful to run dunst -print in a terminal in order
# to find fitting options for rules.
# Disable the transient hint so that idle_threshold cannot be bypassed from the
# client
#[transient_disable]
# match_transient = yes
# set_transient = no
#
# Make the handling of transient notifications more strict by making them not
# be placed in history.
#[transient_history_ignore]
# match_transient = yes
# history_ignore = yes
# fullscreen values
# show: show the notifications, regardless if there is a fullscreen window opened
# delay: displays the new notification, if there is no fullscreen window active
# If the notification is already drawn, it won't get undrawn.
# pushback: same as delay, but when switching into fullscreen, the notification will get
# withdrawn from screen again and will get delayed like a new notification
#[fullscreen_delay_everything]
# fullscreen = delay
#[fullscreen_show_critical]
# msg_urgency = critical
# fullscreen = show
[notification-sound]
appname = *
script = ~/.config/dunst/play-notification-sound.sh
# vim: ft=cfg

33
.config/eww/eww.scss Normal file
View File

@@ -0,0 +1,33 @@
@import "/home/niklas/.cache/wal/colors.scss";
$bg: $background;
$fg: $foreground;
$border: $color2;
$text: $color6;
$focus: $color3;
$hight: 1.5rem;
* {
all: unset;
}
@mixin pill{
border: 1px solid $border;
border-radius: 24;;
padding: 0.1rem 0.5rem;
margin: 0 0.5rem;
background-color: $focus;
min-height: $hight;
}
.pill{
@include pill;
}
@import "modules/bar/bar.scss";
@import "modules/clock/clock.scss";
@import "modules/playerctl/playerctl.scss";
@import "modules/volume/volume.scss";
@import "modules/workspace/workspace.scss";
@import "modules/notifications/notifications.scss"

20
.config/eww/eww.yuck Normal file
View File

@@ -0,0 +1,20 @@
(defwindow bar
:monitor 0
:geometry (geometry :x "0%"
:y "0%"
:width "100%"
:height "10px"
:anchor "top center")
:stacking "fg"
:exclusive true
:namepspace "eww"
(bar)
)
(include "modules/bar/bar.yuck")
(include "modules/clock/clock.yuck")
(include "modules/playerctl/playerctl.yuck")
(include "modules/volume/volume.yuck")
(include "modules/workspace/workspace.yuck")
(include "modules/notifications/notifications.yuck")

View File

@@ -0,0 +1,6 @@
.bar-widget {
background-color: $bg;
font-size: 16px;
color: $text;
padding: 0.2rem 0;
}

View File

@@ -0,0 +1,33 @@
(defwidget bar []
(box
:class "bar-widget"
:orientation "h"
:space-evenly true
(box
:orientation "h"
:space-evenly false
:halign "start"
(workspaces)
)
(box
:orientation "h"
:space-evenly false
:halign "center"
(playerctl)
)
(box
:orientation "h"
:space-evenly false
:halign "end"
(volume_slider)
(clock)
(notifications)
)
)
)

View File

@@ -0,0 +1,3 @@
.clock {
@include pill;
}

View File

@@ -0,0 +1,14 @@
(defpoll time
:interval "1s"
:initial "0"
"date +%H:%M"
)
(defwidget clock []
(label
:class "clock"
:text {time}
)
)

View File

@@ -0,0 +1,3 @@
.notifications {
@include pill;
}

View File

@@ -0,0 +1,18 @@
(deflisten swaync
:initial "{}"
"swaync-client -swb"
)
(defwidget notifications []
(button
:class "notifications"
:onclick "swaync-client -t -sw"
:onrightclick "swaync-client -d -sw"
(label
:text "${swaync.text}"
)
)
)

View File

@@ -0,0 +1,7 @@
#!/bin/bash
if [[ $1 == "down" ]]; then
playerctl --player=spotify,%any volume 0.05-
elif [[ $1 == "up" ]]; then
playerctl --player=spotify,%any volume 0.05+
fi

View File

@@ -0,0 +1,3 @@
.playerctl {
@include pill;
}

View File

@@ -0,0 +1,20 @@
(deflisten playerctl
:initial ""
"playerctl --player=spotify,%any -f '{{title}} - {{artist}}' metadata -F"
)
(defwidget playerctl []
(eventbox
:onscroll "modules/playerctl/playerctl-volume.sh {}"
:onmiddleclick "hyprctl dispatch togglespecialworkspace spotify"
:onclick "playerctl --player=spotify,%any play-pause"
:onrightclick "playerctl --player=spotify,%any next"
(label
:class "playerctl"
:text {playerctl}
)
)
)

View File

@@ -0,0 +1,8 @@
#!/bin/bash
if [[ $1 == "up" ]]; then
wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+
elif [[ $1 == "down" ]]; then
wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
fi

View File

@@ -0,0 +1,3 @@
#!/bin/bash
wpctl set-volume @DEFAULT_AUDIO_SINK@ $1%

View File

@@ -0,0 +1,23 @@
.volume {
@include pill;
}
.volume_slider {
min-width: 6rem;
trough,
highlight {
min-height: 0.5rem;
border-radius: 25px;
border: 1px solid $border;
}
trough {
background-color: $bg;
}
highlight {
background-color: $focus;
}
}

View File

@@ -0,0 +1,8 @@
#!/bin/bash
wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{print int($2 * 100)}'
pactl subscribe | rg --line-buffered "on sink" | while read -r _; do
wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{print int($2 * 100)}'
done

View File

@@ -0,0 +1,57 @@
(deflisten volume
:initial 100
"modules/volume/volume.sh"
)
(defwidget volume []
(eventbox
:onscroll "modules/volume/scroll-volume.sh {}"
(label
:class "volume"
:text "${volume}%"
)
)
)
(defvar vol_reveal false)
(defwidget volume_slider []
(eventbox
:onhover "eww update vol_reveal=true"
:onhoverlost "eww update vol_reveal=false"
:onscroll "modules/volume/scroll-volume.sh {}"
(box
:space-evenly false
:orientation "h"
:spacing "3"
(button
:class "pill"
(label
:text "${volume}%"
)
)
(revealer
:transition "slideleft"
:reveal vol_reveal
(scale
:class "volume_slider"
:value volume
:orientation "h"
:min 0
:max 101
:onchange "modules/volume/set-volume.sh {}"
)
)
)
)
)

View File

@@ -0,0 +1,10 @@
#!/bin/bash
hyprctl monitors -j | jq '.[] | select(.focused) | .activeWorkspace.id'
socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - | sed -u -n -e '/^workspace>>/ s/^workspace>>//p' -e '/^focusedmon>>/ s/^focusedmon>>//p'
#socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - |
# stdbuf -o0 awk -F '>>|,' -e '/^workspace>>/ {print $2}' -e '/^focusedmon>>/ {print $3}'

View File

@@ -0,0 +1,17 @@
#!/bin/bash
direction=$1
current=$2
exit 0 # For the time being this script only exist to keep current_workspace from being lazy
if [[ $direction == "down" ]]; then
target=$(($current+1))
if [[ $target == 11 ]]; then
exit 0
fi
hyprctl dispatch workspace $target
elif [[ $direction == "up" ]]; then
target=$(($current-1))
hyprctl dispatch workspace $target
fi

View File

@@ -0,0 +1,17 @@
.workspaces {
margin-left: 0.2rem;
min-height: $hight;
border: 1px solid $border;
border-radius: 24px;
.workspace {
padding: 0 0.5rem;
border-radius: 24px;
}
.active {
background-color: $focus;
}
}

View File

@@ -0,0 +1,33 @@
(deflisten workspaces
:initial "[]"
"modules/workspace/workspaces.sh"
)
(deflisten current_workspace
:initial "1"
"modules/workspace/get-active-workspace.sh"
)
(defwidget workspaces []
(eventbox
:onscroll "modules/workspace/scroll-current-workspace.sh {} ${current_workspace}"
(box
:orientation "h"
:space-evenly false
:class "workspaces"
:hexpand true
(for workspace in workspaces
(button
:class "workspace ${current_workspace == workspace.id ? "active" : ""}"
:onclick "hyprctl dispatch workspace ${workspace.id}"
"${workspace.id}"
)
)
)
)
)

View File

@@ -0,0 +1,9 @@
#!/bin/bash
CMD="sort_by(.id) | [ .[] | select(.id > 0)]"
hyprctl workspaces -j | jq -c "$CMD"
socat -u UNIX-CONNECT:/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock - | while read -r line; do
hyprctl workspaces -j | jq -c "$CMD"
done

31
.config/git/config Normal file
View File

@@ -0,0 +1,31 @@
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true
[init]
defaultBranch = master
[core]
excludesFile = ~/.config/git/gitignore
[pager]
diff = delta
log = delta
reflog = delta
show = delta
blame = delta
[delta]
side-by-side = true
dark = true
[interactive]
diffFilter = delta --color-only
[user]
useconfigonly = true
[includeIf "hasconfig:remote.*.url:**/*git.kapelle.org*/**"]
path = ~/.config/git/private.inc

2
.config/git/gitignore Normal file
View File

@@ -0,0 +1,2 @@
/ignore
/.vscode

6
.config/git/private.inc Normal file
View File

@@ -0,0 +1,6 @@
[user]
name = Niklas Kapelle
email = niklas@kapelle.org
signingkey = 4EB651B36D841D16
[commit]
gpgsign = true

3
.config/git/public.inc Normal file
View File

@@ -0,0 +1,3 @@
[user]
name = Djeeberjr
email = djeeberjr@gmail.com

3
.config/gtk-2.0/gtkrc Normal file
View File

@@ -0,0 +1,3 @@
gtk-application-prefer-dark-theme = true
gtk-icon-theme-name = "Adwaita"
gtk-theme-name = "Orchis"

View File

@@ -1,2 +1,4 @@
[Settings] [Settings]
gtk-theme-name = Adapta-Nokto gtk-application-prefer-dark-theme=true
gtk-icon-theme-name=Adwaita
gtk-theme-name=Orchis

7
.config/hypr/colors.conf Normal file
View File

@@ -0,0 +1,7 @@
# https://www.nordtheme.com/docs/colors-and-palettes
$color0 = rgb(2e3440)
$color1 = rgb(3b4252)
$color2 = rgb(434c5e)
$color3 = rgb(4c566a)

193
.config/hypr/hyprland.conf Normal file
View File

@@ -0,0 +1,193 @@
monitor=,preferred,auto,auto
# Load colors
source = ~/.config/hypr/colors.conf
input {
kb_layout = us
kb_variant =
kb_model =
kb_options = compose:ralt,caps:escape
kb_rules =
numlock_by_default = true
follow_mouse = 1
touchpad {
natural_scroll = no
}
}
general {
gaps_in = 5
gaps_out = 3
border_size = 2
col.active_border = $color3
col.inactive_border = $color0
layout = dwindle
}
decoration {
rounding = 5
blur {
enabled = true
special = false
size = 2
}
drop_shadow = yes
shadow_range = 4
shadow_render_power = 3
col.shadow = rgba(1a1a1aee)
dim_special = 0.6
}
misc {
force_default_wallpaper = 0
animate_manual_resizes = true
animate_mouse_windowdragging = true
mouse_move_enables_dpms = true
key_press_enables_dpms = true
enable_swallow = true
# swallow_regex = class regex
}
animations {
enabled = yes
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
animation = windows, 1, 7, myBezier
animation = windowsOut, 1, 7, default, popin 80%
animation = border, 1, 10, default
animation = borderangle, 1, 8, default
animation = fade, 1, 7, default
animation = workspaces, 1, 6, default
}
dwindle {
pseudotile = yes
preserve_split = yes
}
master {
new_status=master
}
gestures {
workspace_swipe = off
}
binds {
workspace_back_and_forth = true
allow_workspace_cycles = true
}
device {
name = moji-1k-nrf-receiver
sensitivity = -1
}
# Window and layer rules
layerrule = noanim,rofi
windowrulev2 = workspace special:spotify silent, class:^(Spotify)$
windowrulev2 = workspace special:term silent, class:^(scratchpad)$
windowrulev2 = workspace 7 silent, class:^(TeamSpeak 3)$
windowrulev2 = workspace 7 silent, class:^(discord)$
windowrulev2 = workspace 1 silent, class:^(firefox)$
# Env
env = MOZ_ENABLE_WAYLAND,1
env = SDL_VIDEODRIVER,wayland
env = GDK_BACKEND=wayland,x11
env = QT_QPA_PLATFORM=wayland;xcb
env = XCURSOR_SIZE=24
# Autostart
exec-once = waybar
exec-once = swaync
exec-once = swww init
exec-once = swayidle -w
exec-once = alacritty --class scratchpad
# Keybinds
$mainMod = SUPER
$mainModShift = SUPER_SHIFT
bind = $mainMod, Return, exec, alacritty
#bind = $mainModShift, Q, exec, $XDG_CONFIG_HOME/hypr/killscript.sh
bind = $mainMod, Tab, focuscurrentorlast
bind = $mainModShift, Q, killactive
bind = $mainModShift, E, exec, $XDG_CONFIG_HOME/rofi/powermenu.sh
bind = $mainModShift, Space, togglefloating
bind = $mainMod, D, exec, rofi -show drun -theme $XDG_CONFIG_HOME/rofi/launcher.rasi
bind = $mainMod, M, exec, $XDG_CONFIG_HOME/waybar/mute-toggle.sh
#bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, F, fullscreen
bind =, Print, exec, $XDG_DATA_HOME/scripts/save-screenshot.sh
# Audio buttons
binde =, XF86AudioRaiseVolume, exec, playerctl --player=spotify,%any volume 0.05+
binde =, XF86AudioLowerVolume, exec, playerctl --player=spotify,%any volume 0.05-
bind =, XF86AudioNext, exec, playerctl --player=spotify,%any next
bind =, XF86AudioPrev, exec, playerctl --player=spotify,%any previous
bind =, XF86AudioPlay, exec, playerctl --player=spotify,%any play-pause
# 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
# Move focus with mainMod + hjkl
bind = $mainMod, h, movefocus, l
bind = $mainMod, l, movefocus, r
bind = $mainMod, k, movefocus, u
bind = $mainMod, j, movefocus, d
# Move windows with mainMod + Shift + arrow
bind = $mainModShift, left, movewindow, l
bind = $mainModShift, right, movewindow,r
bind = $mainModShift, up, movewindow, u
bind = $mainModShift, down, movewindow, d
# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10
# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspacesilent, 1
bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2
bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3
bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4
bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5
bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6
bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7
bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8
bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9
bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10
# 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
# Scratchpad
bind = $mainMod, F1, togglespecialworkspace, term
bind = $mainMod, F2, togglespecialworkspace, spotify

View File

@@ -0,0 +1,4 @@
preload = ~/pictures/wallpapers/nok4cs22es851.png
wallpaper = HDMI-A-1, ~/pictures/wallpapers/nok4cs22es851.png

8
.config/hypr/killscript.sh Executable file
View File

@@ -0,0 +1,8 @@
#!/bin/sh
if [ "$(hyprctl activewindow -j | jq -r ".class")" = "Steam" ]; then
xdotool getactivewindow windowunmap
else
hyprctl dispatch killactive ""
fi

View File

@@ -1,193 +0,0 @@
###############
# #
# ██╗██████╗ #
# ██║╚════██╗ #
# ██║ █████╔╝ #
# ██║ ╚═══██╗ #
# ██║██████╔╝ #
# ╚═╝╚═════╝ #
# #
###############
# Required packages:
# - i3-gaps
# - alacritty
# - rofi
# - rofi-calc
# - polybar (AUR)
# - dunst
# - picom
# - playerctl - for media keys
### Basic stuff ###
for_window [class="^.*"] border pixel 2
for_window [instance="floatme"] floating enable
for_window [instance="scratchpad.*"] move scratchpad
for_window [class="Spotify"] move scratchpad
gaps inner 4
smart_gaps on
smart_borders on
font pango:monospace 8
workspace_auto_back_and_forth yes
### Definitions ###
# Define workspace
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# Set mod key
set $mod Mod4
set $altMod Control
### Colors ###
#class border backgr. text indicator child_border
client.focused #ff9900 #ff9900 #ff9900 $indicator $border
#client.focused_inactive #333333 #5f676a #ffffff #484e50 #5f676a
#client.unfocused #333333 #222222 #888888 #292d2e #222222
#client.urgent #2f343a #900000 #ffffff #900000 #900000
#client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c
#client.background #ffffff
### i3 keybindings ###
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# change focus
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
bindsym $mod+b split h
bindsym $mod+v split v
bindsym $mod+f fullscreen toggle
# toggle tiling / floating
bindsym $mod+Shift+space floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# toggle scratchpad
bindsym $mod+F1 [instance="scratchpad_f1"] scratchpad show
bindsym $mod+F2 [class="Spotify"] scratchpad show
bindsym $mod+F3 [instance="scratchpad_f3"] scratchpad show
bindsym $mod+F4 [instance="scratchpad_f4"] scratchpad show
# switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
bindsym $mod+Tab workspace next
bindsym $mod+Shift+Tab workspace prev
# move focused container to workspace
bindsym $altMod+Shift+1 move container to workspace $ws1
bindsym $altMod+Shift+2 move container to workspace $ws2
bindsym $altMod+Shift+3 move container to workspace $ws3
bindsym $altMod+Shift+4 move container to workspace $ws4
bindsym $altMod+Shift+5 move container to workspace $ws5
bindsym $altMod+Shift+6 move container to workspace $ws6
bindsym $altMod+Shift+7 move container to workspace $ws7
bindsym $altMod+Shift+8 move container to workspace $ws8
bindsym $altMod+Shift+9 move container to workspace $ws9
bindsym $altMod+Shift+0 move container to workspace $ws10
bindsym $mod+Shift+r restart
# resize window
mode "resize" {
bindsym h resize shrink width 5 px or 5 ppt
bindsym j resize grow height 5 px or 5 ppt
bindsym k resize shrink height 5 px or 5 ppt
bindsym l resize grow width 5 px or 5 ppt
bindsym Left resize shrink width 5 px or 5 ppt
bindsym Down resize grow height 5 px or 5 ppt
bindsym Up resize shrink height 5 px or 5 ppt
bindsym Right resize grow width 5 px or 5 ppt
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
#bindsym $mod+p gaps inner current plus 5
#bindsym $mod+Shift+p gaps inner current minus 5
bindsym $mod+Shift+q exec --no-startup-id ~/.config/i3/killScript.sh
### misc keybindings ###
# bindsym $mod+l exec i3lock -i /usr/share/backgrounds/gnome/RainDrops.jpg
bindsym $mod+Return exec --no-startup-id alacritty
bindsym $mod+d exec rofi -show drun -show-icons
bindsym $mod+Shift+e exec rofi -show script -modi script:$HOME/.config/i3/pm.sh
bindsym $mod+s exec $HOME/.config/rofi/rofi-quick-action.sh
bindsym $mod+Shift+s exec rofi -modi blocks -show blocks -blocks-wrap /usr/share/rofi-blocks-search/ddg
bindsym $mod+a exec --no-startup-id rofi -show calc -modi calc -no-show-match -no-sort
bindsym XF86MonBrightnessUp exec --no-startup-id light -A 5
bindsym XF86MonBrightnessDown exec --no-startup-id light -U 5
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +10%
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -10%
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle
bindsym XF86TouchpadToggle exec --no-startup-id $HOME/.config/i3/touchpadToggle.sh
bindsym XF86AudioNext exec --no-startup-id "playerctl --player=spotify,%any next"
bindsym XF86AudioPrev exec --no-startup-id "playerctl --player=spotify,%any previous"
bindsym XF86AudioPlay exec --no-startup-id "playerctl --player=spotify,%any play-pause"
bindsym $mod+m exec --no-startup-id $XDG_DATA_HOME/scripts/toggle-mute.sh && polybar-msg hook mute-mic 1
bindsym $mod+Shift+w exec --no-startup-id networkmanager_dmenu
### autostart ###
exec --no-startup-id picom -b
exec --no-startup-id feh --bg-scale ~/.cache/last-bg
exec_always --no-startup-id $HOME/.config/polybar/launch.sh
#exec --no-startup-id pactl set-sink-mute 0 1
exec --no-startup-id dunst
exec --no-startup-id alacritty --class=scratchpad_f1
exec --no-startup-id ~/.config/i3/setupScreensaver.sh

View File

@@ -1,21 +0,0 @@
#!/usr/bin/env bash
# based on https://github.com/pastapojken/i3SteamOrKill
# required packages:
# - xdotool
winID=$(xdotool getactivewindow)
winClass=$(xprop -id $winID WM_CLASS)
if [[ $winClass = *"Steam"* ]]; then
xdotool windowunmap $(xdotool getactivewindow)
exit
elif [[ $winClass = *"evolution"* ]]; then
i3-msg kill
systemctl --user stop evolution-source-registry.service
killall -e /usr/lib/evolution-data-server/evolution-alarm-notify
exit
else
i3-msg kill
exit
fi

View File

@@ -1,26 +0,0 @@
#!/usr/bin/env bash
if [ "$@" ]
then
case "$@" in
"Shutdown")
shutdown now
;;
"Reboot")
reboot
;;
"Logout")
i3-msg exit
;;
"Hibernate")
systemctl hibernate
;;
esac
exit 0
else
echo -en "Shutdown\n"
echo -en "Reboot\n"
echo -en "Logout\n"
echo -en "Hibernate\n"
fi

View File

@@ -1,4 +0,0 @@
#!/usr/bin/env sh
xset s 300 180
xss-lock -n /usr/lib/xsecurelock/dimmer -l -- ~/.local/share/scripts/screensaver.sh

View File

@@ -1,8 +0,0 @@
#!/usr/bin/env sh
# Get the id by running xinput and look for your touchpad
ID="15"
if [[ $(xinput list-props "$ID" | grep "Device Enabled" | cut -d ':' -f2 | tr -d '[:space:]') = "1" ]]; then
xinput set-prop "$ID" "Device Enabled" 0
else
xinput set-prop "$ID" "Device Enabled" 1
fi

View File

@@ -0,0 +1,6 @@
gui:
nerdFontsVersion: "3"
git:
paging:
colorArg: always
pager: delta --dark --paging=never --line-numbers --hyperlinks --hyperlinks-file-link-format="lazygit-edit://{path}:{line}"

View File

@@ -1,19 +1,25 @@
[Default Applications] [Default Applications]
application/pdf=firefox.desktop application/pdf=firefox.desktop
x-scheme-handler/https=firefox.desktop x-scheme-handler/https=firefox.desktop
x-scheme-handler/http=firefox.desktop x-scheme-handler/http=firefox.desktop
x-scheme-handler/ftp=firefox.desktop x-scheme-handler/ftp=firefox.desktop
x-scheme-handler/postman=Postman.desktop x-scheme-handler/postman=Postman.desktop
text/html=firefox.desktop text/html=firefox.desktop
application/x-extension-htm=firefox.desktop application/x-extension-htm=firefox.desktop
application/x-extension-html=firefox.desktop application/x-extension-html=firefox.desktop
application/x-extension-shtml=firefox.desktop application/x-extension-shtml=firefox.desktop
application/xhtml+xml=firefox.desktop application/xhtml+xml=firefox.desktop
application/x-extension-xhtml=firefox.desktop application/x-extension-xhtml=firefox.desktop
application/x-extension-xht=firefox.desktop application/x-extension-xht=firefox.desktop
image/png=org.nomacs.ImageLounge.desktop
image/jpeg=org.nomacs.ImageLounge.desktop
application/x-bittorrent=deluge.desktop
text/plain=visual-studio-code.desktop;
application/x-yaml=code-oss.desktop;
inode/directory=thunar.desktop
text/x-log=code-oss.desktop;
text/plain=code-oss.desktop;nvim.desktop;
x-scheme-handler/heroic=heroic.desktop
image/png=sxiv.desktop; [Added Associations]
image/jpeg=sxiv.desktop; video/mp4=vlc.desktop;mpv.desktop;

View File

@@ -1,12 +0,0 @@
[geometry]
posx=8
posy=33
sizex=1896
sizey=1031
[nitrogen]
view=icon
recurse=true
sort=alpha
icon_caps=false
dirs=/home/niklas/pictures/wallpapers;

View File

@@ -1,40 +0,0 @@
" _ _ __ ___
" | \| |___ __\ \ / (_)_ __
" | .` / -_) _ \ V /| | ' \
" |_|\_\___\___/\_/ |_|_|_|_|
"
" Required packages:
" - neovim (duh)
" - neovim-plug-git
" Set course to a line when exiting nvim
:au VimLeave * set guicursor=a:ver1-blinkon0
" Set color for dark backgrounds
:set background=dark
" Line number
:set number
" tabstop
set tabstop=4
set shiftwidth=4
" Start NERDTree when Vim is started without file arguments.
autocmd StdinReadPre * let s:std_in=1
autocmd VimEnter * if argc() == 0 && !exists('s:std_in') | NERDTree | endif
let g:airline#extensions#tabline#enabled = 1
let g:airline_powerline_fonts = 1
call plug#begin('~/.config/nvim/plugged')
Plug 'neoclide/coc.nvim', {'branch': 'release'}
Plug 'preservim/nerdtree'
Plug 'ryanoasis/vim-devicons'
Plug 'vim-airline/vim-airline'
call plug#end()
nnoremap <C-b> :NERDTreeToggle<CR>

View File

@@ -0,0 +1,146 @@
#:schema https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/schema.json
version = 2
final_space = true
disable_notice = true
[palette]
status_success = "#43f716"
status_failure = "#f72916"
white = "#FFFFFF"
path = "green"
git_tooltip = "red"
go_tooltip = "green"
node_tooltip = "green"
docker = "blue"
kube = "yellow"
[[blocks]]
alignment = "left"
type = "prompt"
# SSH
[[blocks.segments]]
type = "session"
template = "{{ if .SSHSession}}󰢹 {{ end }}"
# Path
[[blocks.segments]]
type = "path"
background = "p:path"
foreground = "p:white"
style = "diamond"
leading_diamond = ""
trailing_diamond = ""
template = " {{ .Path }} "
[blocks.segments.properties]
style = "full"
home_icon = "~"
[[blocks]]
alignment = "right"
type = "prompt"
# Docker context
[[blocks.segments]]
type = "docker"
style = "diamond"
foreground = "p:white"
background = "p:docker"
leading_diamond = ""
trailing_diamond = ""
template = " {{ .Context }}"
# kubectl context
[[blocks.segments]]
type = "kubectl"
style = "diamond"
foreground = "p:white"
background = "p:kube"
leading_diamond = ""
trailing_diamond = ""
template = "󱃾 {{.Context}}{{if .Namespace}} :: {{.Namespace}}{{end}} "
[[blocks]]
alignment = "left"
type = "prompt"
newline = true
# Newline prompt
[[blocks.segments]]
type = "status"
style = "plain"
foreground = "p:status_success"
foreground_templates = [
"{{ if .Error }}p:status_failure{{ end }}",
"{{ if not .Error}}p:status_success{{ end }}"
]
template = ""
[blocks.segments.properties]
always_enabled = true
[transient_prompt]
foreground = "p:status_success"
template = " "
# Git
[[tooltips]]
type = "git"
tips = [ "git", "g" ]
style = "diamond"
foreground = "p:white"
background = "p:git_tooltip"
leading_diamond = ""
trailing_diamond = ""
template = "{{ url .HEAD .UpstreamURL }}{{ if .UpstreamIcon }} {{.UpstreamIcon}} {{ end }}{{ if .BranchStatus }} {{ .BranchStatus }}{{ end }}{{ if .Staging.Changed }}  {{ .Staging.String }}{{ end }}{{ if and (.Working.Changed) (.Staging.Changed) }} |{{ end }}{{ if .Working.Changed }}  {{ .Working.String }}{{ end }}"
[tooltips.properties]
fetch_status = true
fetch_upstream_icon = true
branch_icon = " "
branch_identical_icon = " "
branch_ahead_icon = "󰳡 "
branch_behind_icon = "󰳛 "
branch_gone_icon = " "
[tooltips.properties.upstream_icons]
"git.kapelle.org" = " "
# Go
[[tooltips]]
type = "go"
tips = [ "go" ]
style = "diamond"
foreground = "p:white"
background = "p:go_tooltip"
leading_diamond = ""
trailing_diamond = ""
template = " {{ .Major }}.{{ .Minor }}"
[tooltips.properties]
cache_version = true
# Rust
[[tooltips]]
type = "rust"
tips = [ "rustc", "cargo", "rustup" ]
style = "diamond"
foreground = "p:white"
background = "p:go_tooltip"
leading_diamond = ""
trailing_diamond = ""
template = " {{ .Full }}"
[tooltips.properties]
cache_version = true
# Node
[[tooltips]]
type = "node"
tips = [ "node", "npm" ]
style = "diamond"
foreground = "p:white"
background = "p:node_tooltip"
leading_diamond = ""
trailing_diamond = ""
template = "󰎙 {{ .Full }}"
[tooltips.properties]
cache_version = true

View File

@@ -1,237 +0,0 @@
# Thank you code_nomad: http://9m.no/ꪯ鵞
# and Arch Wiki contributors: https://wiki.archlinux.org/index.php/Compton
#################################
#
# Backend
#
#################################
# Backend to use: "xrender" or "glx".
# GLX backend is typically much faster but depends on a sane driver.
backend = "glx";
#################################
#
# GLX backend
#
#################################
glx-no-stencil = true;
# GLX backend: Copy unmodified regions from front buffer instead of redrawing them all.
# My tests with nvidia-drivers show a 10% decrease in performance when the whole screen is modified,
# but a 20% increase when only 1/4 is.
# My tests on nouveau show terrible slowdown.
glx-copy-from-front = false;
# GLX backend: Use MESA_copy_sub_buffer to do partial screen update.
# My tests on nouveau shows a 200% performance boost when only 1/4 of the screen is updated.
# May break VSync and is not available on some drivers.
# Overrides --glx-copy-from-front.
# glx-use-copysubbuffermesa = true;
# GLX backend: Avoid rebinding pixmap on window damage.
# Probably could improve performance on rapid window content changes, but is known to break things on some drivers (LLVMpipe).
# Recommended if it works.
# glx-no-rebind-pixmap = true;
# GLX backend: GLX buffer swap method we assume.
# Could be undefined (0), copy (1), exchange (2), 3-6, or buffer-age (-1).
# undefined is the slowest and the safest, and the default value.
# copy is fastest, but may fail on some drivers,
# 2-6 are gradually slower but safer (6 is still faster than 0).
# Usually, double buffer means 2, triple buffer means 3.
# buffer-age means auto-detect using GLX_EXT_buffer_age, supported by some drivers.
# Useless with --glx-use-copysubbuffermesa.
# Partially breaks --resize-damage.
# Defaults to undefined.
#glx-swap-method = "undefined";
#################################
#
# Shadows
#
#################################
# Enabled client-side shadows on windows.
shadow = true;
# The blur radius for shadows. (default 12)
shadow-radius = 5;
# The left offset for shadows. (default -15)
shadow-offset-x = 15;
# The top offset for shadows. (default -15)
shadow-offset-y = 15;
# The translucency for shadows. (default .75)
shadow-opacity = 0.3;
# Set if you want different colour shadows
# shadow-red = 0.0;
# shadow-green = 0.0;
# shadow-blue = 0.0;
# The shadow exclude options are helpful if you have shadows enabled. Due to the way picom draws its shadows, certain applications will have visual glitches
# (most applications are fine, only apps that do weird things with xshapes or argb are affected).
# This list includes all the affected apps I found in my testing. The "! name~=''" part excludes shadows on any "Unknown" windows, this prevents a visual glitch with the XFWM alt tab switcher.
shadow-exclude = [
"! name~=''",
"name = 'Notification'",
"name = 'Plank'",
"name = 'Docky'",
"name = 'Kupfer'",
"name = 'xfce4-notifyd'",
"name = 'cpt_frame_window'",
"name *= 'VLC'",
"name *= 'compton'",
"name *= 'picom'",
"name *= 'Chromium'",
"name *= 'Chrome'",
"class_g = 'Firefox' && argb",
"class_g = 'Conky'",
"class_g = 'Kupfer'",
"class_g = 'Synapse'",
"class_g ?= 'Notify-osd'",
"class_g ?= 'Cairo-dock'",
"class_g ?= 'Xfce4-notifyd'",
"class_g ?= 'Xfce4-power-manager'",
"_GTK_FRAME_EXTENTS@:c",
"_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",
"!I3_FLOATING_WINDOW@:c && !class_g ?= 'rofi'",
"name = 'Dunst'"
];
# Avoid drawing shadow on all shaped windows (see also: --detect-rounded-corners)
shadow-ignore-shaped = false;
#################################
#
# Opacity
#
#################################
inactive-opacity = 1;
active-opacity = 1;
frame-opacity = 1;
inactive-opacity-override = false;
# Dim inactive windows. (0.0 - 1.0)
# inactive-dim = 0.2;
# Do not let dimness adjust based on window opacity.
# inactive-dim-fixed = true;
# Blur background of transparent windows. Bad performance with X Render backend. GLX backend is preferred.
# blur-background = true;
# Blur background of opaque windows with transparent frames as well.
# blur-background-frame = true;
# Do not let blur radius adjust based on window opacity.
blur-background-fixed = false;
blur-background-exclude = [
"window_type = 'dock'",
# "window_type = 'desktop'"
"name = 'Dunst'"
];
blur:
{
method = "kernel";
kernel = "7x7box"
};
#################################
#
# Fading
#
#################################
# Fade windows during opacity changes.
fading = true;
# The time between steps in a fade in milliseconds. (default 10).
fade-delta = 3;
# Opacity change between steps while fading in. (default 0.028).
fade-in-step = 0.03;
# Opacity change between steps while fading out. (default 0.03).
fade-out-step = 0.03;
# Fade windows in/out when opening/closing
# no-fading-openclose = true;
# Specify a list of conditions of windows that should not be faded.
fade-exclude = [ ];
#################################
#
# Other
#
#################################
# Try to detect WM windows and mark them as active.
mark-wmwin-focused = true;
# Mark all non-WM but override-redirect windows active (e.g. menus).
mark-ovredir-focused = true;
# Use EWMH _NET_WM_ACTIVE_WINDOW to determine which window is focused instead of using FocusIn/Out events.
# Usually more reliable but depends on a EWMH-compliant WM.
use-ewmh-active-win = true;
# Detect rounded corners and treat them as rectangular when --shadow-ignore-shaped is on.
detect-rounded-corners = true;
# Detect _NET_WM_OPACITY on client windows, useful for window managers not passing _NET_WM_OPACITY of client windows to frame windows.
# This prevents opacity being ignored for some apps.
# For example without this enabled my xfce4-notifyd is 100% opacity no matter what.
detect-client-opacity = true;
# Specify refresh rate of the screen.
# If not specified or 0, picom will try detecting this with X RandR extension.
refresh-rate = 0;
# Vertical synchronization: match the refresh rate of the monitor
vsync = true;
# Enable DBE painting mode, intended to use with VSync to (hopefully) eliminate tearing.
# Reported to have no effect, though.
dbe = false;
# Limit picom to repaint at most once every 1 / refresh_rate second to boost performance.
# This should not be used with --vsync drm/opengl/opengl-oml as they essentially does --sw-opti's job already,
# unless you wish to specify a lower refresh rate than the actual value.
#sw-opti = true;
# Unredirect all windows if a full-screen opaque window is detected, to maximize performance for full-screen windows, like games.
# Known to cause flickering when redirecting/unredirecting windows.
unredir-if-possible = false;
# Specify a list of conditions of windows that should always be considered focused.
focus-exclude = [ ];
# Use WM_TRANSIENT_FOR to group windows, and consider windows in the same group focused at the same time.
detect-transient = true;
# Use WM_CLIENT_LEADER to group windows, and consider windows in the same group focused at the same time.
# WM_TRANSIENT_FOR has higher priority if --detect-transient is enabled, too.
detect-client-leader = true;
#################################
#
# Window type settings
#
#################################
wintypes:
{
tooltip =
{
# fade: Fade the particular type of windows.
fade = true;
# shadow: Give those windows shadow
shadow = false;
# opacity: Default opacity for the type of windows.
opacity = 0.85;
# focus: Whether to always consider windows of this type focused.
focus = true;
};
};
######################
#
# XSync
# See: https://github.com/yshui/picom/commit/b18d46bcbdc35a3b5620d817dd46fbc76485c20d
#
######################
# Use X Sync fence to sync clients' draw calls. Needed on nvidia-drivers with GLX backend for some users.
xrender-sync-fence = true;

View File

@@ -1,4 +0,0 @@
#!/bin/sh
# copy to /etc/NetworkManager/dispatcher.d/90-polybar
polybar-msg hook wireguard-status 1

View File

@@ -1,23 +0,0 @@
[colors]
background = #00000000
foreground = #dfdfdf
text = ${xrdb:color15:#ffffff}
i3-mode-fg = #000
i3-mode-bg = #e6e600
i3-focus-ul = #f90000
i3-focus-bg = #00000000
i3-visable-ul = #ffff00
i3-visable-bg = c#00000000
i3-urgent-bg = #3399ff
cpu-ul = #4bffdc
date-ul = #0a6cf5
vol-ul = #ff6600
bat-ul = #ffb52a
spotify-ul = #00b300
wg-ul = #00b300

View File

@@ -1,239 +0,0 @@
;===========================================================;
; ;
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗ ;
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗ ;
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝ ;
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗ ;
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║ ;
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ;
; ;
;===========================================================;
; Required packages:
; - xorg-xrandr (for launch script)
; - xrdb (for wal colors)
include-file = $HOME/.config/polybar/colors
[bar/main]
enable-ipc = true
monitor = ${env:MONITOR}
width = 100%
height = 3%
radius = 0
fixed-center = false
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3
line-color = #f00
border-size = 0
border-color = #00000000
padding-left = 0
padding-right = 2
module-margin-left = 1
module-margin-right = 2
font-0 = fixed:pixelsize=10;1
font-1 = "Hack Nerd Font:style=Regular:pixelsize=10;2"
modules-left = i3
modules-center =
modules-right = playerctl pulseaudio wlan mute-mic wireguard-status battery date
tray-position = right
tray-padding = 2
;tray-background = #0063ff
cursor-click = pointer
cursor-scroll = ns-resize
[module/i3]
type = internal/i3
format = <label-state> <label-mode>
index-sort = true
wrapping-scroll = false
format-foreground = ${colors.text}
label-mode-padding = 2
label-mode-foreground = ${colors.i3-mode-fg}
label-mode-background = ${colors.i3-mode-bg}
; focused = Active workspace on focused monitor
label-focused = %index%
label-focused-background = ${colors.i3-focus-bg}
label-focused-underline = ${colors.i3-focus-ul}
label-focused-padding = 2
; unfocused = Inactive workspace on any monitor
label-unfocused = %index%
label-unfocused-padding = 2
; visible = Active workspace on unfocused monitor
label-visible = %index%
label-visible-background = ${colors.i3-visable-bg}
label-visible-underline = ${colors.i3-visable-ul}
label-visible-padding = ${self.label-focused-padding}
; urgent = Workspace with urgency hint set
label-urgent = %index%
label-urgent-background = ${colors.i3-urgent-bg}
label-urgent-padding = 2
[module/xbacklight]
type = internal/xbacklight
format = <label> <bar>
label = BL
bar-width = 10
bar-indicator = |
bar-indicator-foreground = #fff
bar-indicator-font = 2
bar-fill = ─
bar-fill-font = 2
bar-fill-foreground = #9f78e1
bar-empty = ─
bar-empty-font = 2
bar-empty-foreground = ${colors.foreground}
[module/backlight-acpi]
inherit = module/xbacklight
type = internal/backlight
card = intel_backlight
[module/cpu]
type = internal/cpu
interval = 2
format-underline = #f90000
format-foreground = ${colors.text}
label = %percentage:2%%
[module/memory]
type = internal/memory
interval = 2
format-underline = ${colors.cpu-ul}
format-foreground = ${colors.text}
label = %percentage_used%%
[module/wlan]
type = internal/network
interface = wlp3s0
interval = 3.0
format-connected-foreground = ${colors.text}
format-connected = <label-connected>
format-connected-underline = #9f78e1
label-connected = %essid%
[module/date]
type = internal/date
interval = 5
date =
date-alt = " %Y-%m-%d"
time = %H:%M
time-alt = %H:%M:%S
format-foreground = ${colors.text}
format-underline = ${colors.date-ul}
label = %date% %time%
[module/pulseaudio]
type = internal/pulseaudio
format-volume-underline = ${colors.vol-ul}
format-volume = <label-volume> <bar-volume>
label-volume = %percentage%%
label-volume-foreground = ${colors.text}
label-muted = muted
label-muted-foreground = ${colors.text}
format-muted-underline = ${colors.vol-ul}
bar-volume-width = 10
bar-volume-foreground-0 = #55aa55
bar-volume-foreground-1 = #55aa55
bar-volume-foreground-2 = #55aa55
bar-volume-foreground-3 = #55aa55
bar-volume-foreground-4 = #55aa55
bar-volume-foreground-5 = #f5a70a
bar-volume-foreground-6 = #ff5555
bar-volume-gradient = false
bar-volume-indicator = |
bar-volume-indicator-font = 2
bar-volume-fill = ─
bar-volume-fill-font = 2
bar-volume-empty = ─
bar-volume-empty-font = 2
bar-volume-empty-foreground = ${colors.foreground}
[module/battery]
type = internal/battery
battery = BAT1
adapter = ADP1
full-at = 98
format-charging-foreground = ${colors.text}
format-charging = <label-charging>
format-charging-underline = ${colors.bat-ul}
format-discharging-foreground = ${colors.text}
format-discharging = <label-discharging>
format-discharging-underline = ${self.format-charging-underline}
format-full-foreground = ${colors.text}
format-full-prefix-foreground = ${colors.foreground}
format-full-underline = ${self.format-charging-underline}
[module/playerctl]
type = custom/script
exec = $XDG_CONFIG_HOME/polybar/playerctl-meta.sh
tail = true
format-foreground = ${colors.text}
format-underline = ${colors.spotify-ul}
[module/wireguard-status]
type = custom/ipc
format-foreground = ${colors.text}
format-underline = ${colors.wg-ul}
click-left = $HOME/.config/polybar/wireguard-switch.sh
hook-0 = $HOME/.config/polybar/wireguard-info.sh
initial = 1
[module/mute-mic]
type = custom/ipc
hook-0 = $XDG_CONFIG_HOME/polybar/is-muted.sh
inital = 1
[settings]
screenchange-reload = true
;compositing-background = xor
;compositing-background = screen
;compositing-foreground = source
;compositing-border = over
pseudo-transparency = false
[global/wm]
margin-top = 5
margin-bottom = 5
; vim:ft=dosini

View File

@@ -1,8 +0,0 @@
#!/usr/bin/env sh
if amixer get Capture | grep '\[off\]' > /dev/null
then
echo ""
else
echo ""
fi

View File

@@ -1,18 +0,0 @@
#!/usr/bin/env bash
# Terminate already running bar instances
killall -q polybar
# Wait until the processes have been shut down
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
# Launch bar1 and bar2
if type "xrandr"; then
for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
MONITOR=$m polybar --reload main &
done
else
polybar --reload main &
fi
echo "Bars launched..."

View File

@@ -1,3 +0,0 @@
#!/usr/bin/env sh
playerctl --player=spotify,%any -f "{{title}} - {{artist}}" metadata -F 2>/dev/null

View File

@@ -1,24 +0,0 @@
#!/usr/bin/env sh
set -e
SCRIPT=$(readlink -f "$0")
SCRIPTPATH=$(dirname "$SCRIPT")
source "$SCRIPTPATH/wireguard-config.sh"
if nmcli connection show --active | grep "$ID_LIGHT" > /dev/null
then
echo -n 
exit 0
fi
if nmcli connection show --active | grep "$ID_FULL" > /dev/null
then
echo -n 聯
exit 0
fi
echo -n 輦

View File

@@ -1,24 +0,0 @@
#!/usr/bin/env sh
set -e
SCRIPT=$(readlink -f "$0")
SCRIPTPATH=$(dirname "$SCRIPT")
source "$SCRIPTPATH/wireguard-config.sh"
if nmcli connection show --active | grep "$ID_LIGHT" > /dev/null
then
nmcli connection up "$ID_FULL"
nmcli connection down "$ID_LIGHT"
exit 0
fi
if nmcli connection show --active | grep "$ID_FULL" > /dev/null
then
nmcli connection up "$ID_LIGHT"
nmcli connection down "$ID_FULL"
exit 0
fi
nmcli connection up "$ID_LIGHT"

View File

@@ -1,7 +0,0 @@
Reddit wallpaper,$HOME/.local/share/scripts/set-reddit-bg.sh
Random wallpaper,$HOME/.local/share/scripts/random-bg.sh
Select wallpaper,$HOME/.local/share/scripts/select-bg.sh
Install Package,alacritty --class "floatme" -e "$XDG_DATA_HOME/scripts/pacman-install.sh"
Take screenshot,$XDG_DATA_HOME/scripts/take-selected-screenshot.sh
Share screenshot,$XDG_DATA_HOME/scripts/share-screenshot.sh
Emoji,rofimoji --clipboarder xclip --typer xdotool
Can't render this file because it contains an unexpected character in line 4 and column 35.

View File

@@ -0,0 +1,17 @@
/**
*
* Author : Aditya Shakya (adi1090x)
* Github : @adi1090x
*
* Colors
**/
* {
background: #2E3440FF;
background-alt: #383E4AFF;
foreground: #E5E9F0FF;
selected: #81A1C1FF;
active: #A3BE8CFF;
urgent: #BF616AFF;
}

View File

@@ -1,5 +0,0 @@
configuration {
}
@theme "../../.cache/wal/colors-rofi-dark"

View File

@@ -0,0 +1 @@
colors/nord.rasi

309
.config/rofi/launcher.rasi Normal file
View File

@@ -0,0 +1,309 @@
/**
*
* Author : Aditya Shakya (adi1090x)
* Github : @adi1090x
*
* Rofi Theme File
* Rofi Version: 1.7.3
**/
/*****----- Configuration -----*****/
configuration {
modi: "drun,filebrowser,window";
show-icons: true;
display-drun: "";
display-run: "";
display-filebrowser: "";
display-window: "";
drun-display-format: "{name}";
window-format: "{w} · {c} · {t}";
}
/*****----- Global Properties -----*****/
@import "current-color.rasi"
* {
border-colour: var(selected);
handle-colour: var(selected);
background-colour: var(background);
foreground-colour: var(foreground);
alternate-background: var(background-alt);
normal-background: var(background);
normal-foreground: var(foreground);
urgent-background: var(urgent);
urgent-foreground: var(background);
active-background: var(active);
active-foreground: var(background);
selected-normal-background: var(selected);
selected-normal-foreground: var(background);
selected-urgent-background: var(active);
selected-urgent-foreground: var(background);
selected-active-background: var(urgent);
selected-active-foreground: var(background);
alternate-normal-background: var(background);
alternate-normal-foreground: var(foreground);
alternate-urgent-background: var(urgent);
alternate-urgent-foreground: var(background);
alternate-active-background: var(active);
alternate-active-foreground: var(background);
}
/*****----- Main Window -----*****/
window {
/* properties for window widget */
transparency: "real";
location: center;
anchor: center;
fullscreen: false;
width: 600px;
x-offset: 0px;
y-offset: 0px;
/* properties for all widgets */
enabled: true;
margin: 0px;
padding: 0px;
border: 0px solid;
border-radius: 10px;
border-color: @border-colour;
cursor: "default";
/* Backgroud Colors */
background-color: @background-colour;
/* Backgroud Image */
//background-image: url("/path/to/image.png", none);
/* Simple Linear Gradient */
//background-image: linear-gradient(red, orange, pink, purple);
/* Directional Linear Gradient */
//background-image: linear-gradient(to bottom, pink, yellow, magenta);
/* Angle Linear Gradient */
//background-image: linear-gradient(45, cyan, purple, indigo);
}
/*****----- Main Box -----*****/
mainbox {
enabled: true;
spacing: 10px;
margin: 0px;
padding: 30px;
border: 0px solid;
border-radius: 0px 0px 0px 0px;
border-color: @border-colour;
background-color: transparent;
children: [ "inputbar", "message", "listview" ];
}
/*****----- Inputbar -----*****/
inputbar {
enabled: true;
spacing: 10px;
margin: 0px;
padding: 0px;
border: 0px solid;
border-radius: 0px;
border-color: @border-colour;
background-color: transparent;
text-color: @foreground-colour;
children: [ "textbox-prompt-colon", "entry", "mode-switcher" ];
}
prompt {
enabled: true;
background-color: inherit;
text-color: inherit;
}
textbox-prompt-colon {
enabled: true;
padding: 5px 0px;
expand: false;
str: "";
background-color: inherit;
text-color: inherit;
}
entry {
enabled: true;
padding: 5px 0px;
background-color: inherit;
text-color: inherit;
cursor: text;
placeholder: "Search...";
placeholder-color: inherit;
}
num-filtered-rows {
enabled: true;
expand: false;
background-color: inherit;
text-color: inherit;
}
textbox-num-sep {
enabled: true;
expand: false;
str: "/";
background-color: inherit;
text-color: inherit;
}
num-rows {
enabled: true;
expand: false;
background-color: inherit;
text-color: inherit;
}
case-indicator {
enabled: true;
background-color: inherit;
text-color: inherit;
}
/*****----- Listview -----*****/
listview {
enabled: true;
columns: 1;
lines: 8;
cycle: true;
dynamic: true;
scrollbar: true;
layout: vertical;
reverse: false;
fixed-height: true;
fixed-columns: true;
spacing: 5px;
margin: 0px;
padding: 0px;
border: 0px solid;
border-radius: 0px;
border-color: @border-colour;
background-color: transparent;
text-color: @foreground-colour;
cursor: "default";
}
scrollbar {
handle-width: 5px ;
handle-color: @handle-colour;
border-radius: 10px;
background-color: @alternate-background;
}
/*****----- Elements -----*****/
element {
enabled: true;
spacing: 10px;
margin: 0px;
padding: 5px 10px;
border: 0px solid;
border-radius: 10px;
border-color: @border-colour;
background-color: transparent;
text-color: @foreground-colour;
cursor: pointer;
}
element normal.normal {
background-color: var(normal-background);
text-color: var(normal-foreground);
}
element normal.urgent {
background-color: var(urgent-background);
text-color: var(urgent-foreground);
}
element normal.active {
background-color: var(active-background);
text-color: var(active-foreground);
}
element selected.normal {
background-color: var(selected-normal-background);
text-color: var(selected-normal-foreground);
}
element selected.urgent {
background-color: var(selected-urgent-background);
text-color: var(selected-urgent-foreground);
}
element selected.active {
background-color: var(selected-active-background);
text-color: var(selected-active-foreground);
}
element alternate.normal {
background-color: var(alternate-normal-background);
text-color: var(alternate-normal-foreground);
}
element alternate.urgent {
background-color: var(alternate-urgent-background);
text-color: var(alternate-urgent-foreground);
}
element alternate.active {
background-color: var(alternate-active-background);
text-color: var(alternate-active-foreground);
}
element-icon {
background-color: transparent;
text-color: inherit;
size: 24px;
cursor: inherit;
}
element-text {
background-color: transparent;
text-color: inherit;
highlight: inherit;
cursor: inherit;
vertical-align: 0.5;
horizontal-align: 0.0;
}
/*****----- Mode Switcher -----*****/
mode-switcher{
enabled: true;
spacing: 10px;
margin: 0px;
padding: 0px;
border: 0px solid;
border-radius: 0px;
border-color: @border-colour;
background-color: transparent;
text-color: @foreground-colour;
}
button {
padding: 5px 10px;
border: 0px solid;
border-radius: 10px;
border-color: @border-colour;
background-color: @alternate-background;
text-color: inherit;
cursor: pointer;
}
button selected {
background-color: var(selected-normal-background);
text-color: var(selected-normal-foreground);
}
/*****----- Message -----*****/
message {
enabled: true;
margin: 0px;
padding: 0px;
border: 0px solid;
border-radius: 0px 0px 0px 0px;
border-color: @border-colour;
background-color: transparent;
text-color: @foreground-colour;
}
textbox {
padding: 8px 10px;
border: 0px solid;
border-radius: 10px;
border-color: @border-colour;
background-color: @alternate-background;
text-color: @foreground-colour;
vertical-align: 0.5;
horizontal-align: 0.0;
highlight: none;
placeholder-color: @foreground-colour;
blink: true;
markup: true;
}
error-message {
padding: 10px;
border: 2px solid;
border-radius: 10px;
border-color: @border-colour;
background-color: @background-colour;
text-color: @foreground-colour;
}

167
.config/rofi/powermenu.rasi Normal file
View File

@@ -0,0 +1,167 @@
/**
*
* Author : Aditya Shakya (adi1090x)
* Github : @adi1090x
*
* Rofi Theme File
* Rofi Version: 1.7.3
**/
/*****----- Configuration -----*****/
configuration {
show-icons: false;
}
/*****----- Global Properties -----*****/
@import "current-color.rasi"
/*****----- Main Window -----*****/
window {
/* properties for window widget */
transparency: "real";
location: center;
anchor: center;
fullscreen: false;
width: 605px;
x-offset: 0px;
y-offset: 0px;
/* properties for all widgets */
enabled: true;
margin: 0px;
padding: 0px;
border: 0px solid;
border-radius: 4px;
border-color: @selected;
cursor: "default";
background-color: @background;
}
/*****----- Main Box -----*****/
mainbox {
enabled: true;
spacing: 10px;
margin: 0px;
padding: 20px;
border: 0px solid;
border-radius: 0px;
border-color: @selected;
background-color: transparent;
children: [ "inputbar", "message", "listview" ];
}
/*****----- Inputbar -----*****/
inputbar {
enabled: true;
spacing: 10px;
margin: 0px;
padding: 0px;
border: 0px;
border-radius: 0px;
border-color: @selected;
background-color: transparent;
text-color: @foreground;
children: [ "textbox-prompt-colon", dummy, "prompt"];
}
dummy {
background-color: transparent;
}
textbox-prompt-colon {
enabled: true;
expand: false;
str: "";
padding: 10px 14px;
border-radius: 4px;
background-color: @urgent;
text-color: @background;
}
prompt {
enabled: true;
padding: 10px;
border-radius: 4px;
background-color: @active;
text-color: @background;
}
/*****----- Message -----*****/
message {
enabled: true;
margin: 0px;
padding: 10px;
border: 0px solid;
border-radius: 4px;
border-color: @selected;
background-color: @background-alt;
text-color: @foreground;
}
textbox {
background-color: inherit;
text-color: inherit;
vertical-align: 0.5;
horizontal-align: 0.5;
placeholder-color: @foreground;
blink: true;
markup: true;
}
error-message {
padding: 10px;
border: 0px solid;
border-radius: 0px;
border-color: @selected;
background-color: @background;
text-color: @foreground;
}
/*****----- Listview -----*****/
listview {
enabled: true;
columns: 5;
lines: 1;
cycle: true;
dynamic: true;
scrollbar: false;
layout: vertical;
reverse: false;
fixed-height: true;
fixed-columns: true;
spacing: 10px;
margin: 0px;
padding: 0px;
border: 0px solid;
border-radius: 0px;
border-color: @selected;
background-color: transparent;
text-color: @foreground;
cursor: "default";
}
/*****----- Elements -----*****/
element {
enabled: true;
spacing: 0px;
margin: 0px;
padding: 10px;
border: 0px solid;
border-radius: 4px;
border-color: @selected;
background-color: @background-alt;
text-color: @foreground;
cursor: pointer;
}
element-text {
background-color: transparent;
text-color: inherit;
cursor: inherit;
vertical-align: 0.5;
horizontal-align: 0.5;
}
element selected.normal {
border: 0px 2px 0px 2px;
border-radius: 4px;
background-color: var(selected);
text-color: var(background);
}

44
.config/rofi/powermenu.sh Executable file
View File

@@ -0,0 +1,44 @@
#!/usr/bin/env sh
ROFI_CONFIG_DIR="$XDG_CONFIG_HOME/rofi/"
UPTIME="$(uptime | awk -F'( |,|:)+' '{print $6,$7",",$8,"hours,",$9,"minutes."}')"
SHUTDOWN=""
RESTART=""
LOCK=""
LOGOUT=""
WINDOWS=""
rofi_cmd(){
echo -e "$SHUTDOWN\n$WINDOWS\n$RESTART\n$LOGOUT\n$LOCK" | \
rofi -dmenu \
-p "Power" \
-mesg "Uptime: $UPTIME" \
-theme ${ROFI_CONFIG_DIR}/powermenu.rasi
}
selection=$(rofi_cmd)
case ${selection} in
$SHUTDOWN)
systemctl poweroff
;;
$RESTART)
systemctl reboot
;;
$LOCK)
# TODO
;;
$LOGOUT)
if [[ "$XDG_CURRENT_DESKTOP" == 'Hyprland' ]]; then
hyprctl dispatch exit
fi
;;
$WINDOWS)
boot-windows
systemctl reboot
;;
esac

View File

@@ -1,18 +0,0 @@
#!/usr/bin/env sh
set -e
WORKINGDIR="$HOME/.config/rofi/"
MAP="$WORKINGDIR/cmd.csv"
cat "$MAP" \
| cut -d ',' -f 1 \
| rofi -dmenu -i -p "Quick " \
| head -n 1 \
| xargs -i --no-run-if-empty grep "{}" "$MAP" \
| cut -d ',' -f 2 \
| head -n 1 \
| xargs -i --no-run-if-empty /bin/bash -c "{}"
exit 0

View File

@@ -1,4 +0,0 @@
#!/usr/bin/env sh
# send ipc to polybar to update
polybar-msg hook spotifyd 1

View File

@@ -1,13 +0,0 @@
[global]
username = djeeberjr
password_cmd = $HOME/.config/spotifyd/secret.sh
backend = pulseaudio
bitrate = 320
device_name = Spotifyd
on_song_change_hook = $HOME/.config/spotifyd/change.sh

View File

@@ -0,0 +1,74 @@
{
"$schema": "/etc/xdg/swaync/configSchema.json",
"positionX": "right",
"positionY": "top",
"layer": "top",
"cssPriority": "application",
"control-center-margin-top": 0,
"control-center-margin-bottom": 0,
"control-center-margin-right": 0,
"control-center-margin-left": 0,
"notification-icon-size": 64,
"notification-body-image-height": 100,
"notification-body-image-width": 200,
"timeout": 10,
"timeout-low": 5,
"timeout-critical": 0,
"fit-to-screen": true,
"control-center-width": 500,
"control-center-height": 600,
"notification-window-width": 500,
"keyboard-shortcuts": true,
"image-visibility": "when-available",
"transition-time": 200,
"hide-on-clear": false,
"hide-on-action": true,
"script-fail-notify": true,
"scripts": {
"example-script": {
"exec": "echo 'Do something...'",
"urgency": "Normal"
},
"example-action-script": {
"exec": "echo 'Do something actionable!'",
"urgency": "Normal",
"run-on": "action"
}
},
"notification-visibility": {
"example-name": {
"state": "muted",
"urgency": "Low",
"app-name": "Spotify"
}
},
"widgets": [
"inhibitors",
"title",
"dnd",
"notifications"
],
"widget-config": {
"inhibitors": {
"text": "Inhibitors",
"button-text": "Clear All",
"clear-all-button": true
},
"title": {
"text": "Notifications",
"clear-all-button": true,
"button-text": "Clear All"
},
"dnd": {
"text": "Do Not Disturb"
},
"label": {
"max-lines": 5,
"text": "Label Text"
},
"mpris": {
"image-size": 96,
"image-radius": 12
}
}
}

318
.config/swaync/style.css Normal file
View File

@@ -0,0 +1,318 @@
/*
* vim: ft=less
*/
@define-color cc-bg rgba(0, 0, 0, 0.7);
@define-color noti-border-color rgba(255, 255, 255, 0.15);
@define-color noti-bg rgb(48, 48, 48);
@define-color noti-bg-hover rgb(56, 56, 56);
@define-color noti-bg-focus rgba(68, 68, 68, 0.6);
@define-color noti-close-bg rgba(255, 255, 255, 0.1);
@define-color noti-close-bg-hover rgba(255, 255, 255, 0.15);
@define-color bg-selected rgb(0, 128, 255);
.notification-row {
outline: none;
}
.notification-row:focus,
.notification-row:hover {
background: @noti-bg-focus;
}
.notification {
border-radius: 12px;
margin: 6px 12px;
box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3), 0 1px 3px 1px rgba(0, 0, 0, 0.7),
0 2px 6px 2px rgba(0, 0, 0, 0.3);
padding: 0;
}
/* Uncomment to enable specific urgency colors
.low {
background: yellow;
padding: 6px;
border-radius: 12px;
}
.normal {
background: green;
padding: 6px;
border-radius: 12px;
}
.critical {
background: red;
padding: 6px;
border-radius: 12px;
}
*/
.notification-content {
background: transparent;
padding: 6px;
border-radius: 12px;
}
.close-button {
background: @noti-close-bg;
color: white;
text-shadow: none;
padding: 0;
border-radius: 100%;
margin-top: 10px;
margin-right: 16px;
box-shadow: none;
border: none;
min-width: 24px;
min-height: 24px;
}
.close-button:hover {
box-shadow: none;
background: @noti-close-bg-hover;
transition: all 0.15s ease-in-out;
border: none;
}
.notification-default-action,
.notification-action {
padding: 4px;
margin: 0;
box-shadow: none;
background: @noti-bg;
border: 1px solid @noti-border-color;
color: white;
}
.notification-default-action:hover,
.notification-action:hover {
-gtk-icon-effect: none;
background: @noti-bg-hover;
}
.notification-default-action {
border-radius: 12px;
}
/* When alternative actions are visible */
.notification-default-action:not(:only-child) {
border-bottom-left-radius: 0px;
border-bottom-right-radius: 0px;
}
.notification-action {
border-radius: 0px;
border-top: none;
border-right: none;
}
/* add bottom border radius to eliminate clipping */
.notification-action:first-child {
border-bottom-left-radius: 10px;
}
.notification-action:last-child {
border-bottom-right-radius: 10px;
border-right: 1px solid @noti-border-color;
}
.image {
}
.body-image {
margin-top: 6px;
background-color: white;
border-radius: 12px;
}
.summary {
font-size: 16px;
font-weight: bold;
background: transparent;
color: white;
text-shadow: none;
}
.time {
font-size: 16px;
font-weight: bold;
background: transparent;
color: white;
text-shadow: none;
margin-right: 18px;
}
.body {
font-size: 15px;
font-weight: normal;
background: transparent;
color: white;
text-shadow: none;
}
.control-center {
background: @cc-bg;
}
.control-center-list {
background: transparent;
}
.control-center-list-placeholder {
opacity: 0.5;
}
.floating-notifications {
background: transparent;
}
/* Window behind control center and on all other monitors */
.blank-window {
background: alpha(black, 0.25);
}
/*** Widgets ***/
/* Title widget */
.widget-title {
margin: 8px;
font-size: 1.5rem;
}
.widget-title > button {
font-size: initial;
color: white;
text-shadow: none;
background: @noti-bg;
border: 1px solid @noti-border-color;
box-shadow: none;
border-radius: 12px;
}
.widget-title > button:hover {
background: @noti-bg-hover;
}
/* DND widget */
.widget-dnd {
margin: 8px;
font-size: 1.1rem;
}
.widget-dnd > switch {
font-size: initial;
border-radius: 12px;
background: @noti-bg;
border: 1px solid @noti-border-color;
box-shadow: none;
}
.widget-dnd > switch:checked {
background: @bg-selected;
}
.widget-dnd > switch slider {
background: @noti-bg-hover;
border-radius: 12px;
}
/* Label widget */
.widget-label {
margin: 8px;
}
.widget-label > label {
font-size: 1.1rem;
}
/* Mpris widget */
.widget-mpris {
/* The parent to all players */
}
.widget-mpris-player {
padding: 8px;
margin: 8px;
}
.widget-mpris-title {
font-weight: bold;
font-size: 1.25rem;
}
.widget-mpris-subtitle {
font-size: 1.1rem;
}
/* Buttons widget */
.widget-buttons-grid {
padding: 8px;
margin: 8px;
border-radius: 12px;
background-color: @noti-bg;
}
.widget-buttons-grid>flowbox>flowboxchild>button{
background: @noti-bg;
border-radius: 12px;
}
.widget-buttons-grid>flowbox>flowboxchild>button:hover {
background: @noti-bg-hover;
}
/* Menubar widget */
.widget-menubar>box>.menu-button-bar>button {
border: none;
background: transparent;
}
/* .AnyName { Name defined in config after #
background-color: @noti-bg;
padding: 8px;
margin: 8px;
border-radius: 12px;
}
.AnyName>button {
background: transparent;
border: none;
}
.AnyName>button:hover {
background-color: @noti-bg-hover;
} */
.topbar-buttons>button { /* Name defined in config after # */
border: none;
background: transparent;
}
/* Volume widget */
.widget-volume {
background-color: @noti-bg;
padding: 8px;
margin: 8px;
border-radius: 12px;
}
/* Backlight widget */
.widget-backlight {
background-color: @noti-bg;
padding: 8px;
margin: 8px;
border-radius: 12px;
}
/* Title widget */
.widget-inhibitors {
margin: 8px;
font-size: 1.5rem;
}
.widget-inhibitors > button {
font-size: initial;
color: white;
text-shadow: none;
background: @noti-bg;
border: 1px solid @noti-border-color;
box-shadow: none;
border-radius: 12px;
}
.widget-inhibitors > button:hover {
background: @noti-bg-hover;
}

View File

@@ -57,4 +57,5 @@ bind-key -n M-J resize-pane -D 5
bind-key -n M-K resize-pane -U 5 bind-key -n M-K resize-pane -U 5
bind-key -n M-L resize-pane -R 5 bind-key -n M-L resize-pane -R 5
# Enable mouse scroll
set -g mouse on

View File

@@ -0,0 +1,5 @@
@define-color bg {background};
@define-color fg {foreground};
@define-color focus {color3};
@define-color text {color6};
@define-color border {color2};

View File

@@ -0,0 +1 @@
@import url("/home/niklas/.cache/wal/waybar.css");

84
.config/waybar/config Normal file
View File

@@ -0,0 +1,84 @@
{
"height": 30, // Waybar height (to be removed for auto height)
"spacing": 4, // Gaps between modules (4px)
"layer":"top",
"modules-left": ["hyprland/workspaces"],
"modules-center": [],
"modules-right": ["group/audio", "idle_inhibitor", "group/system"],
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
}
},
"group/audio":{
"orientation": "horizontal",
"modules":[
"custom/playerctl",
"pulseaudio"
]
},
"group/system":{
"orientation": "horizontal",
"modules":[
"clock",
"tray",
"custom/swaync" ]
},
"tray": {
// "icon-size": 21,
"spacing": 10
},
"clock": {
// "timezone": "America/New_York",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"format-alt": "{:%Y-%m-%d}"
},
"pulseaudio": {
"scroll-step": 5,
"format": "{volume}% {icon} {format_source}",
"format-muted": " {format_source}",
"format-source": "",
"format-source-muted": "",
"format-icons": {
"default": ["", "", ""]
},
"on-click-middle": "pavucontrol",
"on-click":"$XDG_CONFIG_HOME/waybar/mute-toggle.sh",
"tooltip":false,
"max-volume":150
},
"custom/playerctl": {
"format": "{}",
"on-click":"playerctl --player=spotify,%any play-pause",
"on-click-right":"playerctl --player=spotify,%any next",
"on-scroll-up":"playerctl --player=spotify,%any volume 0.05+",
"on-scroll-down":"playerctl --player=spotify,%any volume 0.05-",
"exec": "playerctl --player=spotify,%any -f '{{title}} - {{artist}}' metadata -F | sed -u 's/&/\\&amp;/g' 2>/dev/null",
"max-length":50,
"tooltip":false
},
"custom/swaync":{
"tooltip": false,
"format": "{icon}",
"format-icons": {
"notification": "<span foreground='red'><sup></sup></span>",
"none": "",
"dnd-notification": "<span foreground='red'><sup></sup></span>",
"dnd-none": "",
"inhibited-notification": "<span foreground='red'><sup></sup></span>",
"inhibited-none": "",
"dnd-inhibited-notification": "<span foreground='red'><sup></sup></span>",
"dnd-inhibited-none": ""
},
"return-type": "json",
"exec-if": "which swaync-client",
"exec": "swaync-client -swb",
"on-click": "swaync-client -t -sw",
"on-click-right": "swaync-client -d -sw"
}
}
// vim:set filetype=jsonc :

11
.config/waybar/mute-toggle.sh Executable file
View File

@@ -0,0 +1,11 @@
#!/usr/bin/env sh
wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
if pactl get-source-mute @DEFAULT_SOURCE@ | grep yes; then
# Muted
mpv "$XDG_CONFIG_HOME/waybar/mute.wav" --volume=60
else
# Not muted
mpv "$XDG_CONFIG_HOME/waybar/unmute.wav" --volume=60
fi

BIN
.config/waybar/mute.wav Normal file

Binary file not shown.

120
.config/waybar/style.css Normal file
View File

@@ -0,0 +1,120 @@
@import url("colors.css");
* {
font-family: FontAwesome, Roboto, Helvetica, Arial, sans-serif;
font-size: 13px;
/*border-radius: 24px;*/
min-height: 0;
}
window#waybar {
background-color: @bg;
/*border-radius: 24px;*/ /* Have bar itself rounded */
color: @text;
}
window#waybar.hidden {
opacity: 0.2;
}
/*--- Workspaces ---*/
#workspaces{
border-radius: 24px;
border: solid 1px @border;
margin-top: 2px;
margin-bottom: 2px;
}
#workspaces button {
border: none;
border-radius: 24px;
padding: 0 5px;
background-color: transparent;
color: @text;
transition: all 0.3s ease-in-out;
}
#workspaces button:hover {
background: @fg;
/* Disble clicking effect */
box-shadow: inherit;
text-shadow: inherit;
}
#workspaces button.focused {
background-color: @focus;
}
#workspaces button.urgent {
background-color: #eb4d4b;
}
#workspaces button.active{
background-color: @focus;
transition: all 0.3s ease-in-out;
}
/*--- Groups ---*/
#audio, #system, #idle_inhibitor {
border: solid 1px @border;
border-radius: 24px;
margin-top: 2px;
margin-bottom: 2px;
background-color: @focus;
}
/*--- Each module ---*/
#custom-playerctl,
#custom-swaync,
#clock,
#pulseaudio,
#wireplumber,
#custom-media,
#tray,
#mode,
#idle_inhibitor{
color: @text;
padding-left: 6px;
padding-right: 6px;
}
.modules-left{
padding-left: 3px;
}
.modules-right{
padding-right: 3px;
}
/* If workspaces is the leftmost module, omit left margin */
/*
.modules-left > widget:first-child > #workspaces {
margin-left: 0;
}
*/
/* If workspaces is the rightmost module, omit right margin */
/*
.modules-right > widget:last-child > #workspaces {
margin-right: 0;
}
*/
#tray > .passive {
-gtk-icon-effect: dim;
}
#custom-swaync {
font-family: "NotoSansMono Nerd Font";
padding: 0 10px;
color: @text;
font-size: 17px;
}

BIN
.config/waybar/unmute.wav Normal file

Binary file not shown.

View File

@@ -1,8 +0,0 @@
[user]
name = Niklas
email = niklas@kapelle.org
[filter "lfs"]
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
process = git-lfs filter-process
required = true

View File

@@ -1 +0,0 @@
gtk-theme-name = "Adapta-Nokto"

View File

@@ -1 +0,0 @@
../share/scripts/arch-wiki.sh

View File

@@ -1 +0,0 @@
../share/scripts/del-pic.sh

View File

@@ -1 +0,0 @@
../share/scripts/macho.sh

View File

@@ -1 +0,0 @@
../share/scripts/pacman-browse.sh

View File

@@ -1 +0,0 @@
../share/scripts/pacman-install.sh

View File

@@ -1 +0,0 @@
../share/scripts/nc-share-file.sh

View File

@@ -1,10 +0,0 @@
[Desktop Entry]
Type=Application
Version=1.0
Name=Cataclysm: Dark Days Ahead
Comment=Turn-based survival game.
Exec=cataclysm-tiles
Icon=/usr/share/icons/hicolor/128x128/apps/cataclysm-dda.png
Terminal=false
Categories=Game

View File

@@ -1,9 +0,0 @@
[Desktop Entry]
Type=Application
Version=1.0
Name=Steam chat
Comment=Open Steam chat as SSB
Exec=firefox --ssb https://steamcommunity.com/chat
Terminal=false
Categories=Network;InstantMessaging

View File

@@ -1,9 +0,0 @@
[Desktop Entry]
Type=Application
Version=1.0
Name=Telegram
Comment=Open Telegram as SSB
Exec=firefox --ssb https://web.telegram.org/
Terminal=false
Categories=Network;InstantMessaging

View File

@@ -1,9 +0,0 @@
[Desktop Entry]
Type=Application
Version=1.0
Name=WhatsApp
Comment=Open WhatsApp as SSB
Exec=firefox --ssb https://web.whatsapp.com
Terminal=false
Categories=Network;InstantMessaging

View File

@@ -0,0 +1,9 @@
[Context]
filesystems=!xdg-videos;!xdg-pictures;!xdg-download
[Session Bus Policy]
org.kde.StatusNotifierWatcher=none
com.canonical.Unity.LauncherEntry=none
com.canonical.AppMenu.Registrar=none
com.canonical.indicator.application=none
org.kde.*=none

View File

@@ -0,0 +1,2 @@
[Context]
filesystems=!xdg-run/app/com.discordapp.Discord;!xdg-desktop;!xdg-documents;/srv/bulk/home/niklas;xdg-config/MangoHud:ro

View File

@@ -0,0 +1,2 @@
[Context]
filesystems=/srv/bulk/home/niklas/games

View File

@@ -0,0 +1,5 @@
[Context]
filesystems=!xdg-music;!xdg-pictures;!xdg-run/app/com.discordapp.Discord;/srv/bulk/home/niklas;xdg-config/MangoHud:ro;/run/user/1000/pipewire-0
[Environment]
MANGOHUD=1

View File

@@ -0,0 +1,6 @@
[Context]
filesystems=!/run/media;!/media;/srv/bulk/home/niklas;!home
[Session Bus Policy]
org.gnome.Mutter.DisplayConfig=none
org.kde.StatusNotifierWatcher=none

View File

@@ -1,2 +0,0 @@
#!/usr/bin/env sh
mpv --no-input-terminal --loop-file=inf $2 --wid=$1 --panscan=1.0

Some files were not shown because too many files have changed in this diff Show More