Recommendations for SD cards

It’s in /etc/xdg, I think.

3 Likes

Nothing picom related in there either:

ls /etc/xdg
autostart    gstomx-rpi.conf  lxpanel    menus    pcmanfm  systemd         user-dirs.conf
gstomx.conf  libfm            lxsession  openbox  qt5ct    Trolltech.conf  user-dirs.defaults

Should I reinstall it?

1 Like

Then your installation is probably just screwing with you. :sweat_smile:
Just copy the confing form @lxnauta into ~/.confing/picom/picom.conf

Or try mine - but it is optimised for my desktop and not RPi so it may get things worst.

config
#################################
# Backend
#################################

# Backend to use: "xrender" or "glx".
# GLX backend is typically much faster but depends on a sane driver.
backend = "glx";

#################################
# GLX backend
#################################

glx-no-stencil = true;

# GLX backend: Copy unmodified regions from front buffer instead of redrawing them all.
# My tests with nvidia-drivers show a 10% decrease in performance when the whole screen is modified,
# but a 20% increase when only 1/4 is.
# My tests on nouveau show terrible slowdown.
glx-copy-from-front = false;

# GLX backend: Use MESA_copy_sub_buffer to do partial screen update.
# My tests on nouveau shows a 200% performance boost when only 1/4 of the screen is updated.
# May break VSync and is not available on some drivers.
# Overrides --glx-copy-from-front.
# glx-use-copysubbuffermesa = true;

# GLX backend: Avoid rebinding pixmap on window damage.
# Probably could improve performance on rapid window content changes, but is known to break things on some drivers (LLVMpipe).
# Recommended if it works.
# glx-no-rebind-pixmap = true;

# GLX backend: GLX buffer swap method we assume.
# Could be undefined (0), copy (1), exchange (2), 3-6, or buffer-age (-1).
# undefined is the slowest and the safest, and the default value.
# copy is fastest, but may fail on some drivers,
# 2-6 are gradually slower but safer (6 is still faster than 0).
# Usually, double buffer means 2, triple buffer means 3.
# buffer-age means auto-detect using GLX_EXT_buffer_age, supported by some drivers.
# Useless with --glx-use-copysubbuffermesa.
# Partially breaks --resize-damage.
# Defaults to undefined.
#glx-swap-method = "undefined";

#################################
# Shadows
#################################

# Enabled client-side shadows on windows.
shadow = true;
# The blur radius for shadows. (default 12)
shadow-radius = 5;
# The left offset for shadows. (default -15)
shadow-offset-x = -1;
# The top offset for shadows. (default -15)
shadow-offset-y = -1;
# The translucency for shadows. (default .75)
shadow-opacity = 0.5;

# Set if you want different colour shadows
# shadow-red = 0.0;
# shadow-green = 0.0;
# shadow-blue = 0.0;

# The shadow exclude options are helpful if you have shadows enabled. Due to the way picom draws its shadows, certain applications will have visual glitches
# (most applications are fine, only apps that do weird things with xshapes or argb are affected).
# This list includes all the affected apps I found in my testing. The "! name~=''" part excludes shadows on any "Unknown" windows, this prevents a visual glitch with the XFWM alt tab switcher.
shadow-exclude = [
    "! name~=''",
    "name = 'Notification'",
    "name = 'Plank'",
    "name = 'Docky'",
    "name = 'Kupfer'",
    "name = 'xfce4-notifyd'",
    "name = 'cpt_frame_window'",
    "name *= 'VLC'",
    "name *= 'compton'",
    "name *= 'picom'",
    "name *= 'Chromium'",
    "name *= 'Chrome'",
    "class_g ?= 'polybar'",
    "class_g = 'Firefox' && argb",
    "class_g = 'smplayer'",
    "class_g = 'Conky'",
    "class_g ?= 'Dmenu'",
    "class_g ?= 'Dunst'",
    "class_g = 'Kupfer'",
    "class_g = 'Synapse'",
    "class_g ?= 'Notify-osd'",
    "class_g ?= 'Cairo-dock'",
    "class_g ?= 'Xfce4-notifyd'",
    "class_g ?= 'Xfce4-power-manager'",
    "class_g ?= 'i3-frame'",
    "_GTK_FRAME_EXTENTS@:c",
    "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
];
# Avoid drawing shadow on all shaped windows (see also: --detect-rounded-corners)
shadow-ignore-shaped = false;

