You are not logged in.

#1 2018-02-06 15:15:44

Head_on_a_Stick
Member
From: London
Registered: 2015-09-29
Posts: 8,759
Website

Alternative bspwm desktop for BunsenLabs?

Although openbox is well established as the default BunsenLabs desktop, I would like to add a second option for the tiling window manager bspwm.

I've been tinkering with it since Hydrogen was released, here is my old guide:

https://forums.bunsenlabs.org/viewtopic.php?id=567

The window manager itself behaves very nicely in conjunction with tint2 and conky and it also works unusually well with a mouse (for a tiler) — for example, shift+left-click&drag will swap the window tiles and shift+right-click&drag allows the window tiles to be resized as desired.

Another interesting feature of bspwm is the ability to configure the window manager on-the-fly with the `bspc` command, this can be scripted and so is enormously flexible: tint2 executor buttons to change the configuration & layout are a distinct possibility glasses

It is also very small, the three packages we need for this option (bspwm, sxhkd & xdo) total 441 KiB[1] (amd64), plus the few KiB of configuration files.

I've worked up some sample configuration files that attempt to mimic BunsenLabs' openbox environment as much as possible:

https://github.com/BunsenLabs/bunsen-co … -dev_bspwm

The only real problem with this option at the moment is that the "Log Out" choice in bl-exit won't work although there is a specific keybind (super+shift+q) to logout.

The only extra files needed in /usr/share/bunsen/skel/.config are bspwm/bspwmrc (the autostart & configuration file) & sxhkd/sxhkdrc (for the keybindings).

The Debian stretch bspwm package already supplies a .desktop file so there will be a "bspwm" option in LightDM and that will start our desktop.

To test my configurations, utter the following incantation:

sudo apt install bspwm sxhkd xdo
git clone https://github.com/head-on-a-stick/bunsen-configs
cd bunsen-configs
git checkout helium-dev_bspwm
cp -r skel/.config/{bspwm,sxhkd,jgmenu} ~/.config
cd .. && rm -r bunsen-configs

Then log out and pick "bspwm" in the session selector (spanner icon at the top-right) before logging in again.

Once logged in, use <Alt>+F3 (for dmenu) or <Alt>+F2 (for gmrun) to bring up a run dialog; there is no menu (at the moment).

Is there any interest in this proposition at all?

[1] xcb libraries not included, ~1,090 KiB all-in.

Last edited by Head_on_a_Stick (2018-02-11 16:55:05)


“Et ignotas animum dimittit in artes.” — Ovid, Metamorphoses, VIII., 18.

Forum Rules   •   How to report a problem   •   Software that rocks

Offline

#2 2018-02-06 21:07:03

malm
jgmenu developer
Registered: 2016-10-13
Posts: 587
Website

Re: Alternative bspwm desktop for BunsenLabs?

Might I tempt you with an almost authentic bunsenlabs menu to go with it?

sudo apt install jgmenu

cat >~/.config/jgmenu/jgmenurc <<EOF
tint2_look          = 0
at_pointer          = 0
csv_cmd             = ob
menu_width          = 120
menu_padding_top    = 0
menu_padding_right  = 0
menu_padding_bottom = 0
menu_padding_left   = 0
menu_radius         = 1
sub_spacing         = 3
item_margin_x       = 1
item_margin_y       = 1
item_height         = 19
sep_height          = 4
icon_size           = 0
arrow_width         = 8
color_menu_bg       = #3a3a3a 100
EOF

EDIT: It's better to use at_pointer = 0 with a tint2 launcher.

Last edited by malm (2018-02-06 21:50:31)

Online

#3 2018-02-06 21:21:24

Head_on_a_Stick
Member
From: London
Registered: 2015-09-29
Posts: 8,759
Website

Re: Alternative bspwm desktop for BunsenLabs?

malm wrote:

Might I tempt you

Thank you!

2018-02-06-211833_1280x768_scrot.th.png

Added this line to the launchers section in tint2rc:

launcher_item_app = /usr/share/applications/jgmenu.desktop

We now have a Start Menu cool


“Et ignotas animum dimittit in artes.” — Ovid, Metamorphoses, VIII., 18.

Forum Rules   •   How to report a problem   •   Software that rocks

Offline

#4 2018-02-07 02:38:18

johnraff
nullglob
From: Nagoya, Japan
Registered: 2015-09-09
Posts: 6,538
Website

Re: Alternative bspwm desktop for BunsenLabs?

This is for Lithium, right?


...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), idle Twitterings and GitStuff )

Introduction to the Bunsenlabs Lithium Desktop

Offline

#5 2018-02-07 07:37:25

Head_on_a_Stick
Member
From: London
Registered: 2015-09-29
Posts: 8,759
Website

Re: Alternative bspwm desktop for BunsenLabs?

^ Sure, whenever smile

It's just a suggestion, feel free to ignore it.

I was just playing around with the configurations and I thought it best to commit them somewhere before I forget, that's all.

EDIT: if you do want an experimental alternative desktop for Helium then this is pretty much good to go.

Last edited by Head_on_a_Stick (2018-02-07 08:08:14)


“Et ignotas animum dimittit in artes.” — Ovid, Metamorphoses, VIII., 18.

Forum Rules   •   How to report a problem   •   Software that rocks

Offline

#6 2018-02-07 08:41:42

johnraff
nullglob
From: Nagoya, Japan
Registered: 2015-09-09
Posts: 6,538
Website

Re: Alternative bspwm desktop for BunsenLabs?

Helium... please! No more sudden bright ideas!! We're already six months late!

You do understand that replacing Openbox means a radical rearrangement of the whole desktop? All the functionality provided via pipemenus would have to be done some other way. I'm not opposing the idea per se at all, but really don't feel like baking in something like this for Helium at this late stage.

Feel free to post a HOWTO of course - I'm sure some of our members would love to try something like this, and their experiences would make a good base for building a future BunsenLabs setup. cool

When Wayland takes over we'll probably have to drop Openbox anyway, of course...

Excuse the strong language, but I really think something like this should be proposed at the beginning of a development cycle, not when we're under this strong pressure to get a BL for Debian Stretch out of the garage.

Last edited by johnraff (2018-02-07 08:51:33)


...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), idle Twitterings and GitStuff )

Introduction to the Bunsenlabs Lithium Desktop

Offline

#7 2018-02-07 09:42:31

Head_on_a_Stick
Member
From: London
Registered: 2015-09-29
Posts: 8,759
Website

Re: Alternative bspwm desktop for BunsenLabs?

johnraff wrote:

replacing Openbox

yikes

Dear me, no, that is not what I was suggesting at all.

I intended this to be offered as an alternative second desktop, it is not at all suited to newcomers.

(sent from my phone, sorry)


“Et ignotas animum dimittit in artes.” — Ovid, Metamorphoses, VIII., 18.

Forum Rules   •   How to report a problem   •   Software that rocks

Offline

#8 2018-02-07 10:08:35

dolly
Miss Mixunderstand
From: /lab1
Registered: 2015-10-03
Posts: 398

Re: Alternative bspwm desktop for BunsenLabs?

johnraff wrote:

When Wayland takes over we'll probably have to drop Openbox anyway, of course...

That is why I live my Linux life in constant denial. yikes


Keep BunsenLabs #!yish please.

Offline

#9 2018-02-07 13:29:06

qcgxr
Member
Registered: 2016-08-31
Posts: 28

Re: Alternative bspwm desktop for BunsenLabs?

When Wayland takes over we'll probably have to drop Openbox anyway, of course...

sway is supposed to be a drop-in Wayland replacement for i3, so that would be a potential horizon... Not sure how bspwm compares but i3 is a delight. Either way, certainly would be neat to see a tiling dm get even second class status. I don't know, offhand, of any Debian-based distros that do so.

Offline

#10 2018-02-07 16:19:37

