beyond9thousand / dotfiles

Opinionated BSPWM setup
247 stars 11 forks source link

Need some help #1

Closed xd003 closed 2 years ago

xd003 commented 2 years ago

Hello , i saw your post over a /r/unixporn , really great work on this rice , especially the polybar setup is just next level . i am not really familiar with WM's or ricing at all but being using bspwm myself on Axyl OS , i thought it would most probably work out of the box but something seems to be missing sadly . What i simply did was just replaced the polybar folder on Axyl OS in .config/bspwm/polybar with yours from this repo & installed stalonetray but the icons placement in polybar is looking quite out of place

i am attaching the screenshot here , would really appreciate if you can help me fix my polybar to look like yours Screenshot_2022-07-28-11-22-31_1366x768

beyond9thousand commented 2 years ago

There's a ton of things going on here, so you'll need to break them down one by one. For starters, you need the right fonts installed on your system to be able to display the icons correctly.

Secondly, I have a few 'custom' ipc modules that use custom binaries that I've written. poly-pac is one such binary

You will find it listed inside the modules.ini file. What you can do for now though, is exclude pacman custom ipc module from the config.ini file in this section shown here image

xd003 commented 2 years ago

@beyond9thousand

Removing pacman from config.ini fixed the poly-pac not found error but the icons spacing & everything is still like in the screenshot i have sent , any clue how do i fix that ?

JetbrainsMono Nerd was already installed so i installed Roboto & Font awesome 6 ( i don't have pro )

beyond9thousand commented 2 years ago

but the icons spacing & everything is still like in the screenshot i have sent , any clue how do i fix that ?

Substitute with other icons from existing fonts or install a patched font that has similar icon packs

xd003 commented 2 years ago

Substitute with other icons from existing fonts or install a patched font that has similar icon packs

Thanks , the included font also works well , icons sorted now . But i am facing a weird issue for some reason , the thing is dmenu , NetworkManager , power menu , win-shot ( Basically of all the stuffs in ~/.local/bin & ~/.bin ) doesn't work with sxkhd keybindings. If i normally run them in terminal , it works perfectly . The directory is present in path too , just dunno why sxkhd is unable to call any script from these 2 directories while i can call them from terminally manually

beyond9thousand commented 2 years ago

You need to make the scripts executable

xd003 commented 2 years ago

You need to make the scripts executable

The scripts were already executable as "which" listed them , after some digging it turns out adding path in .zshrc doesn't work for display managers, i needed to add it in .profile. Everything seems fine now except the system tray

The system tray is appearing bit wieirdly . Firstly the arrow icon doesn't seem to do anything , secondly aren't system tray icons supposed to be horizontally displayed like here in readme

beyond9thousand commented 2 years ago

I am not using the power module in my current setup. The module is still correctly defined in modules.ini image

You can still use it by listing power in the config.ini file in this section image

I have a drop down system tray at the moment in order to alleviate the problem of the tray pushing everything aside as it grows. Go through this reddit post to understand the necessary binaries / scripts being used.

Alternatively, if still you wish to have the systray in your polybar itself, just uncomment the following line and remove systray from the list of modules listed in config.ini image

xd003 commented 2 years ago

Thanks man for explaining everything properly , appreciated Just one last thing , i have noticed that the power menu always shows up like this for me IMG_20220730_165511

beyond9thousand commented 2 years ago

You do not have the correct/necessary .rasi files needed. Go through the binary being executed and check which config the scripts are calling. For example, super + x key should be calling the binary named key-power which makes a call to keypower.rasi through rofi.

Try to take a thorough look through the different .rasi files listed here at your own comfort. You can customize the way you want it to be displayed.

Another possibility could be that you're running at a different resolution. For reference, my setup is configured to display at 1920x1080.

If the latter is the case, you will need to modify config.rasi and respective .rasi files as needed in order for items to fit and be displayed correctly on your system.

xd003 commented 2 years ago

Ah i think its due to the resolution as i do have the whole rofi folder of yours as it is in ~/.config/rofi . My resolution is 1366 x 768 . Just guessing if its possible to make it scale dynamically ?

beyond9thousand commented 2 years ago

I am afraid you will need to manually reduce the font size in your config files so that the items are displayed correctly.

xd003 commented 2 years ago

I edited & reduced the font size from here - https://github.com/beyond9thousand/dotfiles/blob/5da4d2839d2fe9b4e22944b8070499dc16a9fef6/.config/rofi/config.rasi#L4

But didn't seem to help

beyond9thousand commented 2 years ago

the line you need to edit for your specific case is https://github.com/beyond9thousand/dotfiles/blob/5da4d2839d2fe9b4e22944b8070499dc16a9fef6/.config/rofi/config.rasi#L95

xd003 commented 2 years ago

Thanks , tried that . It kind of fixed it partially like the text becomes somewhat visible but still it doesn't really look natural/normal . Also is the network menu really supposed to be this long ?

Picsart_22-07-30_18-03-12-885

I wonder how distros like archcraft & axyl scale it properly . Maybe you can have a look here if it helps - https://github.com/archcraft-os/archcraft-bspwm/tree/main/files/rofi/themes

beyond9thousand commented 2 years ago

Their devs have separate configs for different resolutions (in the case of archcraft, 2 resolutions). There is no automatic method of scaling it dynamically according to your resolution.

You can restrict the allowed height for the wifi menu to limit the number of SSIDs displayed at a glance using the height: value in the respective .rasi file

As for the wifi menu getting cramped horizontally, once again, you will need to play around with the .rasi files relevant to the wifi-menu. It will be unrealistic of me to try and hold your hand through such specific nooks and corners of configuring your rofi menu to look right :(

xd003 commented 2 years ago

Gotcha , will definitely get along on that myself refering to values from archcraft . Just on a ending note , i had 2 things to ask 1) How do i control/reduce the gap above polybar ( i mean the space at the very top of screen above polybar )

2) For the title module here , is it possible to only display the name of the focused not & not title of tab in browsers or name of file when editing through text editor . It gets really unnecessarily long . i think just name of app should be ideal , maybe you should change it in github also , just a suggestion