#################################
# Opacity
#################################

inactive-opacity = 0.80;
active-opacity = 1.00;
frame-opacity = 1.00;
inactive-opacity-override = false;

# Dim inactive windows. (0.0 - 1.0)
inactive-dim = 0.0;
# Do not let dimness adjust based on window opacity.
#inactive-dim-fixed = true;
# Blur background of transparent windows. Bad performance with X Render backend. GLX backend is preferred.
blur-background = true;
# Blur background of opaque windows with transparent frames as well.
# blur-background-frame = true;
# Do not let blur radius adjust based on window opacity.
blur-background-fixed = false;
blur-background-exclude = [
    "window_type = 'dock'",
    "window_type = 'desktop'"
];

blur:
{
#    method = "gaussian";
#    size = 10;
#    deviation = 5.0;
    kernel="3x3box";
};

opacity-rule = [
#    "95:class_g = 'URxvt' && _NET_WM_STATE@:32a *= 'NET_WM_STATE_FOCUSED'",
#    "98:class_g = 'Alacritty' && _NET_WM_STATE@:32a *= 'NET_WM_STATE_FOCUSED'",
    "100:class_g = 'Alacritty' && _NET_WM_STATE@:32a *= 'NET_WM_STATE_FOCUSED'",
    "100:name *?= 'Conky'",
#    "50:class_g = 'Dmenu'",
    "100:name *?= 'smplayer'",
    "100:class_g= 'Gimp'",
#    "100:name *?= 'Screenshot'",
    "100:class_g = 'VirtualBox'",
    "100:name *?= 'VLC'",
    "50:class_g = 'Dunst'",
    "15:class_g = 'i3lock'",
    "80:class_g = 'Thunar' && !_NET_WM_STATE@:32a *= '_NET_WM_STATE_FOCUSED'",
    "95:name *?= 'firefox' && !_NET_WM_STATE@:32a *= '_NET_WM_STATE_FOCUSED'",
#    "100:class_g = 'URxvt' && !_NET_WM_STATE@:32a",
#    "0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'",
#    "100:_NET_WM_STATE@:32a *= '_NET_WM_STATE_STICKY'",
];


#################################
# Fading
#################################
# Fade windows during opacity changes.
fading = true;
# The time between steps in a fade in milliseconds. (default 10).
fade-delta = 1;
# Opacity change between steps while fading in. (default 0.028).
fade-in-step = 0.05;
# Opacity change between steps while fading out. (default 0.03).
fade-out-step = 0.05;
# Fade windows in/out when opening/closing
no-fading-openclose = true;

# Specify a list of conditions of windows that should not be faded.
fade-exclude = [ ];

#################################
# Other
#################################
# Try to detect WM windows and mark them as active.
mark-wmwin-focused = true;
# Mark all non-WM but override-redirect windows active (e.g. menus).
mark-ovredir-focused = true;
# Use EWMH _NET_WM_ACTIVE_WINDOW to determine which window is focused instead of using FocusIn/Out events.
# Usually more reliable but depends on a EWMH-compliant WM.
use-ewmh-active-win = true;
# Detect rounded corners and treat them as rectangular when --shadow-ignore-shaped is on.
detect-rounded-corners = true;

# Detect _NET_WM_OPACITY on client windows, useful for window managers not passing _NET_WM_OPACITY of client windows to frame windows.
# This prevents opacity being ignored for some apps.
# For example without this enabled my xfce4-notifyd is 100% opacity no matter what.
detect-client-opacity = true;