PackRat
jgmenu user Numero Uno
Registered: 2015-10-02
Posts: 1,179

Re: Alternative bspwm desktop for BunsenLabs?

The window manager itself behaves very nicely in conjunction with tint2 and conky

Works better with polybar (post #5 feb screenshot thread) - has polybar made it's way to the Debian repos yet?

And that jgmenu can be configured as a polybar module.

but I tend to agree with this -

Feel free to post a HOWTO of course - I'm sure some of our members would love to try something like this, and their experiences would make a good base for building a future BunsenLabs setup.

Stick with one wm, and howto's for the others.

Last edited by PackRat (2018-02-07 16:25:27)


You must unlearn what you have learned.
    -- yoda

Offline

#11 2018-02-07 19:06:00

nore
>2⁹
From: squirrels' nest
Registered: 2015-09-29
Posts: 496

Re: Alternative bspwm desktop for BunsenLabs?

PackRat wrote:

Stick with one wm, and howto's for the others.

^This.

Offline

#12 2018-02-07 20:11:18

titan
Member
Registered: 2015-10-02
Posts: 60

Re: Alternative bspwm desktop for BunsenLabs?

Glenn wrote:

Tilers are undoubtedly geek-cool and may even be useful in an IT environment but are not in any way conducive to a productive work station for the remaining 99.99% of us.


Absolute nonsense, with a common wide screen monitor far better than floating "windows" as is dmenu with nested menus a throwback from the early days of computing. I am no geek and have been using i3 for years on my main workstation. If I use Openbox or LXQT they just seem so dated and cluttered. This is just my opinion of course :<)

Offline

#13 2018-02-08 01:13:34

cloverskull
Member
Registered: 2015-10-01
Posts: 307

Re: Alternative bspwm desktop for BunsenLabs?

@HOAS - this is orthagonal to the discussion on whether or not to bundle any of this, but I just wanted to say I can't wait to try it out myself. I've been looking for a excuse reason to learn bspwm for a while now. Do keybinds interfere with anything else?

Offline

#14 2018-02-08 04:05:56

nore
>2⁹
From: squirrels' nest
Registered: 2015-09-29
Posts: 496

Re: Alternative bspwm desktop for BunsenLabs?

cloverskull wrote:

I've been looking for a reason to learn bspwm for a while now.

Count me in. HOAS, your effort in educating us is greatly appreciated.

So far the strength of BL (and CB before it) has been that a freshly installed system is simple yet functional, while the community courages for experimenting beyond default settings. Having two window managers out of the box might raise a flood of support questions in the forums. Those who follow a howto are better prepared for banging their own head on the wall first.

Offline

#15 2018-02-08 08:12:32

Head_on_a_Stick
Member
From: London
Registered: 2015-09-29
Posts: 8,759
Website

Re: Alternative bspwm desktop for BunsenLabs?

johnraff wrote:

replacing Openbox

Well, as I intimated above, what I am proposing is an additional desktop option rather than a replacent, the packages only add ~1MiB so they're quite good value smile

johnraff wrote:

All the functionality provided via pipemenus would have to be done some other way.

jgmenu seems to work:

2018-02-07-192727_1280x768_scrot.th.png

johnraff wrote:

Feel free to post a HOWTO

The OP also constitutes a HowTo, I will keep the fork synchronised with the upstream repository.

PackRat wrote:

has polybar made it's way to the Debian repos yet?

No: https://packages.debian.org/search?keyw … ection=all

Glenn wrote:

Why, after all the work done, add yet more stress to an already stretched 'small' team of developers?

This work constitutes my own personal project and I expect no assistance, furthermore this developer will continue to work on this project irrespective of it's adoption status within BunsenLabs; any support threads that arise from a bspwm-based desktop would be answered by me anyway (probably).


“Et ignotas animum dimittit in artes.” — Ovid, Metamorphoses, VIII., 18.

Forum Rules   •   How to report a problem   •   Software that rocks

Offline