[module/title]
type=internal/xwindow

; Available tags:
;   <label> (default)
format=<label>
format-padding=0
format-font=9

; Available tokens:
;   %title%
; Default: %title%
label-maxlen=75
; label="%{A1:bspc node -c:}%title%%{A}"

; Used instead of label when there is no window title
; Available tokens:
;   None
label-empty=Empty
label-empty-foreground=#707880
beyond9thousand commented 2 years ago

I hope you realise that the repo is a backup of my dotfiles so they're going to reflect how I use them... and this is how I prefer to use the xwindow module in my polybar setup.

Besides that, you can read more about polybar on their github repo. You will also find details regarding what you can or can not do using native polybar modules over there (modules included by default)

For even further customization, you may need to create custom ipc modules for yourself (for example, the notification bell)

xd003 commented 2 years ago

Thanks , their wiki seems to be pretty damm good , didn't knew about it . Gonna close this now :) . Sorry for extending the issue

Edit - https://github.com/MateoNitro550/xxxwindowPolybarModule Can use this to fix the long title it seems , nice my setup is completed now :)

On another note , these seemed like typo to me . Apologize if it isn't , not really familiar with this yet

https://github.com/beyond9thousand/dotfiles/blob/8e193534b1df15c407d7f8927a8bb0d07a4fcbf2/.config/sxhkd/sxhkdrc#L82 https://github.com/beyond9thousand/dotfiles/blob/8e193534b1df15c407d7f8927a8bb0d07a4fcbf2/.config/bspwm/rules/bspc-rules.sh#L8

beyond9thousand commented 2 years ago

they aren't typos xD

former is a bspwm specific command, latter is used to allocate multiple variables before passing it to a loop condition

xd003 commented 2 years ago

Oh i got confused because bspc node -c is present twice & terminalhas discord where i have generally seen terminals being mentioned . Again i know this is personalised dotfile & could be anything , told just in case as i haven't noticed it being like this generally