# Specify refresh rate of the screen.
# If not specified or 0, picom will try detecting this with X RandR extension.
refresh-rate = 0;

# Vertical synchronization: match the refresh rate of the monitor
vsync = true;

# Enable DBE painting mode, intended to use with VSync to (hopefully) eliminate tearing.
# Reported to have no effect, though.
dbe = false;

# Limit picom to repaint at most once every 1 / refresh_rate second to boost performance.
# This should not be used with --vsync drm/opengl/opengl-oml as they essentially does --sw-opti's job already,
# unless you wish to specify a lower refresh rate than the actual value.
#sw-opti = true;

# Unredirect all windows if a full-screen opaque window is detected, to maximize performance for full-screen windows, like games.
# Known to cause flickering when redirecting/unredirecting windows.
unredir-if-possible = false;

# Specify a list of conditions of windows that should always be considered focused.
focus-exclude = [ ];

# Use WM_TRANSIENT_FOR to group windows, and consider windows in the same group focused at the same time.
detect-transient = true;
# Use WM_CLIENT_LEADER to group windows, and consider windows in the same group focused at the same time.
# WM_TRANSIENT_FOR has higher priority if --detect-transient is enabled, too.
detect-client-leader = true;

#################################
# Window type settings
#################################
wintypes:
{
    dropdown_menu =
    {
        fade = true;
        shadow = false;
        opacity = 0.90;
        focus = true;
    };

    popup_menu =
    {
        fade = true;
        shadow = false;
        opacity = 0.90;
        focus = true;
    };


    tooltip =
    {
        # fade: Fade the particular type of windows.
        fade = true;
        # shadow: Give those windows shadow
        shadow = false;
        # opacity: Default opacity for the type of windows.
        opacity = 0.90;
        # focus: Whether to always consider windows of this type focused.
        focus = true;
    };

#TODO check
    menu =
    {
        fade = true;
        shadow = false;
        opacity = 0.50;
        focus = true;
    };



    fullscreen =
    {
        fade = true;
        shadow = false;
        opacity = 0.50;
        focus = true;
    };

    notification =
    {
        fade = true;
        shadow = false;
        opacity = 0.50;
        focus = true;
    };
};

I do not think it is necessary. You clearly have transparency so the picom is working. Creating a config file is no issue and usually reinstall will not fix it.

3 Likes

Right! Hard to admit but it feels like that :sweat_smile:

Alright. I gonna try this and get back with the report.

3 Likes

Weird indeed. In /etc/xdg I’ve got this picom.conf file, but I don’t know if it’s going to do any good putting it in there… But I would :slight_smile:

Summary

#################################

Shadows

#################################

Enabled client-side shadows on windows. Note desktop windows

(windows with ‘_NET_WM_WINDOW_TYPE_DESKTOP’) never get shadow,

unless explicitly requested using the wintypes option.

shadow = false

shadow = true;

The blur radius for shadows, in pixels. (defaults to 12)

shadow-radius = 12

shadow-radius = 7;

The opacity of shadows. (0.0 - 1.0, defaults to 0.75)

shadow-opacity = .75

The left offset for shadows, in pixels. (defaults to -15)

shadow-offset-x = -15

shadow-offset-x = -7;

The top offset for shadows, in pixels. (defaults to -15)

shadow-offset-y = -15

shadow-offset-y = -7;

Avoid drawing shadows on dock/panel windows. This option is deprecated,

you should use the wintypes option in your config file instead.

no-dock-shadow = false

Don’t draw shadows on drag-and-drop windows. This option is deprecated,

you should use the wintypes option in your config file instead.

no-dnd-shadow = false

Red color value of shadow (0.0 - 1.0, defaults to 0).

shadow-red = 0

Green color value of shadow (0.0 - 1.0, defaults to 0).

shadow-green = 0

Blue color value of shadow (0.0 - 1.0, defaults to 0).

