- This topic has 17 replies, 6 voices, and was last updated Sep 23-7:48 am by blur13.
-
AuthorPosts
-
September 15, 2022 at 5:03 pm #89033Member
Borg
There seems to be problem with setting desktop wallpaper when you
use Minimal-IceWM and no desktop wallpaper (just solid color).
It seems that default wallpaper is carried from slimski login manager?I had to slap this patch to desktop-session to make startup work.
I of course also added this to IceWM startup:
desktop-session-wallpaperPatch is hacky, just to make stuff work on my install.
General question is, why IceWM minimal has startup disabled?--- desktop-session 2022-08-25 15:06:52.458897138 +0200 +++ /usr/local/bin/desktop-session 2022-08-25 15:03:08.488431643 +0200 @@ -135,6 +135,16 @@ #ADDED BY DAVE ####FROM START#### min_check() { + # Borg + # Keep startup for icewm-minimal + if [ "$im" = "minimal" ]; then + #Enable window manager startup file if previously disabled + if [ -f "$HOME/.$wm/startup.disabled" ]; then + echo_cmd mv $HOME/.$wm/startup.disabled $HOME/.$wm/startup + fi + return + fi + #Check if icon manager code is not a minimal session if [ "$im" != "min" ] && [ "$im" != "minimal" ]; then #Enable window manager startup file if previously disabled- This topic was modified 7 months, 3 weeks ago by Borg.
September 15, 2022 at 5:13 pm #89035Moderator
christophe
::General question is, why IceWM minimal has startup disabled?
Minimal wm entries are for debugging. The intended way of daily use is to use Icewm, and pare down the services/programs that you have automatically starting.
confirmed antiX frugaler, since 2019
September 15, 2022 at 7:59 pm #89063Member
Borg
September 16, 2022 at 1:54 pm #89121Forum Admin
Dave
::Uhm… What is the difference with running min-icewm with your patch and running icewm with the options in ~/.desktop-session/desktop-session.conf set to false? I think you would only need to change load_conky to false and it would be pretty much the same (unless you are also loading conky in your startup file).
As christophe says the min- options are basically to load only the window manager so that you can fix any changes you made in the startup configuration or disable options from the iso default if they are too much for an older spec machine (without having to fall back to a TTY).
- This reply was modified 7 months, 3 weeks ago by Dave.
Computers are like air conditioners. They work fine until you start opening Windows. ~Author Unknown
September 17, 2022 at 11:35 am #89186Member
Borg
::As I said, the problem is that default desktop wallpaper gets carried to Min-IceWM session.
I want to have very minimal X setup (super light for resources) so I set no desktop wallpaper (color fill).
Unfortunately, when running Min-IceWM this is not honored. It seems ‘desktop-session-wallpaper’ is not called
on Min-IceWM session, with might be right or wrong depending what default wallpaper is (picture or solid fill).After inspecting ‘desktop-session’ I was not really able to figure out why ‘desktop-session-wallpaper’ is
not called. I tried to add it to few places but no luck.
Finaly, I decided to unblock startup and add desktop-session-wallpaper there and it worked.
Its actually better solution because I have some xset customization there as well.Anyway, if Min-IceWM is intended for debuging then leave it as is. No need to confuse anybody.
I have no problem doing patching after install. I pretty much customize anything I touch 🙂- This reply was modified 7 months, 3 weeks ago by Borg.
September 18, 2022 at 6:10 pm #89285Forum Admin
Dave
::Right, I understand why you made the patch.
What I am not understanding is how much of a difference there is enabling the window manager startup with your patch vs running just a plain icewm session after disabling conky startup (all else is disabled by default) in ~/.desktop-session/desktop-session.conf and any “extra” startup items in ~/.desktop-session/startup.It has been a while since I have researched the resource usage and how the defaults should be… If I recall correctly as far as backgrounds go; the background image carried over from the slim login background uses the least resources as this is already loaded in the buffer. The next lowest resource usage was to have an one pixel image on fill repeat (with a plain window manager session without icons as this uses feh to load the image). Then have a solid colour which is loaded via xsetroot. Then any other image setting configuration.
Computers are like air conditioners. They work fine until you start opening Windows. ~Author Unknown
September 19, 2022 at 7:36 pm #89347Member
Borg
::Hmm. Well, thats indeed a very minor stuff about memory usage. I just like Min-IceWM best.
No desktop icons, just simple color fill (no wallpaper as I dont use them).
But thanks for hint about xsetroot.. Maybe I will have little improvement 😉I am kinda minimalistic guy, OS should use as much resources as it needs to do the task.
Everything else should be available to applications. And AntiX is damn great here.
Mem usage <50MB on boot is impressive. It beats my Win2003 here, <130MB on boot 🙂
Okey okey, no sound or advanced GFX drivers, but still.September 21, 2022 at 12:55 pm #89451Member
Borg
::HA! Thx 🙂 I set grub into text mode and also use xsetroot in startup.
Now after boot I see 40MB mem usage 🙂September 21, 2022 at 1:47 pm #89455Memberolsztyn
::If I recall correctly as far as backgrounds go; the background image carried over from the slim login background uses the least resources as this is already loaded in the buffer.
Like Borg, For the sake of minimizing resources I have no desktop icons and no wallpaper, just blank dark background. I use JWM though (not Minimal JWM) for basic functionality, such as sound. Conky purged completely from my system. Initial Slimski background changed to less staring in the eyes when it flashes first.
I am not sure I understand though the other opportunity to minimize resource use, such as the role of xsetroot…
If not too much bother I will appreciate some info… In the interim I will do further research.Live antiX Boot Options (Previously posted by Xecure):
https://antixlinuxfan.miraheze.org/wiki/Table_of_antiX_Boot_ParametersSeptember 21, 2022 at 4:11 pm #89460Member
Borg
::I hope Dave is mistaken. Because while he is right that background is already
loaded, it needs to be kept in memory. Once you use xsetroot to set solid color
it should be freed. So, a bit more memory to use for apps 🙂September 21, 2022 at 5:18 pm #89463Memberolsztyn
::I hope Dave is mistaken. Because while he is right that background is already
loaded, it needs to be kept in memory.What I am not clear is this: Is it still in memory after desktop background is set to ‘no wallpaper’ in desktop settings afterwards, replacing the original slimski background setting…
- This reply was modified 7 months, 2 weeks ago by olsztyn.
Live antiX Boot Options (Previously posted by Xecure):
https://antixlinuxfan.miraheze.org/wiki/Table_of_antiX_Boot_ParametersSeptember 21, 2022 at 7:00 pm #89465Member
blur13
::“Mem usage <50MB on boot is impressive”
How on earth are you getting less than 50MB on startup? Are you starting X? I get less than 50MB if I boot straight into runlevel 3, console, no X. Xorg itself is around 50 MB. But I guess that is system dependent.
September 21, 2022 at 8:04 pm #89478Member
iznit
::I hope Dave is mistaken. Because while he is right that background is already
loaded, it needs to be kept in memory.What I am not clear is this: Is it still in memory after desktop background is set to ‘no wallpaper’ in desktop settings afterwards, replacing the original slimski background setting…
The login manager’s buffer containing “logon screen background pixmap” DOES remain in memory throughout a session, never released until shutdown of the login manager process. [[[the login manager’s buffered image data is separate, and is NOT accessible for use by the window manager.]]]
when you use Minimal-IceWM and no desktop wallpaper (just solid color).
It seems that default wallpaper is carried from slimski login manager?There ya go. The X server immediately creates the appropriately sized buffer object when it launches. The login manager pushes a screenful of pixel data into that buffer prior to exposing the login screen….. and during a “min” login session, nothing else pushes another batch of pixel data into that buffer to displace that pixel data. That is the expected “as intended” behavior of the “min” session.
The buffer(ed) size is dependent upon desktop resolution: width * height * ColorPaletteDepth
If the system has multiple displays attached, X server is maintaining an appropriately sized buffer for each display.
If we spec a solid color image, or even just provide a #ABcdEF color name in configuration….. a buffer still needs to be populated with w*h*C worth of pixel data.
Think about it. Why do we have configuration choices “stretch to fit” vs “centered” etc for a wallpaper setter program? The feh program [[[or similar]]] is invoked to convert the solidcolor or imagefile input source into a “w*h*C worth of pixel data” sized buffer. Same occurs, identical result, if instead the command “xsetroot -solid <colorname>” is used.
Even if a 20Mb imagefile is specified, feh exits immediately after handing off the w*h*C sized pixmap to the X display server.
If we logout from graphical session and a shutdown is not imminent, prior showing loging screen the login manager must overwrite the root window by again pushing its w*h*C sized pixmap to the X display server.
The source code for xsetroot.c is only 550 lines long and we can look at the SetBackgroundToBitmap() to see exactly what is involved
pix = XCreatePixmap(dpy, root, width, height, (unsigned int)DefaultDepth(dpy, screen));
Here, “pix” is the “appropriately sized” pixmap buffer.
The appropriate size is what it is….. and is unaffected by “filesize on disk”, is unaffected by solidcolor vs whatevercolors.What happens if <whichname> window manager is setting the wallpaper. Does it keep a copy of the “original imagefile” in memory? Also what happens behind the curtain when xrandr [[[or arandr]]] changes the current display resolution? When a larger resolution take effect, if the root window background now becomes partially tiled, this observation suggests the window manager does not keep its own in-memory copy of the original “wallpaper” imagefile.
- This reply was modified 7 months, 2 weeks ago by iznit.
September 21, 2022 at 10:34 pm #89498Memberolsztyn
::Thank you @ iznit for detailed description of this process. Greatly appreciated.
It is a great lesson for me save in my notes…Live antiX Boot Options (Previously posted by Xecure):
https://antixlinuxfan.miraheze.org/wiki/Table_of_antiX_Boot_ParametersSeptember 22, 2022 at 8:35 am #89513Member
Borg
::blur13: Yes, I boot into X. First of all, its 32bit VM install, this helps a lot I guess.
I actually didnt tuned that much, just Min-IceWM, no wallpaper and some minor changes 🙂
Here is a screenie from top.Attachments:
-
AuthorPosts
- You must be logged in to reply to this topic.