beyond9thousand commented 2 years ago

Since it seems like you're pretty new to Linux in general as well, it might be handy to run man [command name] whenever you're unsure what a term means (ie if it's a command, and if yes, what it does etc and so on).

tldr is also a good package to quickly get accustomed to common usage scenarios of various mainstream commands.

xd003 commented 2 years ago

@beyond9thousand I keep forgetting to ask about this one thing , rest everything being perfect . For some reason the screensaver which gets activated after clicking on Brightness icon doesn't work well for me . When i click on it , it does say turning off screen in x seconds and goes off after that but immediately turns back on without any input ( touchpad or keyboard ) . Isn't it supposed to remain locked until user interaction is detected ?

Edit - Nvm got it fixed after checking some logs & files , seems installing xprintidle has solved it

beyond9thousand commented 2 years ago

Yeah, thanks for this. I'll probably make a write-up of all the unique packages that I'm using in my setup once everything is more or less stable

xd003 commented 2 years ago

i also think it would be a good idea to mention files in readme which need edits for adjusting the resolution , i just noticed that the screen that shows up after system is locked ( where we enter the pass for unlocking ) also has weird resolution for me . Any idea which file is the one which handles this ?

beyond9thousand commented 2 years ago

yeah you'll need to edit b9k-lock

about mentioning this, I will just need to add a disclaimer that my configuration is setup for 1920x1080 res. jotting out what files need to be changed etc is a massive task and a little pointless in my opinion. but thanks for pointing this out nevertheless

xd003 commented 2 years ago

i saw your required dependencies list in readme , maybe you might want to add xss-lock since its present here - https://github.com/beyond9thousand/dotfiles/blob/f2ccd0df61ff6d95d881848077b82f43d3a7221a/.config/bspwm/hooks/b9k-lock-sleep.sh#L3

Apart from that , you can also include these packages for completeness ttf-roboto nerd-fonts-jetbrains-mono ttf-icomoon-feather xbanish pavucontrol nitrogen flameshot xsetroot exa bat copyq-git maim . I can't think of anything else missing

beyond9thousand commented 2 years ago

Thanks for the pointer! I'll make the changes

xd003 commented 2 years ago

i noticed that you are working on eww , are you planning to replace polybar & menus with eww ? i have heard about it few times like its mainly used for widgets but people use it for panels and menus as well .

beyond9thousand commented 2 years ago

Only the polybar for now. It's worth it if you don't mind spending some time learning how the eww config language (yuck) and scss work. Your mileage may vary. Personally, I have found it very rewarding

xd003 commented 2 years ago

hello , i finally got around trying eww from your config on pure arch base , was using axyl in past . I faced quite a lot of glitches & issues with like top panel width exceeding my screen width making items cut off from both sides , some odd flickering , very slow startup compared to polybar , bar items responding weirdly to swipes so i dropped it and went back to polybar as it looks lot easier to me at this stage & has everything i need .

Just one small request , i really liked the newer workspace status icons/indicators that you have used with eww , looks lot more cleaner overall . i would really appreciate if you could tell me how could i achieve the exact same on polybar

xd003 commented 2 years ago

i changed it now , it seems to be working well . But just in case can you confirm that i don't need to change anything else - https://github.com/xd003/dotfiles/commit/f56c5bf0290dcc62de724184bd18f3850f461cff

beyond9thousand commented 2 years ago

hello , i finally got around trying eww from your config on pure arch base , was using axyl in past . I faced quite a lot of glitches & issues with like top panel width exceeding my screen width making items cut off from both sides , some odd flickering , very slow startup compared to polybar , bar items responding weirdly to swipes so i dropped it and went back to polybar as it looks lot easier to me at this stage & has everything i need .

Just one small request , i really liked the newer workspace status icons/indicators that you have used with eww , looks lot more cleaner overall . i would really appreciate if you could tell me how could i achieve the exact same on polybar

There are several scripts that are launched in conjunction with it, and i also do not know how you're launching eww. in my setup, autostart apps are loaded with a time interval between them. so the delayed startup is intended in my case