shadow-blue = 0

Do not paint shadows on shaped windows. Note shaped windows

here means windows setting its shape through X Shape extension.

Those using ARGB background is beyond our control.

Deprecated, use

shadow-exclude = ‘bounding_shaped’

or

shadow-exclude = ‘bounding_shaped && !rounded_corners’

instead.

shadow-ignore-shaped = ‘’

Specify a list of conditions of windows that should have no shadow.

examples:

shadow-exclude = “n:e:Notification”;

shadow-exclude = []

shadow-exclude = [
“name = ‘Notification’”,
“class_g = ‘Conky’”,
“class_g ?= ‘Notify-osd’”,
“class_g = ‘Cairo-clock’”,
“_GTK_FRAME_EXTENTS@:c”
];

Specify a X geometry that describes the region in which shadow should not

be painted in, such as a dock window region. Use

shadow-exclude-reg = “x10+0+0”

for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.

shadow-exclude-reg = “”

Crop shadow of a window fully on a particular Xinerama screen to the screen.

xinerama-shadow-crop = false

#################################

Fading

#################################

Fade windows in/out when opening/closing and when opacity changes,

unless no-fading-openclose is used.

fading = false

fading = true

Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)

fade-in-step = 0.028

fade-in-step = 0.03;

Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)

fade-out-step = 0.03

fade-out-step = 0.03;

The time between steps in fade step, in milliseconds. (> 0, defaults to 10)

fade-delta = 10

Specify a list of conditions of windows that should not be faded.

fade-exclude = []

Do not fade on window open/close.

no-fading-openclose = false

Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.

no-fading-destroyed-argb = false

#################################

Transparency / Opacity

#################################

Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)

inactive-opacity = 1

inactive-opacity = 0.8;

Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)

frame-opacity = 1.0

frame-opacity = 0.7;

Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0)

menu-opacity = 1.0

Let inactive opacity set by -i override the ‘_NET_WM_OPACITY’ values of windows.

inactive-opacity-override = true

inactive-opacity-override = false;

Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)

active-opacity = 1.0

Dim inactive windows. (0.0 - 1.0, defaults to 0.0)

inactive-dim = 0.0

Specify a list of conditions of windows that should always be considered focused.

focus-exclude = []

focus-exclude = [ “class_g = ‘Cairo-clock’” ];

Use fixed inactive dim value, instead of adjusting according to window opacity.

inactive-dim-fixed = 1.0

Specify a list of opacity rules, in the format PERCENT:PATTERN,

like 50:name *= "Firefox". picom-trans is recommended over this.

Note we don’t make any guarantee about possible conflicts with other

programs that set ‘_NET_WM_WINDOW_OPACITY’ on frame or client windows.

example:

opacity-rule = [ “80:class_g = ‘URxvt’” ];

opacity-rule = []

#################################

Background-Blurring

#################################

Parameters for background blurring, see the BLUR section for more information.

blur-method =

blur-size = 12

blur-deviation = false

Blur background of semi-transparent / ARGB windows.

Bad in performance, with driver-dependent behavior.

The name of the switch may change without prior notifications.

blur-background = false

Blur background of windows when the window frame is not opaque.

Implies:

blur-background

Bad in performance, with driver-dependent behavior. The name may change.

blur-background-frame = false

Use fixed blur strength rather than adjusting according to window opacity.

blur-background-fixed = false

Specify the blur convolution kernel, with the following format:

example:

blur-kern = “5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1”;

blur-kern = ‘’

blur-kern = “3x3box”;

Exclude conditions for background blur.

blur-background-exclude = []

blur-background-exclude = [
“window_type = ‘dock’”,
“window_type = ‘desktop’”,
“_GTK_FRAME_EXTENTS@:c”
];

#################################

General Settings

#################################

Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.

daemon = false

Specify the backend to use: xrender, glx, or xr_glx_hybrid.

xrender is the default one.

backend = ‘glx’