#16 2018-02-08 08:17:04

Head_on_a_Stick
Member
From: London
Registered: 2015-09-29
Posts: 8,759
Website

Re: Alternative bspwm desktop for BunsenLabs?

cloverskull wrote:

I can't wait to try it out myself. I've been looking for a excuse reason to learn bspwm for a while now.

You can try it out now in BunsenLabs Helium-dev by running the commands in the OP, here they are again:

sudo apt install bspwm sxhkd xdo
git clone https://github.com/head-on-a-stick/bunsen-configs
cd bunsen-configs
git checkout helium-dev_bspwm
cp -r skel/.config/{bspwm,sxhkd} ~/.config
cd .. && rm -r bunsen-configs

Then log out and choose "bspwm" as the session wink

Do keybinds interfere with anything else?

I've used the stock BunsenLabs keybinds, the only issue is that the "log out" option in bl-exit doesn't wok so use super+shift+q instead.


“Et ignotas animum dimittit in artes.” — Ovid, Metamorphoses, VIII., 18.

Forum Rules   •   How to report a problem   •   Software that rocks

Offline

#17 2018-02-08 12:51:29

PackRat
jgmenu user Numero Uno
Registered: 2015-10-02
Posts: 1,179

Re: Alternative bspwm desktop for BunsenLabs?

The OP also constitutes a HowTo,

I've used the stock BunsenLabs keybinds, the only issue is that the "log out" option in bl-exit doesn't wok so use super+shift+q instead.

In the spirit of these comments, can the bl-exit script be modified so that:

bspc quit

substituted for "openbox --exit" (or whatever the actual command is) and the script saved as bspwm-exit? Should give the useer a consistent aesthetic.

@cloverskull -

one keybinding issue I've had on my systems is that sxhkd - the recommended key grabber for bspwm - stays resident in memory, so if you logged out of bspwm and then logged into openbox (fluxbox, i3 ...) you'll get keybinding collisions. Quick fix is to have:

pkill -x sxhkd 

at the beginning of your openbox autostart file.


You must unlearn what you have learned.
    -- yoda

Offline

#18 2018-02-08 13:00:41

PackRat
jgmenu user Numero Uno
Registered: 2015-10-02
Posts: 1,179

Re: Alternative bspwm desktop for BunsenLabs?

Back on topic ....

As I stated before, the default should be to stick with openbox and do it well, other window managers can be set up via user contributed HowTo.

If the developers were to go with an additional window manager, I think it might be beneficial to go with a wayland window manager - weston, enlightenment (>0.19), sway, and a fork of awesome wm are available - but I think only weston and enlightenment are available in the repos.

If you believe wayland will be the future for Debian, exposing the BL userbase to it now could be benificial.


You must unlearn what you have learned.
    -- yoda

Offline

#19 2018-02-08 15:07:11

titan
Member
Registered: 2015-10-02
Posts: 60

Re: Alternative bspwm desktop for BunsenLabs?

Glenn wrote:

what was I thinking? You're absolutely right.

Glad we sorted that out. Joking apart I agree with your later post bunsenlabs is based on openbox and to introduce another desktop is just a distraction and extra work for the devs.

Offline

#20 2018-02-08 22:24:04

Head_on_a_Stick
Member
From: London
Registered: 2015-09-29
Posts: 8,759
Website

Re: Alternative bspwm desktop for BunsenLabs?

PackRat wrote:

can the bl-exit script be modified so that:

bspc quit

substituted for "openbox --exit" (or whatever the actual command is) and the script saved as bspwm-exit? Should give the user a consistent aesthetic.

Once the new bl-exit code is finalised I will fork it and attempt to apply a conditional test (or something) so that it works in both, that would be my preference.

If the BunsenLabs Team decide not to integrate my project then I can host epoched (is that a word?) versions of the BL packages for those who want to use my desktop.

PackRat wrote:

one keybinding issue I've had on my systems is that sxhkd - the recommended key grabber for bspwm - stays resident in memory, so if you logged out of bspwm and then logged into openbox (fluxbox, i3 ...) you'll get keybinding collisions.

Thanks for the heads-up but I can't reproduce that in my test system, were you using LightDM when you experienced those issues?

LightDM certainly kills sxhkd upon logout, it seems smile

Glenn wrote:

good luck

Thanks!

titan wrote:

to introduce another desktop is just a distraction and extra work for the devs

As I have already tried to explain, there is no "extra" work because I am going to do this anyway.

And I'm always distracted, that's my nature glasses


“Et ignotas animum dimittit in artes.” — Ovid, Metamorphoses, VIII., 18.

Forum Rules   •   How to report a problem   •   Software that rocks

Offline

#21 2018-02-08 22:28:58

Head_on_a_Stick
Member
From: London
Registered: 2015-09-29
Posts: 8,759
Website

Re: Alternative bspwm desktop for BunsenLabs?

malm wrote:

an almost authentic bunsenlabs menu to go with it

@malm: this is working really well except that the menu goes behind and opened windows, which is less than ideal hmm

The `bspc` command can apply a rule to raise a window type but the jgmenu & Jgmenu names both don't work.

Which name is assigned to the "window" used by jgmenu?


“Et ignotas animum dimittit in artes.” — Ovid, Metamorphoses, VIII., 18.

Forum Rules   •   How to report a problem   •   Software that rocks

Offline

#22 2018-02-08 22:54:59

Head_on_a_Stick
Member
From: London
Registered: 2015-09-29
Posts: 8,759
Website

Re: Alternative bspwm desktop for BunsenLabs?

Oh yes, I forgot...

cloverskull wrote:

keybinds

Read the file at ~/.config/sxhkd/sxhkdrc — this contains the keybinds and they are all clearly commented.

The syntax is beautifully simple and much easier to edit than openbox's xml nonsense.


“Et ignotas animum dimittit in artes.” — Ovid, Metamorphoses, VIII., 18.

Forum Rules   •   How to report a problem   •   Software that rocks

Offline

#23 2018-02-08 23:06:59

tknomanzr
BL Die Hard
From: Around the Bend
Registered: 2015-09-29
Posts: 1,029

Re: Alternative bspwm desktop for BunsenLabs?

^ It will be possible to modify bunsen-exit to use the above-mentioned command. I would definitely entertain the idea of supporting it for Lithium.

Offline

#24 2018-02-08 23:07:42

PackRat
jgmenu user Numero Uno
Registered: 2015-10-02
Posts: 1,179

Re: Alternative bspwm desktop for BunsenLabs?

Thanks for the heads-up but I can't reproduce that in my test system, were you using LightDM when you experienced those issues?

May have been originally; I use lxdm now so might be an issue with that.

Once the new bl-exit code is finalised I will fork it and attempt to apply a conditional test (or something) so that it works in both, that would be my preference.

If you're going to fork the script, why not go with a more generic command; this command:

killall `wmctrl -m | awk '/Name/ {print tolower($2)}'`

shoudl log you out of 99% of the window managers (Doesn't work with xmonad, probably some other exotic ones).

Unless you're looking to sharpen your ninja scripting skills, then good luck with it.

Last edited by PackRat (2018-02-08 23:17:24)


You must unlearn what you have learned.
    -- yoda

Offline

#25 2018-02-08 23:10:50

PackRat
jgmenu user Numero Uno
Registered: 2015-10-02
Posts: 1,179

Re: Alternative bspwm desktop for BunsenLabs?

tknomanzr wrote:

^ It will be possible to modify bunsen-exit to use the above-mentioned command. I would definitely entertain the idea of supporting it for Lithium.

Should be able to, bspwm is interactive so you can send it commands from the terminal to change configuration. I have also configured xfce4 to use bspwm as the window manager; easy to change all the xfce4 key bindings to bspc commands.


You must unlearn what you have learned.
    -- yoda

Offline

Board footer

Powered by FluxBB