Page 1 of 1

suggestions and DWM edition ?

Posted: Mon Mar 23, 2020 9:46 am
by Hakaba
Hi,

Short story :
I have few suggestions :
- Let the keyboard choice in the installer
- Propose a config with laptop that have Intel/NVidia card
- Or propose a place to document experimental hardware support
- Why not a DWM edition (with just a diff of the config.h to add access to wifi tools ?)

Long story :

Introduction :
After testing FuryBSD I have switched to DWM and upgrated to FreeBSD 12.1 to find a way to display my laptop screen with an HDMI screen at the same time.
(not yet resolved)

Chapter 1 : The DWM revelation
My main WM is DWM since few weeks for a very simple reason. I have to use mac OS X at work and I love the fullscreen everywhere introduced by Apple. I love it, but I dislike it at the same time. When I open a new window, I do not know where it open. When I have an app notification, sometimes the place of the app screen move (Slack) sometime my screen is splitted (Mail.app). When a screen is splitted I have to click 3 times to have two fullscreen applications.
So I search why I am frustrated with XFCE and OS X and I find a very beauty way to handle all my pain... Tilling window manager.
At this point, a new world open my mind.

Chapter 2 : Few lacks in FuryBSD
When I installed FuryBSD, I have some pain with a UEFI issue (I still use rEFInd to boot my laptop) and I really don't know why rEFIned boot FuryBSD, but not the UEFI.
More related with FuryBSD, handle the keymap (for shell and X) is not as easy as on FreeBSD, I think let the keymap selection on the installer is a good idea.

Chapter 3 : Waiting FreeBSD 12.2 or 13 ?
In FreeBSD 12.2 and 13, I will have support of my Intel GPU, maybe an optimus headless for my NVidia card and a native support of my Wifi cards.
I didn't find a simple way to test a FreeBSD 12.2 driver on FreeBSD 12.1. Maybe FuryBSD can be the place to collect some documentation about this kind of support (as on FreeBSD forum, the 12.2 and 13 subject are not supported).
Why in FuryBSD ? As a desktop env system, supporting "modern" hardware is maybe more important than in FreeBSD.
The more frustrated point is : I know that this drivers exists and working well with my laptop (I tested it on FreeBSD 13) but I have to wait until October 2020 for FreeBSD 12.2 (and a FuryBSD based on it) to use it on a supported FreeBSD version. This gap of time seems very large when you have the hardware ...
(Maybe I am wrong about the date or the driver policy, I did not find a clear documentation about it)

I know I did not post details about my pain. The reason is very simple : I am on the suggestions forum.

Re: suggestions and DWM edition ?

Posted: Wed Mar 25, 2020 12:10 am
by jmaloney
Thank you for the feedback. Good points raised. I'll try to make time to respond more later. For now I would at least like to get a few of your questions addressed.

1.) Keyboard choice coming in future milestone
2.) FreeBSD current is not supported yet by build system but there is an open ticket to track it in github (I have ideas, it's just a big undertaking)
3.) I would recommend the build system for experimenting with dwm and other environments. Pull requests are also welcome for new ones.

https://github.com/furybsd/furybsd-livecd

Re: suggestions and DWM edition ?

Posted: Thu Mar 26, 2020 6:07 am
by Hakaba
Thanks, I don't open the furybsd-livecd before, so I did not notice this is the builder.
I will test it.

About FreeBSD Current, if it as the best way to have latest drivers, it is a good news.
I can handle the obscure way to back port drivers to support my hardware (and it is a job done one time per computer)

Re: suggestions and DWM edition ?

Posted: Sun Apr 19, 2020 10:42 am
by Hakaba
WIP here.
I probably will do a custom

Code: Select all

dialog
to chose a default configuration.
But since suckless software need a "compilation" to handle config change, I have a question...
I experimented a

Code: Select all

.suckless
folder in home directory with dwm.config.h, surf.config.h and so on.

To use it with ports, we need to compile dwm with this kind of lines :
cd /usr/ports/x11-wm/dwm
make DWM_CONF=/homefolder/.suckless/dwm.config.h install clean
How can I do that in the install step ?
Can I set

Code: Select all

DWM_CONF
in a permanent way ?


Cons part of my solution :

* Only one user (the main user ?) can configure dwm for all users...
* I can not handle changes (like color changes) as I can not detect if the user change config file... So the configuration will be a one shot or reset tool.

Possible solution :
* Save dwm in the .suckless folder.
* Detect if dwm is older that config.h file
* I yes, make dwm

What is the best way for you ?

Re: suggestions and DWM edition ?

Posted: Mon Apr 27, 2020 8:06 am
by Hakaba
I maybe find the good way...

But I still have a question about FreeBSD port build.
If I want to build a port as non root user in an another folder than 'work', is there a way to configure that ?

The goal :
Use DWM from port.
Use .config folder in each users but root to read the config.h file
Push the builded dwm in $HOME/.bin (or other folder if there is a convention).

Re: suggestions and DWM edition ?

Posted: Fri May 22, 2020 1:11 am
by lrcaballero
+1 & (1,000,000.00) :D would love to see a spin of DWM on furyBSD!

furyBSD you guys are AWESOME! Thank you!

Re: suggestions and DWM edition ?

Posted: Wed Jun 10, 2020 3:34 am
by Hakaba
I am facing to a dilemma.
DWM (and other suckless tools) patches are impossible to apply without manual task.
I ask suckless team why they do not write C code with the possibility to hack it with hook.
The sad response was something like «patches ensure the user will read the C code...»

So, I have a FuryBSD with DWM for me, with my colors, my settings and so on. But I did not find a way to let «enduser» coçfigure it (for colors and font, I have a work in progress patch tio configure in one place dwm, st, dmenu...)
I saw some patch that inly add new C files and that can be scripted. So I think we have to chose a list of features we want to see in the FuryBSD DWM and forgot foreign patches.

To have a working dwm per user, I need a ~/bin folder in the path (first place). I am not sure about the best way.