backend = “xrender”;

Enable/disable VSync.

vsync = false

vsync = true

Enable remote control via D-Bus. See the D-BUS API section below for more details.

dbus = false

Try to detect WM windows (a non-override-redirect window with no

child that has ‘WM_STATE’) and mark them as active.

mark-wmwin-focused = false

mark-wmwin-focused = true;

Mark override-redirect windows that doesn’t have a child window with ‘WM_STATE’ focused.

mark-ovredir-focused = false

mark-ovredir-focused = true;

Try to detect windows with rounded corners and don’t consider them

shaped windows. The accuracy is not very high, unfortunately.

detect-rounded-corners = false

detect-rounded-corners = true;

Detect ‘_NET_WM_OPACITY’ on client windows, useful for window managers

not passing ‘_NET_WM_OPACITY’ of client windows to frame windows.

detect-client-opacity = false

detect-client-opacity = true;

Specify refresh rate of the screen. If not specified or 0, picom will

try detecting this with X RandR extension.

refresh-rate = 60

refresh-rate = 0

Limit picom to repaint at most once every 1 / ‘refresh_rate’ second to

boost performance. This should not be used with

vsync drm/opengl/opengl-oml

as they essentially does sw-opti’s job already,

unless you wish to specify a lower refresh rate than the actual value.

sw-opti =

Use EWMH ‘_NET_ACTIVE_WINDOW’ to determine currently focused window,

rather than listening to ‘FocusIn’/‘FocusOut’ event. Might have more accuracy,

provided that the WM supports it.

use-ewmh-active-win = false

Unredirect all windows if a full-screen opaque window is detected,

to maximize performance for full-screen windows. Known to cause flickering

when redirecting/unredirecting windows.

unredir-if-possible = false

Delay before unredirecting the window, in milliseconds. Defaults to 0.

unredir-if-possible-delay = 0

Conditions of windows that shouldn’t be considered full-screen for unredirecting screen.

unredir-if-possible-exclude = []

Use ‘WM_TRANSIENT_FOR’ to group windows, and consider windows

in the same group focused at the same time.

detect-transient = false

detect-transient = true

Use ‘WM_CLIENT_LEADER’ to group windows, and consider windows in the same

group focused at the same time. ‘WM_TRANSIENT_FOR’ has higher priority if

detect-transient is enabled, too.

detect-client-leader = false

detect-client-leader = true

Resize damaged region by a specific number of pixels.

A positive value enlarges it while a negative one shrinks it.

If the value is positive, those additional pixels will not be actually painted

to screen, only used in blur calculation, and such. (Due to technical limitations,

with use-damage, those pixels will still be incorrectly painted to screen.)

Primarily used to fix the line corruption issues of blur,

in which case you should use the blur radius value here

(e.g. with a 3x3 kernel, you should use --resize-damage 1,

with a 5x5 one you use --resize-damage 2, and so on).

May or may not work with –glx-no-stencil. Shrinking doesn’t function correctly.

resize-damage = 1

Specify a list of conditions of windows that should be painted with inverted color.

Resource-hogging, and is not well tested.

invert-color-include = []

GLX backend: Avoid using stencil buffer, useful if you don’t have a stencil buffer.

Might cause incorrect opacity when rendering transparent content (but never

practically happened) and may not work with blur-background.

My tests show a 15% performance boost. Recommended.

glx-no-stencil = false

GLX backend: Avoid rebinding pixmap on window damage.

Probably could improve performance on rapid window content changes,

but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).

Recommended if it works.

glx-no-rebind-pixmap = false

Disable the use of damage information.

This cause the whole screen to be redrawn everytime, instead of the part of the screen

has actually changed. Potentially degrades the performance, but might fix some artifacts.

The opposing option is use-damage

no-use-damage = false

use-damage = true

Use X Sync fence to sync clients’ draw calls, to make sure all draw

calls are finished before picom starts drawing. Needed on nvidia-drivers

