LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux From Scratch (https://www.linuxquestions.org/questions/linux-from-scratch-13/)
-   -   The Linux From Scratch Desktop Project (https://www.linuxquestions.org/questions/linux-from-scratch-13/the-linux-from-scratch-desktop-project-4175542914/)

Keith Hedger 05-18-2015 08:56 AM

The Linux From Scratch Desktop Project
 
Having upgraded to xfce 4.12 I have found that yet again stuff has been broken, apparently by inclusion of dependencies ( runtime or otherwise ) on systemd/gtk3 and I'm fed up with it.
See here:

http://www.linuxquestions.org/questi...vt-4175538803/
http://www.linuxquestions.org/questi...it-4175540203/
And so on!

So I decided to start this little project to get a working desktop just with packages from LFS/BLFS avoiding as much as possible packages that rely on stuff that is constantly broken by the likes of systemd/gtk3, so no polkit/consolekit etc, where possible (B)LFS packages are used, this is not set in stone s there are some glaring omissions from the BLFS book.

If you are NOT using (B)LFS this project will almost certainly not work.

This for a GUI desktop only, NOT the underlying system ( xorg/udev etc ).
Other distributions have their own customised desktop so why not LFS, so the LFSDesktopProject was born!

This software is VERY much alpha software and may not work 'as is' on your set up, so if your computer explodes or the wife runs off with the milkman it's not my fault, you have been warned!

The first objective was to find a replacement composite manager from the one supplied by xfce, I chose compton, there doesn't seem to be a compositing manager in BLFS, compton can be found here:
https://github.com/chjj/compton/rele...3-10-21.tar.xz
It needs libconfig from here:
http://www.hyperrealm.com/libconfig/...g-1.4.9.tar.gz

Building libconfig:
Code:

./configure --prefix=/usr
make
sudo make install

Building compton:
Code:

make
sudo make install

Compton is the successor to xcompmgr which I used for years, is rock solid and has shed loads of config options I use:
Code:

compton  -cC -r15 -o.6 -l5 -t5 --backend glx --glx-no-rebind-pixmap -z
Which isn't too fancy or heavy on system resources.

A compositor of some sort is ESSENTIAL for this desktop.

The first job was to set the the wallpaper for the desktop, I have twin monitors and like to have different images on both, so I wrote the setwallpaper app this can be used as is without any desktop ( even from the basic twm installed with xorg ), if you are using another desktop manager like xfce's xfdesktop you need to quit it BEFORE setwallpaper
Code:

xfdesktop --quit
if your file manager covers the root window you will need to turn that off (pcmanfm does this ).

Download SetWallpaper from here:
https://dl.dropboxusercontent.com/s/...r-0.0.4.tar.gz
Unpack and build:
Code:

./autogen --prefix=/usr
make
sudo make install

Use
Code:

setwallpaper -h
For config options, options are dealt with in first come first served order so to set the image for monitor 1,stretch to fit and then monitor 0 tiled use
Code:

setwallpaper --monitor=1 --monitormode=0 --wallpaper=/home/keithhedger/Wallpapers/311917.jpg --monitor=0  --monitormode=1 --wallpaper=/home/keithhedger/Wallpapers/red.jpg --multimode=1
This code may be folded into the LFSDesktop code at some future date, but for now I 'm keeping it separate as some people don't lke icons etc on their desktop.

The second bit was to make the actual desktop app which can be downloaded from here:
https://dl.dropboxusercontent.com/s/...p-0.0.6.tar.gz
Unpack and build:
Code:

./autogen --prefix=/usr
make
sudo make install

The lfsdesktop app can at the moment use two different backends for mounting disks the default is to use a custom setuid app that just does the mount, you can also use udevil to mount disks ( which again is not in the blfs book ) this allows normal user's to all sorts of different disks as a normal user, it is highly configurable and is a great piece of code available here:

https://nodeload.github.com/Ignorant...vil/zip/master
This is not the place to go into all it's details however, but to use udevil add --disable-suidhelper to configure/autogen.sh

To run lfsdesktop use
Code:

lfsdesktop
You can add the --clean switch which will clear the disk cache, so all disks will appear in the default positions, and/or the --theme switch which will try to display the icons with the selected theme like so
Code:

lfsdesktop --theme gnome
running the command again with a different theme name will restart the desktop and switch to the new theme, use theme names only not path's, if a particular icon cannot be found it will try to use the general hard disk icon from the theme or if that is not available the icon from the default gnome theme.

Disk icons initially appear in a grid, but can be dragged to new positions on the grid these positions are remembered until you use the --clean switch.
Dragging an icon will show a white square as you move the mouse ( click and hold obviously ) snapping to the nearest grid position, just release to move the icon to a new position , you can't drop an icon on another icon.
Double clicking the disk icon will mount the disk and open it in the default app set by xdg-open, this was the easy bit, why does xfce still have so many problems detecting and mounting disks!

All prefs are set via a simple text file in keeping with the UNIX philosophy, they are stored at '~/.config/LFS'
The setwallpaper prefs are updated when the app exits, if something mucks up your root window wallpaper, for instance running xfdesktop and then quiting it will result in a grey screen, just issue the setwallpaper command with no arguments and all the previous settings will be used.
The prefs for lfsdesktop ( such as the are ) are at '~/.config/LFS/lfsdesktop.rc' where you can manually set the icon size etc, these prefs will be folded into the lfsdesktop code as switches later on.

That's about all for now as I said still very alpha software but lot's to add, suggestions welcome, the main one being what toolkit I should use for a settings editor, right click menu etc, I won't use gtk, qt5 is nice but is a BIG compile and a bit of overkill, wxWidgets, well I just don't like them, lesstif seems OK but not a lot of documentation, any thoughts? Not urgent yet.

At the moment I am using a hybrid of xfce with xfwm4, xfce4-panel and lfsdesktop/setwallpaper.

Couple of screen shots etc:
https://dl.dropboxusercontent.com/s/...booy/scrn1.jpg
https://dl.dropboxusercontent.com/s/...aard/desk1.mp4

TO DO
Add right click on disk icon to bring up menu for mounting, unmounting and ejecting.
Add Icons from files in ~/Desktop. - DONE.
Improve event handling. - DONE.
Add Settings manager.
Add other backends for mounting disks sudo/pmount, will need a gui for getting password.
Add WM menu if available to right click.
Add SetWallpaper code into LFSDesktop code as an option.

Long way off.

Add session manager.
Add window manager.
Add panels.
Add panel plugins, minimum logout/shutdown/restart/application menu/page switch/clock/notification area, probably more.
Add dock.
Add floating widgets?

bryan_S 05-18-2015 11:18 AM

Quote:

Having upgraded to xfce 4.12 I have found that yet again stuff has been broken, apparently by inclusion of dependencies ( runtime or otherwise ) on systemd/gtk3 and I'm fed up with it...
Yeah, i recompiled much of my Xfce 4.12 on CRUX _without_ gtk3 installed and it works much nicer now. They (Crux) have a port of Handbrake that works with gtk2 and latest Audacious now defaults to gtk2 (yay!). So i dont miss it (gtk3) at all.

I'm looking forward to trying out Compton with Xfce. I've previously tried using compiz with Xfce but it just doesn't integrate too well.

Keith Hedger 05-18-2015 12:21 PM

I don't use handbrake, too limiting, I do all my CD/DVD ripping with mplayer/ffmpeg.
The other problem I found with xfce 4.12 is that although it is supposed to be gtk2 one of the main parts needs gtk3 ( garcon if I remember ) I downgraded to 4.10, and as soon as I can I shall get rid of that too.

hendrickxm 05-18-2015 01:00 PM

Great idea! I use i3 and a handfull of gtk2 apps so I can keep dependency issues to a minimum.
Perhaps not completely on topic but ch6 of the LFS-book contains libcap and gperf. Only coreutils can use libcap (compiles fine with --without-libcap) and nothing I know of needs gperf (introduced in LFS 7.6).
Then I also build MesaLib without llvm. A stripped LFS might become useful as it only gets bigger lately.

ReaperX7 05-25-2015 02:51 AM

Hey Keith have you tried using the loginkit systemd shim kit along with ConsoleKit2? I have sources for loginkit-0.1 up in my Slackworks repo that can be easily downloaded. The install process is in the SlackBuild if you need it. Not sure if it will help, but it might.

As far as GTK3 stuff for Xfce, yes, some of it works, but not all of it. Garcon should still work with GTK2 (version 0.5.0 should anyway).

Also, loginkit does need Linux-PAM, but there is a patch I have if you don't have PAM.

You also MIGHT want to consider drafting a ConsoleKit boot script for sysvinit as well.

Keith Hedger 05-25-2015 05:48 AM

The whole idea of this is to get away from anything systemd'iefied, and console kit although it works relies on other stuff to work properly, you cant for instance use consolekit with xfce-session without dbus and you still get no disk icons without gnomes gvfs even though xfce has its own version of gvfs ( thunarvfs or whatever ) which doesn't seem to do anything.

I want to get away from all these dependencies especially the ones tied to gnome and hence ultimatly to systemd and its ilk.

And yes the blfs book says xfce can be built without gtk3 but that is just not true, garcon ( I think its garcon, I'm not at my mavchine at the moment, so I could be mistaken ) is configured to use gtk3 only

I'm happy to accept suggestions and even code ( anyone fancy writing the window manager :) ), but not if it involes adding anything to do gtk3/systemd/gnome.

ReaperX7 05-25-2015 06:17 AM

That might be a challenge. I know a lot of stuff now is all intertwined with DBus and such.

Getting systemd stuff out is painful, often a headache, but the shims are one way of working around systemd. Unfortunately, systemd-shim itself requires systemd to even build, so that went off the table on my end also. I ended up with Devuan's Loginkit out of curiosity and necessity.

Using hald anymore requires extreme patching to glib's files, and tons of roll up patches to hald itself to build at all. I know FreeBSD is trying to move more onto devd and some various new internals as well. That might be one route for some functionality, but its a God awful damn bloody mess regardless how you look at it.

Keith Hedger 05-25-2015 08:11 AM

Well so far I have a 45% working desktop only using some commandline apps from util-linux, xdg for opening and eudev for device stuff.

I will do another release in a day or so, but so far all disks, fixed and removable usb and dvd/cdrom etc are detected and can be mounted, files in the~/Destktop folder are also shown, with the corrrect icon ( mostly ) and can be double clicked to open them with the default app.

Repositioned icons are remembered and in the case of ejectable disks position is remembered on re-insertion.

Watch this space!

Keith Hedger 05-27-2015 08:45 AM

New update to LFSDesktop here:
https://dl.dropboxusercontent.com/s/...p-0.0.5.tar.gz

Files from ~/Desktop now shown, double clicking them opens in default app.
MUCH less thrashing of the harddrive, everything now kept in memory.
Icons change to reflect a new mimetype, for instance adding '#!/bin/bash' to the top of a text file turns the icon from a text file icon to a shell script icon.

Cache data has changed format so use
Code:

lfsdesktop -c
The first time you run it to force a rebuild of the caches.

Next bit to do add context menu, decide to go for lesstif but got to learn it first!

Keith Hedger 05-31-2015 08:29 AM

New update to LFSDesktop here:

https://dl.dropboxusercontent.com/s/...p-0.0.6.tar.gz

Screenshot:
https://dl.dropboxusercontent.com/s/...xd8u/scrn2.jpg

0.0.6
Now shows 'Computer' icon for root system, and no longer mountable/unmountable from right click.
Uses kernel 'getmntent' routines for determining mounted disks and mount point instead of external command.
More stuff in memory instead of thrashing hardrive.
Folded Desktop files into disk arrays.
Major code clean.
Symlinks handled properly in ~/Desktop.
Pop up menu disappears if you move pointer out of window.
Fixed Segfault trying to eject some disks.
Added right click on disk to mount/unmount/eject.

GameCodingNinja 05-31-2015 04:08 PM

I'm using 4.12 with my lfs/blfs and it works fine. For me it seemed to work better if I deleted all the .config, .cache etc and boot up into it fresh where it asks if you want to start with the default layout. I know it's a pain to re-setup your desktop but that seemed to work for me.

Keith Hedger 05-31-2015 04:47 PM

I don't deny that xfec 4.12 can be made to work, I just objet to the path xfce is taking, hence this project, I'm not saying that other desktops don't work or are no good, just want to add an option for people that feel they don't want to have to be dictated to by the likes of the systemd/gtk/gnome devs. Xfce I assume gets some income from marketing, donatations etc and so have vested ( monetary ) interest in the status quo, this is just another option.

exvor 06-08-2015 11:46 AM

on my gentoo system i tried to use xfce4 again and i have systemd and its still a broken mess. I think ill have to abandon them again... I used to use it all the time before they adopted dbus and went off the deep end.

Keith Hedger 06-08-2015 04:36 PM

Hence this project, watch this space as I will be updating the desktop in a day or two, with custom icons for files and disks and an application menu ...

Keith Hedger 06-10-2015 06:17 AM

For some odd reason the 'Edit' button for the original post has dissapeared so I'll put the update here.

New LFSDesktop here:
https://dl.dropboxusercontent.com/s/...p-0.0.7.tar.gz

Quite a few improvements in this one:
0.0.7
Custom icon path dialog now pops up in centre of window.
.desktop files now show proper icon for theme.
Added 'Open' option to right click menu.
Added remove custom icons.
Added set custom icons.
Added 'appmenu' resources file to /etc/X11/app-defaults.
Application menu now pops up at mouse and dissapears if mouse is moved out of window.
Added 'Applications' menu.

Extra screen shots here:
https://dl.dropboxusercontent.com/s/...xjp3/scrn3.jpg
https://dl.dropboxusercontent.com/s/...4m8w/scrn4.jpg
https://dl.dropboxusercontent.com/s/...r5sw/scrn5.jpg
https://dl.dropboxusercontent.com/s/...huup/scrn6.jpg
https://dl.dropboxusercontent.com/s/...jnx8/scrn7.jpg
https://dl.dropboxusercontent.com/s/...ipp9/scrn8.jpg

Right clicking in the root window will now pop up an applications menu built from the desktop files in /usr/share/applications, there is no need for any fancy configs for this menu as it is built dynamically.

There is an xresources file now installed in /etc/X11/app-defaults called appmenu which will allow you to set colours etc of the pop-ups, have a look at the screen shots.

You can set a custom icon on any of the desktop files but be aware it must be an absolute path to the icon.

To get rid of the pop-ups just move the mouse out of the window ( except for the custom icon dialog, you have to either click Ok or Cancel ).
Also be aware that if you rebuild the desktop cache with the '-c' option you will will lose and custom icons, .desktop files will of course go back to displaying their own icon.
Mostly adding/removing custom icons has an immediate visual effect except for removing the custom icon on a .desktop file this will change the files to the generic icon until you restart the desktop.

I am now using lfsdesktop as my default and so far it seems prety stable, so this will be the last update for a little while while I work on the other bits, WM etc.

Enjoy!

Keith Hedger 06-19-2015 09:42 AM

Update to version 0.0.8 here:
https://dl.dropboxusercontent.com/s/...p-0.0.8.tar.gz

0.0.8
Added basic manpage.
Added 'tidy' option to clean stale files from cache, custom positions/icons unnaffected.
Selection from 'Applications' popup now obeys 'Terminal=..' option in desktop file.
Added 'showextension' to config options
Added "show-extension" command opt to show file extensions ( default no show ).
Added 'termcommand' to config options
Added "term-command" command opt to set the command to use when opening desktop file in terminal.
Fix for some window mangers not respecting 'keep below' and bringing the desktop to the front (openbox), now stays underneath.

You can now hide/show the file extensions from files in the desktop, fixed an annoying bug where the desktop was being brought to the front by some window managers, using the -t option will delete all cache files except those in use, probably should do this every once in a while.

Both the Application menu selections and desktop selections either via double clicking or 'Open' on a .desktop file now honors the use of the 'Terminal' option to launch the application in the user specified terminal which defaults to 'xterm -e' but can be set in the prefs or on the command line.

Definitely the last update for a bit as I have now started work on a window manager, based on 'wind' from sourceforge, but its slow going, also the wife wants me to decorate :(

GameCodingNinja 06-19-2015 01:30 PM

I'll have to give this a try. Looks awesome!

Keith Hedger 06-19-2015 01:54 PM

I am using it myself all the time seems fairly stable, I think it can now be considered at least beta software as it's mostly fully functional, couple of minor annoyances but I'll let you find them :)

Keith Hedger 06-22-2015 09:08 AM

2 Attachment(s)
Must stop procrastinating over this window manager! Anyway another update here:
https://dl.dropboxusercontent.com/s/...p-0.0.9.tar.gz

Changelog:
0.0.9
Added "--enable-3dwidgets" to configure script to allow linking against Xaw3D ( default is link against Xaw7 ).
Updated manpage.
Added 'ignore' to command options.
Added 'ignores' list to prefs to not show disk who's label is in the ';' delimited list.
Added fontface/forecolour/backcolour to command line args.
Added backcolour option to prefs.
Added forecolour option to prefs.
Added fontface option to prefs.
Icon labels now use cairo text for rendering anti alias text.

If you have installed Xaw3d you can use '3d' widgets as in the screen shots:
Attachment 18773
Attachment 18774

You can now either via the command line or the prefs file choose to not display the icon for a specific disk ( via label )
Cairo text is now used for the icon labels which is much nicer.
Really, REALLY must start on the WM!

Keith Hedger 06-24-2015 10:25 AM

1 Attachment(s)
Very first release of the window manager here:
https://dl.dropboxusercontent.com/s/...r-0.0.4.tar.gz

Attachment 18797

0.0.4
Drag window off of left/right edge cycles desktop.
Desktop windows now stay below and don't get raised.
Removed x11font code, now only xft fonts used.
Code clean.

0.0.0-0.0.3
First commits.

Lots to do on this, no iconize/maximize buttons yet, though you can do some stuff via the keyboard, see the man page for that.
Want to make the window borders compatable with ( at least ) xfwm4, mainly as I've got a lot of wm themes in that format and I'd like to keep them.

Only deps are X11 etc no gtk or other crud.

Build:
Code:

./autogen.sh --prefix=/usr
make
sudo make install
lfswmanager -B grey40 -F white -b grey80 -f grey60

Thanks to Johan Veenhuizen for the original code which you can get here:
http://sourceforge.net/projects/windwm/?source=navbar

Keith Hedger 06-25-2015 10:35 AM

Minor ( but important ) update to LFSDesktop here:
https://dl.dropboxusercontent.com/s/...-0.0.10.tar.gz

0.0.10
Fixed default terminal command not being set if not specified on command line ( defaults to "xterm -e" ).

Update to LFSWManager here:
https://dl.dropboxusercontent.com/s/...r-0.0.5.tar.gz

0.0.5
All windows of type desktop now stay below windows with below state set regardless of creation time.
Fixed putting windows below.
Fixed default cursor not being set.
Made windows of type NET_WM_WINDOW_TYPE_DESKTOP 'sticky'.

Also this:
https://dl.dropboxusercontent.com/s/...3d/xinitrc.lfs

Is a simple xinitrc script tha I use to start everything up, use it as a spring board for your own startup.

More to come!

Keith Hedger 06-27-2015 04:20 AM

LFSWManager update here:
https://dl.dropboxusercontent.com/s/...r-0.0.6.tar.gz

0.0.6
Fixed widows above all otheres changing state.
Fixed 'sticky' windows changing state.
Fixed dragging certain application windows to new desktop pulling all other windows of the app there.
Added 'ALT-!' key binding to group all application windows of focused application into current desktop.
Removed some redundant code.
Redone man page.
Redone printing help.
Added '-?' and '-h' to commandline options.
Added '-p' option to command line to set window placement, 0=Smart( Screen ), 1=Under mouse ,2=Centre on monitor with mouse( default ), 3=Screen centre, 4=Smart( Monitor with mouse ).
Added multi monitor support for window placement.

Behaving much more like a window manager now, stick windows and having multiple windows 'above' or 'below' others now works properly even when the state is 'toggled' back and forth.

Time to start on iconize/full screen buttons etc.

Keith Hedger 06-30-2015 06:46 AM

LFSWManager update here:
https://dl.dropboxusercontent.com/s/...r-0.0.7.tar.gz

0.0.7
Started handling MOTIF_WM_HINTS properly.
Added 'maximize' button.
Added number of desktops to prefs file.
Added font and size to prefs.
Added placement to prefs file.
Added prefs file, for fore/back colours.
Improved 'dock' type window handling but still needs tweeking.
Mouse wheel now moves between desktops.
Above/Below code tightened up.

Started adding the window decorations, decided to get functionality before worring about the eye candy, but that will be comming soon.

You can now use a prefs file instead of setting everything on the command line, the prefs file is ~/.config/LFS/lfswmanager.rc, here's mine:
Code:

focusedfore        white
focusedback        grey40
fore                grey60
back                grey80
placement      2
titlefont        sans:size=10
desktops        6

The format is the same as from the command line.
The window manager is slowly getting there and so far with both the desktop and window manager no gnome/gtk stuff just X11 libs and cairo.
When the WM is a bit more 'every day' usable I will be moving the application popup menu from the desktop to the window manager.

Keith Hedger 07-01-2015 10:00 AM

Update to LFSWManager here:
https://dl.dropboxusercontent.com/s/...r-0.0.8.tar.gz

0.0.8
Added 'Shade' window button, bit of a kludge needs improving.
More compliance with extended window manager hints standard.
Code clean and simplify.
Plays better with pagers etc, ie cairo-dock/xfce-panel can now min/max/close/show window from popup menu and shows iconized thumbnail.
Added 'Minimize' button.

Windows now have a ( almost ) full complement of buttons, shade, minimize, maximize and close, never really used the right hand menu button but I will probably put it in next.

Functionality is now pretty much how I want it got some tweaking to do and then the eye candy.

Keith Hedger 07-06-2015 08:43 AM

New update to LFSWManager here:
https://dl.dropboxusercontent.com/s/...r-0.0.9.tar.gz

0.0.9
Added -l option to command line to set number of updates to window when resizing, 0=no updates until mouse button released, >0 number of updates defaults to 5.
Updated man page.
Fixed dragging windows to new desktop on multiple monitors of different widths.
Dragging windows to next/previous desktop now works properly.
Code clean.
Fixed button spacing when not all buttons are used.

Dragging windows off of the left or right edge to flip to new desktop now works much better, flip occurs when pointer reaches edge instead of when window left/right reaches edge, you can also continue dragging the window without having to re-grab the window.

Resizing updates can now be set on the command line or prefs file, a larger value means less updates but more responsivness, defaults to 5 which is about right, a value of 0 will not update the window until the mouse button is released.

Screen shot with all the new butons:
https://dl.dropboxusercontent.com/s/...v4o/scrn12.jpg

Can't embed the image as I seem to have run out of alloted attachment space :(
Any idea how I can up this anyone?

Minor mistake with the archive, if you window doesn't update you need to redown load and recompile - sorry.

Keith Hedger 07-14-2015 06:26 AM

New update to the window manager here:
https://dl.dropboxusercontent.com/s/...-0.0.10.tar.gz

Screen shot here:
https://dl.dropboxusercontent.com/s/...409/scrn13.jpg

Now added themes to LFSWmanager, I have decided to use xfwm4 themes as they are one of the easiest to use as they consist mostly of images with very little in the way of configuration files although there is some I haven't yet implementd them, ie no setting the button spacing, title alignment etc. But watch this space! Also as I have been using xfce for some years I have a large collection of themes and I didn't want to have to redo them all.

One caveat with the xfce themes, some old themes use an xpm image with a png overlay, this isn't supported as most recent xfce themes use either just pngs or just xpms, so if you try a theme and it doesn't display you have been told! ;)

You can set the theme in the prefs or on the command line, see the manpage.
If no theme is set on the command line or in the prefs file then the old style is used.

To do:
Take into account the theme resource file contents.
Find theme path from name rather than having to use full path to theme.
Move application menu from LFSDesktop to LFSWManager.
Add app icon to title bar?
Add 'Menu' button to title bar?
Install a default theme?

Change log:
0.0.10
Added 'theme' option to prefs.
Added '-T' option to command line to set path to theme.
Fixed incomplete button definitions on some themes.
Adjusted window theme parts.
Added themed buttons.
Added xfwm4 themes ( still needs tweaking but mostly works ).
Added '-w' option to write out prefsfile.
Removed old debug code ( assert's ).
Maximize now maximizes to monitor of window.

Keith Hedger 07-14-2015 01:36 PM

Whoops!
Small but critical bug fix:
https://dl.dropboxusercontent.com/s/....0.11.1.tar.gz

Keith Hedger 07-18-2015 12:10 PM

Update to LFSWManager here:
https://dl.dropboxusercontent.com/s/...-0.0.12.tar.gz

Added left/right/bottom/botom left/bottom right resizers.
Started to add the themerc file data when using a theme.
Usual code clean, update manpage etc.

0.0.12
Added left edge resize.
Added right edge resize.
Added bottom edge resize.
Added bottom left corner resize.
Added bottom right corner resize.
Removed useless non-fatal xlib complaints when not in debug mode.
Fixed trying to draw border/buttons on undecorated windows.
Fixed minor visual bug placing buttons when themerc button_offset=0.
Added debug checkpoints to most functions ( not used unless --with-debug-level=1 ).
Added beter debug code.
Removed some unwanted traps.
Added '--with-debug-level' to configure 0 - No debug, 1 - write to stderr and logfile ( default 0 ).
Shaded windows can now only be stretched horizontally.
Tweaked shade function, to not unnecessarily draw sides/bottom when shaded.
Redone button updates, now uses shaped windows.

0.0.11.1
Critical bug fix.

0.0.11
Done button_offset, active_text_color, inactive_text_color.
Adding options from themerc.

Keith Hedger 08-17-2015 06:22 AM

New updates to the project!
First off there is a small library that needs to be installed first as this will provide the various widgets for the desktop, window manager and the soon to come panel and dock, I have decided to drop thje use of the athena widget set as although they are always available and pretty lightweight they are awkward to theme and don't look very good.
At the momenty the toolkit only includes three widgets and some general routines, this toolkit is in noway meant to be a full fleged widget set, just the ones you need to run the desktop.

Download the tool kit here:
https://dl.dropboxusercontent.com/s/...t-0.0.5.tar.gz
Build and install the same as the other bits with
Code:

./autogen.sh --prefix=/usr
make
sudo make install

Changelog:
0.0.5
Fixed double free of line edit data.
Added keep above and sicky windows.
Fixed window gravity not working.
Fixed pager not showing window.
Now supplies relevent event to class event handlers.
Event hanlers now return a bool - true=event handled, false=pass it along.
Callbacks now return a bool.
Labels now default to centre.
Removed linking to unused libs.

0.0.4
Line edit now scolls correctly.
Added paste ( ctl-v ) to line edit.
Added cursor keys to line edit.
All button clases now inherit from base gadget class.
Added line edit class.
Added base gadget class.

0.0.3
Fixed not setting proper colours.
Added menuitem font and colours.
Fixed random setting font segfault.
Fixed font not being set.
Added setting global colours previously loaded from prefs file to button classes.
Added setting global colours from prefs file to window class.

0.0.2
Removed setting colours on create button class.
Added set colours for menuitems.
Added init buttons to set default colours.
Added buttons inherit colours from main window.
Added menu button.
Added general purpose button.
Added mainwindow.

This MUST be installed first, you may also need to run the 'ldconfig' command.
N.B.
When using the entry box in the custom icon dialog please note that full editing is not available, ie you cant copy/paste with the mouse but you can use ctrl-v to paste the clipboard, home/end work as expected, line edit functioanlity will be expanded on later.

Update to LFSDesktop here:
https://dl.dropboxusercontent.com/s/...-0.0.11.tar.gz

Changelog
0.0.11
Updated licence stuff at top of file.
Removed externel icon dialog box.
Removed unneeded libs.
Dialog boxes use the new toolkit.
Added LFSToolKit library.
Added Xft lib.
Made showing 'Appmenu' on right click on desktop optional, default=noshow, now moved to the window manager as it should be.

Update to LFSWindowManager here:
https://dl.dropboxusercontent.com/s/...-0.0.13.tar.gz

Changelog
0.0.13
Command line can overide ( some ) theme settings.
Added -k option to prevent reading of options from ~/.config/LFS/lfstoolkit.rc.
Added -X option to command line to set text/button colour.
Text colour and menu buttons now use the same colours.
Can now set the menu button colour when not using theme.
Butons on inactive windows now use inactive colours.
Window name now in white same as buttons.
Redone non-themed window name.
Removed unneeded creation/deletion of GC's.
Redone non-themed buttons.
Redone non-themed window borders.
Fixed minor refresh bug in appmenu.
Appmenu now uses global colours from ~/.config/LFS/lfstoolkit.rc
Added 'Appmenu'.
Added linking to LFS Tool Kit library.

N.B.
Some of the naming of the configs have changed so please alter your config file, example:
Code:

placement 2
titlefont sans:size=10
desktops 6
liveupdate 10
theme /home/keithhedger/.themes/OldBrownWood
termcommand xfce4-terminal -x
wmactive_frame #948069
wmactive_fill #5E3300
wminactive_frame #9B9184
wminactive_fill #836C51
widgetcolour white

There is now a global config file at "~/.config/LFS/lfstoolkit.rc" this will slowly replace the individual config files, heres an example ~/.config/LFS/lfstoolkit.rc:
Code:

window_normal #5E3300
window_prelight #6B4C26
window_active #412502

button_normal #5E3300
button_prelight #6B4C26
button_active #412502

menuitem_normal #cf944e
menuitem_prelight #794513
menuitem_active #412502

menuitem_font sans-serif:size=8
menuitem_font_normal black
menuitem_font_prelight white
menuitem_font_active white

font sans-serif:size=8
font_normal white
font_prelight grey
font_active white

wmactive_frame #948069
wmactive_fill #5E3300
wminactive_frame #9B9184
wminactive_fill #836C51
widgetcolour white

theme /home/keithhedger/.themes/OldBrownWood

The last lines will override the configs in the "~/.config/LFS/lfswmanager.rc" file unless the -k option is given to lfswmanager.

Screen shots of the new widgets here:
https://dl.dropboxusercontent.com/s/...ncn/scrn14.jpg
https://dl.dropboxusercontent.com/s/...o5m/scrn15.jpg

Enjoy!

Wayne Sallee 08-19-2015 02:47 PM

Sounds very interesting. Do you have a web page for it?

Wayne Sallee
Wayne@WayneSallee.com

Keith Hedger 08-19-2015 05:23 PM

Quote:

Originally Posted by Wayne Sallee (Post 5408095)
Sounds very interesting. Do you have a web page for it?

Wayne Sallee
Wayne@WayneSallee.com

Sorry not yet, but maybe soon, in the meantime there is just the screenshots and this thread.

Luridis 08-31-2015 10:42 PM

I don't know why anybody wants GTK anyway. Bloated now, it is a classic example of a house that's never done. At some point you have to stop adding features and put software in maintenance mode.

hendrickxm 09-01-2015 12:50 AM

Quote:

Originally Posted by Luridis (Post 5414020)
I don't know why anybody wants GTK anyway. Bloated now, it is a classic example of a house that's never done. At some point you have to stop adding features and put software in maintenance mode.

I prefer gtk2 over qt4/5. Compiling qt takes way too long.

Keith Hedger 09-01-2015 07:04 AM

qt5 does take a looooonnnngggg time to compile I admit but it is worth it I am slowly swapping to qt5 apps but again they also take a bit longer to compile

Luridis 09-01-2015 08:48 AM

QT written in C++, GTK written in standard C, that's why the massively different compile times. The OO paradigm is as conceptually far away from how processors actually work as Pluto. C, on the other hand, is more like Mars. It's different, but at least procedural/imperative, just like machine language. I read a quote from Torvolds once where he explained what happened when he tried C++ and he couldn't get predictable assembly of any kind out of the compiler.

I'm not saying C++ doesn't have uses. But, I do like to point out that all that structure costs a great deal to implement.

Keith Hedger 09-01-2015 09:05 AM

Quote:

Originally Posted by Luridis (Post 5414161)
QT written in C++, GTK written in standard C, that's why the massively different compile times. The OO paradigm is as conceptually far away from how processors actually work as Pluto. C, on the other hand, is more like Mars. It's different, but at least procedural/imperative, just like machine language. I read a quote from Torvolds once where he explained what happened when he tried C++ and he couldn't get predictable assembly of any kind out of the compiler.

I'm not saying C++ doesn't have uses. But, I do like to point out that all that structure costs a great deal to implement.

I think most people, certainly on this forum would be aware of that ;)
You pay your money an takes your choice, c++ has advantages over c, c has advantages over c++, I tend to use a mix, c for speed c++ for eass of use.

Luridis 09-01-2015 09:42 AM

Quote:

Originally Posted by Keith Hedger (Post 5414164)
I think most people, certainly on this forum would be aware of that ;)
You pay your money an takes your choice, c++ has advantages over c, c has advantages over c++, I tend to use a mix, c for speed c++ for eass of use.

Not everyone here is a programmer... :P

Keith Hedger 09-01-2015 01:07 PM

Quote:

Originally Posted by Luridis (Post 5414179)
Not everyone here is a programmer... :P

for such people the diffs between c and c++ are largly acedemic, and this is reaaly a discussion for a seperate thread asit bears no real relevence to this project as i dont intend to be using gtk or qt anyway

Keith Hedger 09-16-2015 11:09 AM

Lots of updates this time!
To start off with the Setwallpaper has been renamed to LFSSetWallpaper to keep in line with the other parts of this project, which means the config files have changed name too, to, yes you guessed, lfsmonitors.rc and lfssetwallpaper.rc, other than the name change no changes to the actual code but it still needs to be reinstalled, make sure you uninstall the old version first.
Just a reminder if you have come to this thread without reading the start, all modules are compiled/installed the same ie ( after untaring the source and CD'ing to the extracted folder )
Code:

./autogen.sh --prefix=/usr
make
sudo make install

LFSSetWallpaper here:
https://dl.dropboxusercontent.com/s/...r-0.0.5.tar.gz

Next install the LFSToolkit, please uninstall the old version first, here:
https://dl.dropboxusercontent.com/s/...t-0.0.7.tar.gz
Quite a lot of changes here, please note you MUST install the toolkit before the rest of the modules, you may have to manually run ldconfig if you have installed to a non standard location
Code:

sudo ldconfig
0.0.7
Added reload colours to gadget class.
Added hide window.
Fixed race condition if mouse is in line edit gadget on start up.
Added getgeom to gadget class.
Fixed getgeom in window class not getting global values.
Added get buffer to line edit class.
Moved load font to lib class.
Added show window to window class.
Added get/set label to base gadget class.
Added get stick state to window class.
Fixed not setting window active in constructor.
Added Label class.
Added auto colour for button labels chhoses black/white depending on ( guessed ) brightness.
Fixed manual window resize event loop.
Fixed not getting font colours from loaded vars.
Added load vars from default rc file when creating window, defaults true.
Minor revision bump.
Made global names in lib class private.
Added default colour/font names.
Added set/get active to window class.
Fixed is Active not being set on window class constructor.
Removed redundant init routines.
Code clean.
Added LFSTK_lib class.
Cursor set to end of line in line edit when first shown.
Added inactive states to prefs file.
Added 'inactive' state to gadgets.
Fixed too many refreshes in line edit.

Now install the rest.
LFSDesktop here:
https://dl.dropboxusercontent.com/s/...-0.0.12.tar.gz
0.0.12
Added '--back-alpha' or '-A' option to command line.
Colour specs now the same as the wm and tool kit ie use #RGB insatead of 0xRGBA.
Added 'labelalpha' to prefs to set alpha of label indepenent of colour.
Removed lfstooolkit prefs code.
Updated to use new tool kit.

LFSWManager here:
https://dl.dropboxusercontent.com/s/...-0.0.14.tar.gz
0.0.14
Theme now uses just a theme name OR a full path to theme.
Removed 'k' option.
Removed manual load of prefs file from appmenu.
Code clean.
Updated for new tool kit.

NEW STUFF!
LFSApplications here:
https://dl.dropboxusercontent.com/s/...s-0.0.7.tar.gz
0.0.2
Dialogs now reflect changes in toolkti prefs.
Renamed lfsprefsgroup.
Renamed lfstkappearance.
Added lfsdesktopprefs.desktop
Added lfsprefsgroup.desktop
Added lfstkappearance.desktop
Added lfswallpaperprefs.desktop
Added lfswmprefs.desktop
Added lfsprefsgroup.
Exit from lfsdesktopprefs prints settings to stdout.
Apply in lfsdesktopprefs now restarts desktop.
Exit from lfstkappearance prints settings to stdout.
Apply in lfstkappearance now writes tool kit prefs.
Exit from lfswmprefs prints settings to stdout.
Apply in lfswmprefs now restarts window manager.
Fixed keep above in all prefs dialogs.
Added desktop prefs.
Added window manager prefs.
Added labels.
Apply prints config to stdout.
Save save to ~/.config/LFS/lfstooltik.rc.
Added LFS Toolkit prefs.

0.0.1
First commit of lfs toolkit apps.

The above applications at the moment just contain some GUI's for setting the various prefs, .desktop files are installed in /usr/share/applications so you can launch the prefs from athe appmenu, the main one lfsappearance will allow you to launch the others, you can from here create a 'set' which can be quickly loaded allowing you to set all the prefs at one go, just enter a set name in the edit box click 'New Set' and a new set will be created with all the current prefs, to select a different set click the 'Load Set' button and you will get a drop down selection just select what set you want and click 'Apply' to load it, after selecting a set and making changes you need to click update to update the settings in the new set.
As you can see the wallpaper settings is greyed out 'cos I haven't doen that one yet!
Be aware that there is no check for overwiting an old set with a new set, that will change later, also to delete a set you need to remove it manually from ~/.config/LFS/lfsgroupsprefs, again this is to be done.

Some screenshots of the prefs dialogs are here:
https://dl.dropboxusercontent.com/s/...groupprefs.png
https://dl.dropboxusercontent.com/s/.../deskprefs.png
https://dl.dropboxusercontent.com/s/...2a/tkprefs.png
https://dl.dropboxusercontent.com/s/...kw/wmprefs.png

Still to come:
Panels.
Dock.
Etc.

Wayne Sallee 09-16-2015 02:39 PM

How about some md5sums?

Wayne Sallee
Wayne@WayneSallee.com

Keith Hedger 09-16-2015 02:49 PM

Why? Trust me I'm a doctor ;)
Ok I'll do some and post them in a day or so.

Keith Hedger 09-17-2015 05:00 AM

As requested
Code:

0d9df7f628c2c1bf8f9f51bad13492f5  LFSApplications-0.0.7.tar.gz
58a3ebcbb597df9db7be9677270ebc6f  LFSDesktop-0.0.12.tar.gz
76d3bb8ca6d9cb46c7a2cf6040e6d864  LFSSetWallpaper-0.0.5.tar.gz
e7eab50946bc3c0ca8944dc4bc143fd2  LFSToolKit-0.0.7.tar.gz
ee3732d6ba8dd5741ccc42e068dd4e34  LFSWManager-0.0.14.tar.gz


Luridis 09-17-2015 01:56 PM

Oh cool, I'm going to have to look at your code... particularly the WM. My next project is to start playing around with Wayland.

Keith Hedger 09-17-2015 02:07 PM

From what I gather the internals of wayland are completly different from X so Xlib code probably won't do you a lot of good, but let me know how it goes, I haven't even looked at wayland so don't know how eay/difficult it would be to make a WM for it, also I believe ( but I may be wrong ) that wayland depends on systemd, if so I wont touch it with a 10' battle lance.

Luridis 09-17-2015 02:58 PM

Quote:

Originally Posted by Keith Hedger (Post 5421809)
From what I gather the internals of wayland are completly different from X so Xlib code probably won't do you a lot of good, but let me know how it goes, I haven't even looked at wayland so don't know how eay/difficult it would be to make a WM for it, also I believe ( but I may be wrong ) that wayland depends on systemd, if so I wont touch it with a 10' battle lance.

Wayland is a protocol and not a bad one. This guy impresses me and in spite of some of the humor he uses, I do not see the egomania present in some of the other freedesktop developers.

As for Wayland, the reference implementation with the Weston compositor does require systemdik, but people have it running on android and raspberry pi without the Cthulhu tendrils of certain systemd developers being involved. I say that tongue-in-cheek because I don't think systemd is actually malicious. I think some of the people involved in it have ego issues and that the project suffers from the kind of feature-creep that a carpenter's house does. The good part about that is feature creep introduces more and more bugs, which the developers have already shown they are disinclined to fix, and at some point those bugs are going to be exploited. Finally, when that news ends up on cnet, pcworld, arstechnica, etc. it will be all over for the systemd developers who think it should be free to absorb any subsystem in it's path. Just look what happened to OpenSSL. :p

As far as libwayland.server, I think its only requirements are KMS in the kernel and udev, which can obviously be eudev on non-systemd builds.

Luridis 09-17-2015 03:00 PM

Oh, and if Wayland will replace X, what better time to start on components that don't require needless integration.

Keith Hedger 09-17-2015 04:56 PM

I hope you are right about the demise of systemd but I dont think it will be gone anytime soon and though it may not be maliciuos code the devs certainly act that way and I have a certain moral objection to the whole mindset of the systemd/gtk/ubuntu/redhat bunch but this is not the place for a systemd angel or demon ( daemon? ) flame war, it certainly wont be part of any code I write.

Keith Hedger 09-17-2015 05:04 PM

As a P.S. the window manager is based on this code:
http://sourceforge.net/projects/windwm/?source=navbar
But pretty heavily changed now.

Keith Hedger 10-14-2015 07:57 AM

New updates and additions to the the project, it may be a good idea to redownload all the parts and compile install just to make sure you have all the right versions, for convenience I have now uploaded a complete project archive so you can just download this:
https://dl.dropboxusercontent.com/s/...ect-507.tar.gz

All the other archives are in this one.

Update to lfstoolkit here:
https://dl.dropboxusercontent.com/s/...t-0.0.8.tar.gz

0.0.8
Fixed gravity bug in LFSLabelClass.
Code clean.
Line edit class always draws black on white.
XftColours now created on start.
Made get listener in gadgets private.
Made draw label public.
Removed unnecessary overrides of drawlabel.
Added move window to window class.
Added get monitor count/monitor geom to window class.
Added loading monitor data to window class.
Added Xinerama dependency.
Added 'purge' Makefile target to remove old libs.
Added different indicators to toggle button.
Added align right to gadget class.
Added toggle button.
Version bump.

The toolkit must be built and installed first.

Update to lfssetwallpaper:
https://dl.dropboxusercontent.com/s/...r-0.0.6.tar.gz

0.0.6
Added 'Zoomed' (4) to modes.
Added 'Scaled' (3) to modes.
Fixed tiling overrun problem.
Fixed buffer overrun error

Zoomed mode will fill the screen by scaling the image to fill the screen keeping the aspect ratio.
Scaled mode will do a 'best fit' scale so depending on the proportions of the image you may have borders at the top/bottom or sides, agin the aspect ratio is kept.

No changes to lfsdesktop here:
https://dl.dropboxusercontent.com/s/...-0.0.12.tar.gz

Update to lfswmanager here:
https://dl.dropboxusercontent.com/s/...-0.0.15.tar.gz

0.0.15
Updated manpage.
Updated to new toolkit.

Minor stuff.

Update to lfsapplications here:
https://dl.dropboxusercontent.com/s/...s-0.0.3.tar.gz

0.0.3
Added extra modes to wallpaperprefs.
Fixxed memory alloc segfault.
Added wallpaper prefs.
Desktop prefs now uses check box for show/hide suffix.
Window placement selection in wmprefs now uses drop down.
Current set saved at exit.
Current set now set in edit box.
Redone lfstk dialog.
Added set label auto colour to lfstk dialog.

Now contains the prefs for setting the wallpaper, bit of a mix up with the version numbers of the older archives this version is correct and is the latest.

**NEW**
Added lfspanel to project here:
https://dl.dropboxusercontent.com/s/...l-0.0.3.tar.gz

0.0.3
Trapped X errors.
Added Window list gadget.
Added panel positions left/right/centre and fixed.
Added panel modes shrink and fixed size.
Added multiple panels, use 'lfspanel-1.rc' for panel 1 and call with 'lfspanel 1' etc, lfspanel.rc is main panel call with 'lfspanel'.
Made panel gadgets positionable from prefs.
Added left/right gadget layout.
Added setting position of gadegets on panel via prefs.

0.0.2
Added cpu stats.
Added disk i/o stats.
Panel now stays above all other windows.
Added clock.
Updated for new toolkit/.
Added logout commands to prefs.
Added logout menu.
Added appmenu.
Added place on monitor number.

0.0.1
First commit of lfs panel.

Panel width can be set in the prefs and can be, -1 for full width of monitor, -2 shrink to fit or >0 for absolute size.
Panel position can also be set in the prefs and can be, -1 for left position, -2 for centre position, -3 for right position or >0 for absolute position.

Panels can be on different monitors, as yet only at the top of the monitor, placement on sides/bottom is to come.
Panel height can be set in the prefs.

The logout commands are set in the prefs and default to a simple xterm, you will definitely need to set these to suit your own system, an example is in the manpage.

Multiple panels can be used just set up a new prefs file for it, see the manpage for details, no prefs app for this yet ( I hate doing prefs gui's! ),

Placement of inbuilt gadgets is customizable from the prefs file, gadgets that can be added include: logout menu, clock, disk usage, cpu load, applications menu and window selector. No plugins yet or customizable launchers, to be done!

Screenshots of the panel in operation can be seen here:
https://dl.dropboxusercontent.com/s/.../panelapps.png
https://dl.dropboxusercontent.com/s/...anellogout.png
https://dl.dropboxusercontent.com/s/...nelwindows.png

All the applications have had their manpages updated ( except for the prefs gui's which don't require them ), please read them first they also contain my email address for bug reports.

Hash's
Code:

ad1e72cc4723a0655e249a1b8b26cffa  LFSApplications-0.0.3.tar.gz
7a6b87c34a115ac4b28962a502255644  LFSDesktop-0.0.12.tar.gz
13508c2db00752f6933c0374a5f154a5  LFSDesktopProject-507.tar.gz
bc83b47fe073c12d9da4d8ec00e1fd85  LFSPanel-0.0.3.tar.gz
cf191bce268641d38e9e44d5178b6849  LFSSetWallpaper-0.0.6.tar.gz
853e9bd5577f934f5fe7b00cacb4735a  LFSToolKit-0.0.8.tar.gz
72ff1eefe12d235bb135c44b3786ba9c  LFSWManager-0.0.15.tar.gz

More to come, enjoy!

Keith Hedger 10-28-2015 11:43 AM

2 Attachment(s)
New Stuff!!

First update the new toolkit here:
https://dl.dropboxusercontent.com/s/...t-0.0.9.tar.gz

0.0.9
Fixed menu button popups appearing on wrong monitor.
Added LFSTK_gadgetOnMonitor to gadget class.
Improved themed icon search.
Adde icon size to menuitemstruct - must be set if adding icon.
Added search in /usr/share/icons/gnome when searching for themed icon.
Fixed menu button with sub menus not showing icon.
Massive speed up looking up themed icon in libclass.
Added execute one line command to lib class.
Added find themed icon to lib class.
Stopped menu going off screen to top/bottom.
Stopped menu going off screen to left/right.
Speed and resource improvements to menu button class.
Menu winow created in menuButton constructor.
Cached menuitem lists.
Added create pixmaps from file to lib class.
Added icons to buttons.

Next the desktop here:
https://dl.dropboxusercontent.com/s/...-0.0.13.tar.gz

0.0.13
Label is centred in popups if no icon available.
Get themed icons for popups from lib class.
Made popup button icons themed.
Added icons to popup buttons.
No longer creates/deletes popup windows every time.
Construct popups at start up.

Next the panel here:
https://dl.dropboxusercontent.com/s/...l-0.0.4.tar.gz

0.0.4
Panels can now be on any edge - 'panelgrav' in prefs PANELNORTH=1,PANELEAST=2,PANELSOUTH=3,PANELWEST=4.
Entries now sorted.
Added icons to submenus.
Added icons to catagorys.
Redone appmenu to build window at startup.
Added window list on current desktop, 'w' in prefs gadget string.
Removed unnecessary strdups.
Icons use icons from desktop theme if possible.
Refuse to run an empty panel.
Updated manpage.
Added spacer gadget 'S' ( multiple spacers ARE allowed ).
Duplicate gadgets disallowed.
Right gadgets now ordered left to right as expected from config string.
Fixed segfault when not displaying clock.
Removed forced extra spacing.
Added Icons to panel buttons.

Or the whole thing here:
https://dl.dropboxusercontent.com/s/...ect-544.tar.gz

Screen shot of the new panel:
Attachment 19890
And themed icons in the desktop popups:
Attachment 19892

md5sum's
a93077afb214aab667658bfc1e19a612 LFSApplications-0.0.3.tar.gz
bad642e43f12ed830e8cad7c7968686a LFSDesktop-0.0.13.tar.gz
cab087f6c42c8e3607c18847681b53cc LFSDesktopProject-544.tar.gz
d7da2f714e3aad18be46d8c883a036f4 LFSPanel-0.0.4.tar.gz
206adcb57eac7636488532c436dfea1c LFSSetWallpaper-0.0.6.tar.gz
5cfacfea858ff8cc9af5feb9479967f5 LFSToolKit-0.0.9.tar.gz
603ca03d5db9fb355ecc8e605ff473e4 LFSWManager-0.0.15.tar.gz

As usual after updating the tool kit you MUST recompile all the parts, so best to download the 'LFSDesktopProject' archive.

Lots of changes to the panel, you can now have it/them against any edge of any monitor orientaion is adjusted to suit, see the man page for details.
Themed icons in buttons on the desktop and from the panel as you can see from the screen shot.

TODO:
Custom launchers for the panels.
Redo the icons with Cairo as XLibs drawing doesn't do semi transparent very well.
Pref's GUI for the panels.


All times are GMT -5. The time now is 07:02 AM.