diff --git a/.config/bspwm/bspwmrc b/.config/bspwm/bspwmrc index 057a07e..c87b144 100755 --- a/.config/bspwm/bspwmrc +++ b/.config/bspwm/bspwmrc @@ -34,6 +34,9 @@ bspc rule -a kcharselect state=floating bspc rule -a plasma.emojier state=floating bspc rule -a rpi-imager state=floating bspc rule -a 'FF Multi Converter' state=floating +bspc rule -a isoimagewriter state=floating +bspc rule -a kmag state=floating +bspc rule -a GLava state=floating bspc rule -a desktop="Desktop" locked=on ~/Scripts/autostart.sh diff --git a/.config/glava/bars b/.config/glava/bars new file mode 120000 index 0000000..09377e3 --- /dev/null +++ b/.config/glava/bars @@ -0,0 +1 @@ +/etc/xdg/glava//bars \ No newline at end of file diff --git a/.config/glava/bars.glsl b/.config/glava/bars.glsl new file mode 100755 index 0000000..6e6a7b0 --- /dev/null +++ b/.config/glava/bars.glsl @@ -0,0 +1,33 @@ + +/* Center line thickness (pixels) */ +#define C_LINE 1 +/* Width (in pixels) of each bar */ +#define BAR_WIDTH 4 +/* Width (in pixels) of each bar gap */ +#define BAR_GAP 2 +/* Outline color */ +#define BAR_OUTLINE #262626 +/* Outline width (in pixels, set to 0 to disable outline drawing) */ +#define BAR_OUTLINE_WIDTH 0 +/* Amplify magnitude of the results each bar displays */ +#define AMPLIFY 300 +/* Whether the current settings use the alpha channel; + enabling this is required for alpha to function + correctly on X11 with `"native"` transparency. */ +#define USE_ALPHA 0 +/* How strong the gradient changes */ +#define GRADIENT_POWER 60 +/* Bar color changes with height */ +#define GRADIENT (d / GRADIENT_POWER + 1) +/* Bar color */ +#define COLOR (#3366b2 * GRADIENT) +/* Direction that the bars are facing, 0 for inward, 1 for outward */ +#define DIRECTION 0 +/* Whether to switch left/right audio buffers */ +#define INVERT 0 +/* Whether to flip the output vertically */ +#define FLIP 0 +/* Whether to mirror output along `Y = X`, causing output to render on the left side of the window */ +/* Use with `FLIP 1` to render on the right side */ +#define MIRROR_YX 0 + diff --git a/.config/glava/circle b/.config/glava/circle new file mode 120000 index 0000000..f53c651 --- /dev/null +++ b/.config/glava/circle @@ -0,0 +1 @@ +/etc/xdg/glava//circle \ No newline at end of file diff --git a/.config/glava/circle.glsl b/.config/glava/circle.glsl new file mode 100755 index 0000000..83b8ad3 --- /dev/null +++ b/.config/glava/circle.glsl @@ -0,0 +1,24 @@ +/* center radius (pixels) */ +#define C_RADIUS 128 +/* center line thickness (pixels) */ +#define C_LINE 1.5 +/* outline color */ +#define OUTLINE #333333 +/* Amplify magnitude of the results each bar displays */ +#define AMPLIFY 150 +/* Angle (in radians) for how much to rotate the visualizer */ +#define ROTATE (PI / 2) +/* Whether to switch left/right audio buffers */ +#define INVERT 0 +/* Whether to fill in the space between the line and inner circle */ +#define C_FILL 0 +/* Whether to apply a post-processing image smoothing effect + 1 to enable, 0 to disable. Only works with `xroot` transparency, + and improves performance if disabled. */ +#define C_SMOOTH 1 + +/* Gravity step, overrude frin `smooth_parameters.glsl` */ +#request setgravitystep 6.0 + +/* Smoothing factor, override from `smooth_parameters.glsl` */ +#request setsmoothfactor 0.01 diff --git a/.config/glava/env_KWin.glsl b/.config/glava/env_KWin.glsl new file mode 100755 index 0000000..aa168ba --- /dev/null +++ b/.config/glava/env_KWin.glsl @@ -0,0 +1,8 @@ +#request setdecorated false +#request setxwintype "normal" +#request addxwinstate "below" +#request addxwinstate "skip_taskbar" +#request addxwinstate "skip_pager" +#request addxwinstate "pinned" +#request setclickthrough true + diff --git a/.config/glava/env_Openbox.glsl b/.config/glava/env_Openbox.glsl new file mode 100755 index 0000000..c95c616 --- /dev/null +++ b/.config/glava/env_Openbox.glsl @@ -0,0 +1,2 @@ +#request setxwintype "desktop" +#request addxwinstate "pinned" diff --git a/.config/glava/env_Xfwm4.glsl b/.config/glava/env_Xfwm4.glsl new file mode 100755 index 0000000..1c20359 --- /dev/null +++ b/.config/glava/env_Xfwm4.glsl @@ -0,0 +1,3 @@ +#request setxwintype "desktop" +#request addxwinstate "pinned" +#request addxwinstate "below" diff --git a/.config/glava/env_awesome.glsl b/.config/glava/env_awesome.glsl new file mode 100755 index 0000000..7f2bba3 --- /dev/null +++ b/.config/glava/env_awesome.glsl @@ -0,0 +1 @@ +#request setxwintype "!-" diff --git a/.config/glava/env_default.glsl b/.config/glava/env_default.glsl new file mode 100755 index 0000000..90336cc --- /dev/null +++ b/.config/glava/env_default.glsl @@ -0,0 +1 @@ +#request setxwintype "desktop" diff --git a/.config/glava/env_i3.glsl b/.config/glava/env_i3.glsl new file mode 100755 index 0000000..7f2bba3 --- /dev/null +++ b/.config/glava/env_i3.glsl @@ -0,0 +1 @@ +#request setxwintype "!-" diff --git a/.config/glava/graph b/.config/glava/graph new file mode 120000 index 0000000..2ad2983 --- /dev/null +++ b/.config/glava/graph @@ -0,0 +1 @@ +/etc/xdg/glava//graph \ No newline at end of file diff --git a/.config/glava/graph.glsl b/.config/glava/graph.glsl new file mode 100755 index 0000000..2f7c2f1 --- /dev/null +++ b/.config/glava/graph.glsl @@ -0,0 +1,31 @@ + +/* Vertical scale, larger values will amplify output */ +#define VSCALE 300 +/* Rendering direction, either -1 (outwards) or 1 (inwards). */ +#define DIRECTION 1 + +/* Color gradient scale, (optionally) used in `COLOR` macro */ +#define GRADIENT_SCALE 75 +/* Color definition. By default this is a gradient formed by mixing two colors. + `pos` represents the pixel position relative to the visualizer baseline. */ +#define COLOR mix(#EB4034, #FF8789, clamp(pos / GRADIENT_SCALE, 0, 1)) +/* 1 to draw outline, 0 to disable */ +#define DRAW_OUTLINE 0 +/* 1 to draw edge highlight, 0 to disable */ +#define DRAW_HIGHLIGHT 1 +/* Whether to anti-alias the border of the graph, creating a smoother curve. + This may have a small impact on performance. + Note: requires `xroot` or `none` opacity to be set */ +#define ANTI_ALIAS 0 +/* outline color */ +#define OUTLINE #2A2C2B +/* 1 to join the two channels together in the middle, 0 to clamp both down to zero */ +#define JOIN_CHANNELS 0 +/* 1 to invert (vertically), 0 otherwise */ +#define INVERT 0 + +/* Gravity step, overrude from `smooth_parameters.glsl` */ +#request setgravitystep 2.4 + +/* Smoothing factor, override from `smooth_parameters.glsl` */ +#request setsmoothfactor 0.015 diff --git a/.config/glava/radial b/.config/glava/radial new file mode 120000 index 0000000..04fe5e4 --- /dev/null +++ b/.config/glava/radial @@ -0,0 +1 @@ +/etc/xdg/glava//radial \ No newline at end of file diff --git a/.config/glava/radial.glsl b/.config/glava/radial.glsl new file mode 100755 index 0000000..4689be6 --- /dev/null +++ b/.config/glava/radial.glsl @@ -0,0 +1,39 @@ + +/* center radius (pixels) */ +#define C_RADIUS 128 +/* center line thickness (pixels) */ +#define C_LINE 2 +/* outline color */ +#define OUTLINE #333333 +/* number of bars (use even values for best results) */ +#define NBARS 180 +/* width (in pixels) of each bar*/ +#define BAR_WIDTH 3.5 +/* outline color */ +#define BAR_OUTLINE OUTLINE +/* outline width (in pixels, set to 0 to disable outline drawing) */ +#define BAR_OUTLINE_WIDTH 0 +/* Amplify magnitude of the results each bar displays */ +#define AMPLIFY 300 +/* Bar color */ +#define COLOR (#cc3333 * ((d / 40) + 1)) +/* Angle (in radians) for how much to rotate the visualizer */ +#define ROTATE (PI / 2) +/* Whether to switch left/right audio buffers */ +#define INVERT 0 +/* Aliasing factors. Higher values mean more defined and jagged lines. + Note: aliasing does not have a notable impact on performance, but requires + `xroot` transparency to be enabled since it relies on alpha blending with + the background. */ +#define BAR_ALIAS_FACTOR 1.2 +#define C_ALIAS_FACTOR 1.8 +/* Offset (Y) of the visualization */ +#define CENTER_OFFSET_Y 0 +/* Offset (X) of the visualization */ +#define CENTER_OFFSET_X 0 + +/* Gravity step, override from `smooth_parameters.glsl` */ +#request setgravitystep 5.0 + +/* Smoothing factor, override from `smooth_parameters.glsl` */ +#request setsmoothfactor 0.02 diff --git a/.config/glava/rc.glsl b/.config/glava/rc.glsl new file mode 100755 index 0000000..c06b0a4 --- /dev/null +++ b/.config/glava/rc.glsl @@ -0,0 +1,227 @@ + +/* The module to use. A module is a set of shaders used to produce + the visualizer. The structure for a module is the following: + + module_name [directory] + 1.frag [file: fragment shader], + 2.frag [file: fragment shader], + ... + + Shaders are loaded in numerical order, starting at '1.frag', + continuing indefinitely. The results of each shader (except + for the final pass) is given to the next shader in the list + as a 2D sampler. + + See documentation for more details. */ +#request mod graph + +/* Window hints */ +#request setfloating false +#request setdecorated true +#request setfocused false +#request setmaximized false + +/* Set window background opacity mode. Possible values are: + + "native" - True transparency provided by the compositor. Can + reduce performance on some systems, depending on + the compositor used. + + "xroot" - Maintain a copy of the root window's pixmap + (usually the desktop background) to provide a + pseudo-transparent effect. Useful when no compositor + is available or native transparency isn't nessecary. + Has very little performance impact. + + "none" - Disable window opacity completely. */ +#request setopacity "native" + +/* Whether to mirror left and right audio input channels from PulseAudio.*/ +#request setmirror false + +/* OpenGL context and GLSL shader versions, do not change unless + you *absolutely* know what you are doing. */ +#request setversion 3 3 +#request setshaderversion 330 + +/* Window title */ +#request settitle "GLava" + +/* Window geometry (x, y, width, height) */ +#request setgeometry 0 0 800 600 + +/* Window background color (RGB format). + Does not work with `setopacity "xroot"` */ +#request setbg 00000000 + +/* (X11 only) EWMH Window type. Possible values are: + + "desktop", "dock", "toolbar", "menu", + "utility", "splash", "dialog", "normal" + + This will set _NET_WM_WINDOW_TYPE to _NET_WM_WINDOW_TYPE_(TYPE), + where (TYPE) is the one of the window types listed (after being + converted to uppercase). + + Alternatively, you can set this value to "!", which will cause + the window to be unmanaged. If this is set, then `addxwinstate` + will do nothing, but you can use "!+" and "!-" to stack on top + or below other windows. +*/ +#request setxwintype "normal" + +/* (X11 only) EWMH Window state atoms (multiple can be specified). + Possible values are: + + "modal", "sticky", "maximized_vert", "maximized_horz", + "shaded", "skip_taskbar", "skip_pager", "hidden", "fullscreen", + "above", "below", "demands_attention", "focused", "pinned" + + This will add _NET_WM_STATE_(TYPE) atoms to _NET_WM_STATE, + where (TYPE) is one of the window states listed (after being + converted to uppercase). + + The lines below (commented out by default) are of relevance + if you are trying to get GLava to behave as a desktop widget + and your WM is not correctly responding to the "desktop" value + for `setxwintype`. +*/ +#request addxwinstate "sticky" +#request addxwinstate "skip_taskbar" +#request addxwinstate "skip_pager" +#request addxwinstate "above" +// #request addxwinstate "pinned" + +/* (X11 only) Use the XShape extension to support clicking through + the GLava window. Useful when you want to interact with other + desktop windows (icons, menus, desktop shells). Enabled by + default when GLava itself is a desktop window. */ +#request setclickthrough false + +/* Audio source + + When the "pulseaudio" backend is set, this can be a number or + a name of an audio sink or device to record from. Set to "auto" + to use the default output device. + + When the "fifo" backend is set, "auto" is interpreted as + "/tmp/mpd.fifo". Otherwise, a valid path should be provided. */ +#request setsource "auto" + +/* Buffer swap interval (vsync), set to '0' to prevent + waiting for refresh, '1' (or more) to wait for the specified + amount of frames. */ +#request setswap 1 + +/* Linear interpolation for audio data frames. Drastically + improves smoothness with configurations that yield low UPS + (`setsamplerate` and `setsamplesize`), or monitors that have + high refresh rates. + + This feature itself, however, will effect performance as it + will have to interpolate data every frame on the CPU. It will + automatically (and temporarily) disable itself if the update + rate is close to, or higher than the framerate: + + if (update_rate / frame_rate > 0.9) disable_interpolation; + + This will delay data output by one update frame, so it can + desync audio with visual effects on low UPS configs. */ +#request setinterpolate true + +/* Frame limiter, set to the frames per second (FPS) desired or + simply set to zero (or lower) to disable the frame limiter. */ +#request setframerate 0 + +/* Suspends rendering if a fullscreen window is focused while + GLava is still visible (ie. on another monitor). This prevents + rendering from interfering with other graphically intensive + tasks. + + If GLava is minimized or completely obscured, it will not + render regardless of this option. */ +#request setfullscreencheck false + +/* Enable/disable printing framerate every second. 'FPS' stands + for 'Frames Per Second', and 'UPS' stands for 'Updates Per + Second'. Updates are performed when new data is submitted + by pulseaudio, and require transformations to be re-applied + (thus being a good measure of how much work your CPU has to + perform over time) */ +#request setprintframes true + +/* PulseAudio sample buffer size. Lower values result in more + frequent audio updates (also depends on sampling rate), but + will also require all transformations to be applied much + more frequently (CPU intensive). + + High (>2048, with 22050 Hz) values will decrease accuracy + (as some signals can be missed by transformations like FFT) + + The following settings (@22050 Hz) produce the listed rates: + + Sample UPS Description + - 2048 -> 43.0 (low accuracy, cheap), use with < 60 FPS + - 1024 -> 86.1 (high accuracy, expensive), use with >= 60 FPS + - 512 -> 172.3 (extreme accuracy, very expensive), use only + for graphing accurate spectrum data with + custom modules. + + If the framerate drops below the update rate, the update rate + will be locked to the framerate (to prevent wasting CPU time). + This behaviour means you can use a 1024 sample size on a 60Hz + monitor with vsync enabled to get 60FPS and 60UPS. + + For high refresh rate monitors (120+ Hz), it's recommended to + also stick with the 1024 sample size and use interpolation to + smooth the data, as accuracy beyond this setting is mostly + meaningless for visual purposes. +*/ +#request setsamplesize 1024 + +/* Audio buffer size to be used for processing and shaders. + Increasing this value can have the effect of adding 'gravity' + to FFT output, as the audio signal will remain in the buffer + longer. + + This value has a _massive_ effect on FFT performance and + quality for some modules. */ +#request setbufsize 4096 + +/* PulseAudio sample rate. Lower values can add 'gravity' to + FFT output, but can also reduce accuracy. Most hardware + samples at 44100Hz. + + Lower sample rates also can make output more choppy, when + not using interpolation. It's generally OK to leave this + value unless you have a strange PulseAudio configuration. + + This option does nothing when using the "fifo" audio + backend. Instead, an ideal rate should be be configured + in the application generating the output. */ +#request setsamplerate 22050 + +/* ** DEPRECATED ** + Force window geometry (locking the window in place), useful + for some pesky WMs that try to reposition the window when + embedding in the desktop. + + This routinely sends X11 events and should be avoided. */ +#request setforcegeometry false + +/* ** DEPRECATED ** + Force window to be raised (focused in some WMs), useful for + WMs that have their own stacking order for desktop windows. + + This routinely sends X11 events and should be avoided. */ +#request setforceraised false + +/* ** DEPRECATED ** + Scale down the audio buffer before any operations are + performed on the data. Higher values are faster. + + This value can affect the output of various transformations, + since it applies (crude) averaging to the data when shrinking + the buffer. It is reccommended to use `setsamplerate` and + `setsamplesize` to improve performance or accuracy instead. */ +#request setbufscale 1 diff --git a/.config/glava/smooth_parameters.glsl b/.config/glava/smooth_parameters.glsl new file mode 100755 index 0000000..bfea307 --- /dev/null +++ b/.config/glava/smooth_parameters.glsl @@ -0,0 +1,78 @@ + +/* Settings for smoothing functions and transformations commonly + used to display FFT output. + + IMPORTANT: THESE VALUES CAN BE OVERRIDDEN IN MODULE CONFIG + FILES, IF CHANGING VALUES HERE DOES NOT WORK, CHECK + TO MAKE SURE THEY ARE NOT BEING SET ELSEWHERE. +*/ + +/* The type of formula to use for weighting values when smoothing. + Possible values: + + - circular heavily rounded points + - sinusoidal rounded at both low and high weighted values + like a sine wave + - linear not rounded at all; linear distance + */ +#define ROUND_FORMULA sinusoidal + +/* The sampling mode for processing raw FFT input: + + - average averages all the inputs in the sample range for + a given point. Produces smooth output, but peaks + are not well represented + - maximum obtains the best value from the closest peak in + the sample range. Very accurate peaks, but + output is jagged and sporadic. + - hybrid uses the results from both `average` and `maximum` + with the weight provided in `SAMPLE_HYBRID_WEIGHT` */ +#define SAMPLE_MODE average +/* Weight should be provided in the range (0, 1). Higher values favour + averaged results. `hybrid` mode only. */ +#define SAMPLE_HYBRID_WEIGHT 0.65 + +/* Factor used to scale frequencies. Lower values allows lower + frequencies to occupy more space. */ +#define SAMPLE_SCALE 8 + +/* The frequency range to sample. 1.0 would be the entire FFT output, + and lower values reduce the displayed frequencies in a log-like + scale. */ +#define SAMPLE_RANGE 0.9 + +/* Factor for how to scale higher frequencies. Used in a linear equation + which is multiplied by the result of the fft transformation. */ +#request setfftscale 10.2 + +/* Cutoff for the bass end of the audio data when scaling frequencies. + Higher values cause more of the bass frequencies to be skipped when + scaling. */ +#request setfftcutoff 0.3 + +/* How many frames to queue and run through the average function. + Increasing this value will create latency between the audio and the + animation, but will make for much smoother results. */ +#request setavgframes 6 + +/* Whether to window frames ran through the average function (new & old + frames are weighted less). This massively helps smoothing out + spontaneous values in the animation. */ +#request setavgwindow true + +/* Gravity step, higher values means faster drops. The step is applied + in a rate independant method like so: + + val -= (gravitystep) * (seconds per update) */ +#request setgravitystep 4.2 + +/* Smoothing factor. Larger values mean more smoothing in the output, + however high values can be expensive to compute. Values are in + normalized width: [0.0, 1.0) */ +#request setsmoothfactor 0.025 + +/* Whether to use a separate pass for audio data while smoothing. On + most hardware, this will improve performance, but involves doing a + separate render step for each audio texture and will add some driver + (CPU) overhead. */ +#request setsmoothpass true diff --git a/.config/glava/util b/.config/glava/util new file mode 120000 index 0000000..3cbab73 --- /dev/null +++ b/.config/glava/util @@ -0,0 +1 @@ +/etc/xdg/glava//util \ No newline at end of file diff --git a/.config/glava/wave b/.config/glava/wave new file mode 120000 index 0000000..3cba0de --- /dev/null +++ b/.config/glava/wave @@ -0,0 +1 @@ +/etc/xdg/glava//wave \ No newline at end of file diff --git a/.config/glava/wave.glsl b/.config/glava/wave.glsl new file mode 100755 index 0000000..6a59fbe --- /dev/null +++ b/.config/glava/wave.glsl @@ -0,0 +1,14 @@ +/* min (vertical) line thickness */ +#define MIN_THICKNESS 1 + +/* max (vertical) line thickness */ +#define MAX_THICKNESS 6 + +/* base color to use, distance from center will multiply the RGB components */ +#define BASE_COLOR vec4(0.7, 0.2, 0.45, 1) + +/* amplitude */ +#define AMPLIFY 500 + +/* outline color */ +#define OUTLINE vec4(0.15, 0.15, 0.15, 1) diff --git a/.zshrc b/.zshrc index 14e2e8d..51aab6b 100644 --- a/.zshrc +++ b/.zshrc @@ -31,3 +31,4 @@ alias caveau="cryfs /data/Caveau ~/Vaults/Caveau && dolphin ~/Vaults/Caveau" alias rm="rm -I" alias panpdf="~/Scripts/panpdf.sh" alias netrend="~/Scripts/netsend.sh" +alias d="devour" \ No newline at end of file diff --git a/README.md b/README.md index fc703f0..82c7289 100644 --- a/README.md +++ b/README.md @@ -2,87 +2,15 @@ ## My fancy bspwm rice -![Screenshot from my r/unixporn post](repopics/screenshot_new.png) +![Screenshot from my r/unixporn post](repopics/screenshot.png) -## Basic requirements +## Color palette -- **bspwm** as your tiling window manager with **sxhkd** as the keybindings daemon and **picom-jonaburg-fix** as the compositor; -- **Polybar** for the status bar (and **Python** with **python-dbus** for the media player and mail modules and **polybar-pulseaudio-control** for the volume module); -- **zsh**, **powerlevel10k** for the fancy shell prompt, **pfetch** if you want the ascii logo thing and **pywal** for the custom terminal colors; -- **Dunst** as the notification daemon; -- **betterlockscreen** as the lockscreen; -- **stalonetray** for the system tray. +![Color palette](repopics/palette.png) -Extra stuff might be required for my Polybar scripts. Continue reading, don't be lazy. - -# WARNING: this new bspwm-based rice is still an experimental work-in-progress, so this README is not completely up to date and things might not work properly. - -## How to install - -After installing the dependencies, place the stuff like you see it in your home directory. Change the settings of your Plasma desktop, of your shell or terminal emulator, make Polybar launch at startup and you should be good to go. If you want pfetch to run when you open a terminal, append the line `pfetch` at the bottom of your `.zshrc` file. By the way I have now my own `.zshrc` where I have some aliases at the bottom of the file. To activate the powerlevel10k theme make sure you have this line `source ~/.p10k.zsh` in your `.zshrc` file. I've also made a custom color scheme with pywal. - -## Explaining some things - -### Polybar - -`.config/polybar` contains stuff from [adi1090x's Polybar Themes repo](https://github.com/adi1090x/polybar-themes) with the addition of a custom folder called `gmg` which is a modified version of the `material` theme present in the same base directory. To launch Polybar with my theme, just run the `launch.sh` script with the flag `--gmg`. You might want to make a thing at login that automatically runs the command for you. Also a lot of the stuff in this custom theme has italian text so, unless you like pasta a lot, you might wanna change that. For this the fonts [Roboto](https://fonts.google.com/specimen/Roboto), [Roboto Mono](https://fonts.google.com/specimen/Roboto+Mono) and [Material Design Iconic Font](https://zavoloklom.github.io/material-design-iconic-font/) are required for the theme to work properly, but you can always set your own in the `config.ini` file. For the date module to work correctly in your system language, assuming it isn't italian, you have to change the line `locale = it_IT.UTF-8` in the `config.ini` file. - -I've got a few very simple stupid Polybar modules that I've made myself for my workflow. You can see what each of them do at `gmg/user_modules.ini`. - -![The custom modules](repopics/pbicons.png) - -The **bell** icon runs `xdotool` to press a key combination associated with **opening and closing Plasma's notification center**, so you might want to adjust that to your setup. Same thing goes for the **down pointing chevron** which **opens and closes Plasma's tray icons**. - -There is an **update counter** module that when you **left-click** on it, it will snapshot your system with Timeshift and run `sudo pacman -Syu --no-confirm`, when you **right-click** instead, it will open a window with the list of updates available (requires KDialog). - -The **padlock** icon is supposed to **unlock my Plasma vault folder**, so change it if you want, otherwise get rid of it. - -I also added this `xdotool` functionality to the music and date modules. - -![The calendar widget opened by the date module](repopics/calendar.png) - -In `gmg/modules.ini` there are a few changes I've done to the network module: some lines are commented for **Wi-Fi stuff**, I suggest you touch those parameters if you're on a laptop or something. Here's an example. - -![A commented line for Wi-Fi](repopics/comment.png) - -Here's a trick: if you changed some configs and you want to quickly restart Polybar, do a **double right-click** anywhere on the bar. - -Again, since this originates from [adi1090x's Polybar Themes repo](https://github.com/adi1090x/polybar-themes) there's some extra stuff that I don't use such as **rofi menus** and some **extra icon modules** that you might be interested in. - -The **media player Python module** was created by d093w1z, I only changed some icons and a few options here and there. [Check the source code here](https://github.com/d093w1z/polybar-now-playing). - -The **mail Python module** was created by quelotic, I only changed the mail icon and put the config file in a private directory, so you gotta change it from `~/Scripts/mail.py` to wherever yours is located. It's also set up to launch KMail when clicked, so you might want to change it to your mail client or web mail interface of choice. [Check the source code here](https://github.com/quelotic/polybarModules). - -The **volume module** was created by marioortizmanero, I did some changes for the icons, the output and some actions. For example where it says `(Cuffie)` it is the nickname given to the output corresponding to my 3.5 mm headphone jack, so instead of saying the actual name of the audio interface it just says "(Headphones)"; same goes for where it says `(HDMI)` which refers to my GPU's audio out. You gotta change those values for them to correspond to your audio devices. [Check the source code here](https://github.com/marioortizmanero/polybar-pulseaudio-control). - -### The Nightmare Magma color scheme - -This is **my own custom color scheme** based on Breeze Dark, designed to be the opposite of my other color scheme called [Dream Plasma](https://github.com/gianmarcogg03/dreamplasmacs): **red and dark AF!!!** - -![The color palette](repopics/palette.png) - -This up here is the color palette, with the main color being **Signature Red** (#EB4034), the same kinda pinkish shade of red I've been using for my own branding. The shades of black have kind of a **warm hue** to them, especially the darker one, adding to the already warm shades of red. These colors are also used in the Polybar config. - -I have also generated a color scheme for the terminal with pywal which matches most of the colors in the color scheme. - -### The Nightmare Magma icon pack - -This is just a slightly modified version of the Breeze Dark icons from KDE, the only difference is that all folder icons, including the Dolphin icon, are now... Take a guess... Red! - -![Some modified icons](repopics/redfolder.png) - -## Extras - -### Firefox theme - -[Click here](https://color.firefox.com/?theme=XQAAAAIPAQAAAAAAAABBKYhm849SCia2CaaEGccwS-xMDPsFGGnDOMsy5fmNc5H9T6A5EPZzdnNfysK48XHik8HvuaKF13MCiND3dBGUZ_STLo-XmnOhHIfnLyp8_eBbkOolOHG2TwlE2YixhYhI_m2ATofiWwQYIbJrDskua121qVyA-oX0XjW93jF3-AKGmdSHkYGzD3iTzF1BmAT8sxLNA-k8IXx__7dU0AA). - -### Window tiling in Plasma - -In the screenshots at the top you can see that my windows are tiling like in a tiling window manager, but I'm not using a tiling window manager (I'm lazy). What I'm actually doing is using KDE's standard compositor **KWin** with a **tiling script** called Krohnkite, but since it hasn't been updated in ages, I suggest you install a fork called [**Bismuth**](https://github.com/gikari/bismuth). - -### Rounded window corners and outline - -For this you have to install the [Lightly Shaders](https://github.com/Luwx/LightlyShaders) and enable it in the KDE System Settings. - -**This won't work if you're using Plasma 5.23! You can try [this fork](https://github.com/a-parhom/LightlyShaders) by a-parhom.** \ No newline at end of file +1. EB4034 +2. EA8F89 +3. E5E5E5 +4. BDC3C7 +5. 2A2C2B +6. 525252 \ No newline at end of file diff --git a/Scripts/volume.sh b/Scripts/volume.sh index b7a394a..7e1edf0 100755 --- a/Scripts/volume.sh +++ b/Scripts/volume.sh @@ -19,7 +19,7 @@ function send_notification { # https://en.wikipedia.org/wiki/Box-drawing_character bar=$(seq -s "─" $(($volume / 5)) | sed 's/[0-9]//g') # Send the notification - if [[ $(dunstctl is-paused) == "false" ]]; then dunstify -i audio-on -r 2593 -u low "$volume $bar" -a Volume & play '~/Sounds/changevol.wav'; fi + if [[ $(dunstctl is-paused) == "false" ]]; then dunstify -i audio-on -r 2593 -u low "$volume $bar" -a Volume; fi } case $1 in diff --git a/repopics/calendar.png b/repopics/calendar.png deleted file mode 100644 index 07a8d29..0000000 Binary files a/repopics/calendar.png and /dev/null differ diff --git a/repopics/comment.png b/repopics/comment.png deleted file mode 100644 index d359767..0000000 Binary files a/repopics/comment.png and /dev/null differ diff --git a/repopics/logo.png b/repopics/logo.png new file mode 100644 index 0000000..6a626be Binary files /dev/null and b/repopics/logo.png differ diff --git a/repopics/pbicons.png b/repopics/pbicons.png deleted file mode 100644 index eafc8d7..0000000 Binary files a/repopics/pbicons.png and /dev/null differ diff --git a/repopics/redfolder.png b/repopics/redfolder.png deleted file mode 100644 index fed60c2..0000000 Binary files a/repopics/redfolder.png and /dev/null differ diff --git a/repopics/screenshot.png b/repopics/screenshot.png old mode 100755 new mode 100644 index cd02236..5766ce9 Binary files a/repopics/screenshot.png and b/repopics/screenshot.png differ diff --git a/repopics/screenshot_new.png b/repopics/screenshot_new.png deleted file mode 100644 index 9944843..0000000 Binary files a/repopics/screenshot_new.png and /dev/null differ