with GLX backend for some users.

xrender-sync-fence = false

GLX backend: Use specified GLSL fragment shader for rendering window contents.

See compton-default-fshader-win.glsl and compton-fake-transparency-fshader-win.glsl

in the source tree for examples.

glx-fshader-win = ‘’

Force all windows to be painted with blending. Useful if you

have a glx-fshader-win that could turn opaque pixels transparent.

force-win-blend = false

Do not use EWMH to detect fullscreen windows.

Reverts to checking if a window is fullscreen based only on its size and coordinates.

no-ewmh-fullscreen = false

Dimming bright windows so their brightness doesn’t exceed this set value.

Brightness of a window is estimated by averaging all pixels in the window,

so this could comes with a performance hit.

Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)

max-brightness = 1.0

Make transparent windows clip other windows like non-transparent windows do,

instead of blending on top of them.

transparent-clipping = false

Set the log level. Possible values are:

“trace”, “debug”, “info”, “warn”, “error”

in increasing level of importance. Case doesn’t matter.

If using the “TRACE” log level, it’s better to log into a file

using –log-file, since it can generate a huge stream of logs.

log-level = “debug”

log-level = “warn”;

Set the log file.

If –log-file is never specified, logs will be written to stderr.

Otherwise, logs will to written to the given file, though some of the early

logs might still be written to the stderr.

When setting this option from the config file, it is recommended to use an absolute path.

log-file = ‘/path/to/your/log/file’

Show all X errors (for debugging)

show-all-xerrors = false

Write process ID to a file.

write-pid-path = ‘/path/to/your/log/file’

Window type settings

‘WINDOW_TYPE’ is one of the 15 window types defined in EWMH standard:

“unknown”, “desktop”, “dock”, “toolbar”, “menu”, “utility”,

“splash”, “dialog”, “normal”, “dropdown_menu”, “popup_menu”,

“tooltip”, “notification”, “combo”, and “dnd”.

Following per window-type options are available: ::

fade, shadow:::

Controls window-type-specific shadow and fade settings.

opacity:::

Controls default opacity of the window type.

focus:::

Controls whether the window of this type is to be always considered focused.

(By default, all window types except “normal” and “dialog” has this on.)

full-shadow:::

Controls whether shadow is drawn under the parts of the window that you

normally won’t be able to see. Useful when the window has parts of it

transparent, and you want shadows in those areas.

redir-ignore:::

Controls whether this type of windows should cause screen to become

redirected again after been unredirected. If you have unredir-if-possible

set, and doesn’t want certain window to cause unnecessary screen redirection,

you can set this to true.

wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
dock = { shadow = false; }
dnd = { shadow = false; }
popup_menu = { opacity = 0.8; }
dropdown_menu = { opacity = 0.8; }
};

Edit (I had pasted this inside the hidden contents above):
I was gettiing more than 100% CPU usage with the default ~/.config/picom.conf file (one less directory in my system than the path @vlkon mentioned), after changing the contents of the file it dropped to 1 - 3 %.

1 Like

below are screenshot from feh ( i zoom in on pi4 screenshot ) then screenshot on pbp

stock

stock-picom_i3

after

i3-picom-after-change

it a conf that work for me …

@pebcak did check if picom installed ?

3 Likes

Thanks vlkon, lxn, and shjim for having my back on this one.
This was definately not in my ball park.

Pudge

3 Likes

@Shjim, @vlkon, @lxnauta

Thank you so much guys for helping me out with this issue!
Making the new picom.conf worked a charm! You nailed it! Great team work!
The CPU usage for picom has fallen below 1% !!

picom

And I have a confession to make: I was looking at the content of the wrong SD card all along. That of the Raspberry OS. I am so sorry for creating confusion. And ashamed :man_facepalming:t5:

And thanks @Pudge for being there all the time! It means a lot!

3 Likes

image

:blush:

3 Likes

It happens to me a looooooooooottt! In this case it seems like a multiple SD disorder. :slight_smile:

2 Likes

Comforting to know I’m not alone :sweat_smile:

Sounds quite serious! Mine is getting out of control.

2 Likes

@pebcak

How you do on EOS i3 ? it new to wm friendly ( less mouse click & move is alway good but learn curve )

1 Like

Thanks @Shjim for checking on me!

I am taking it slowly but I am making small progresses. I am beginning to appreciate the whole concept of WMs much more now. I just need to re-wire myself to learn to do things differently.

Honestly, since the initial install of EnOS i3wm on Rpi, I haven’t been using it that much. However I have a very basic (and rather “ugly” looking at the moment) install of Arch with i3WM on my laptop now that I would like to configure and use it more to get to know it better.

I have been thinking to create a new thread perhaps to post my questions. I do appreciate all the help I’ve got so far and hope to be getting still on my journey towards the universe of WMs.

1 Like

pi best place for learn … easy install (few minute ) if break it ( you will like we all do ) :rofl: just few min you up + run again

1 Like

That’s for sure :sweat_smile:

And you are right about the advantages of pi for learning.

However on this laptop, I use btrfs with subvolumes. It’s a multiboot (Arch only for now) system. I could have the i3WM’s subvolume as a test system. I could also snapshot it to have my back covered if something breaks badly.

My thought was if i make an Arch install, then I can take everything from step one to configure the system and the WM. And since it’s a laptop, I can use i3 when away from home as well to get more exposure.

2 Likes

there no wrong | right way … you do what work best for you :+1: it all about fun + have fun while learn. :heart_eyes: i learn new thing daily . Wonder of linux :vulcan_salute:

3 Likes

Thanks @Shjim for your encouragement!
I truly appreciate your open and positive attitude!

:penguin: :enos_flag: :purple_heart:

1 Like

Tonight I am working on the next version of the install script which will be
endeavouros-ARM-install-V2.5.sh

This version handles the Windows Managers completely different from V2.4 and is in compliance with new endeavouros ISO that came out recently.

All the configuration is now done with packages endeavouros-skel-i3wm-1.0-8,
eos-skel-ce-sway-1.0-1, and eos-skel-ce-bspwm-1.0-4

Package selection is now handled differently also.

Good news. I did a test install of i3wm with endeavouos-ARM-install-2.5 and it booted up with picom working with less than 1 % CPU. So with the latest configs from joe, all seems well from my limited experience with i3wm. @shjim might spot some problems with his eagle eye.

Pudge

4 Likes

That sounds terrific!
I would like very much to try the new script. And it sounds great that the new configs has resolved the picom’s high cpu usage.

Thanks @Pudge and the rest of the EnOS team for all the fantastic work you do!

PS- I ended up installing EnOS-i3wm on my laptop as well :grinning:

4 Likes

The endeavouros-ARM-install-V2.5.sh is now available when one does a

git clone https://github.com/endeavouros-arm/install-script.git

Not tested completely. I did 6 test installs, four of which involves the EndeavourOS theming.
XFCE4, i3wm, sway, and bspwm.

If troubles appear besides the known problems, please report.
To install 64 bit OS on a RPi 4b 8GB ram still needs the work around.
A 64 bit OS still cannot be installed on a USB SSD.
SWAY on 64 bit still does not work, lightdm login loop.

EDIT:

I will edit this post with any other problems that are encountered.

Gnome with a 32 Bit OS does not work. I think it tries to run on Wayland out of the box. I have not experimented yet on getting rid of Wayland from the CLI tty console.

Gnome with a 64 Bit OS on uSD, RPi4b 4GB and 8GB works. Originally boots in Wayland, but runs smoother on x11.

Budgie with a 32 Bit OS does not work. It boots to lightdm, but after logging in the OS resets and goes back to the lightdm screen.

Budgie with a 64 Bit OS on uSD, RPi4b 4GB and 8GB works.

Pudge

3 Likes