Custom layout based on "Cuptertino" - problems with plank and applets

Let me start by saying that I absolutely love Ubuntu MATE, please don't think of this as a criticism. MATE on Debian is garbage compared to this amazing distro (which is a shame, as it means I can't use the teams' improvements on i386 or PowerPC). I absolutely love the fact that xscreensaver modules work (even if they can't be customized from the GUI), and that mounting a cifs (etc.) share from Caja uses gvfs meaning the share is actually mounted locally (unlike Kde!).

I'm trying to create a custom Ubuntu MATE based image for sale on second-hand computers at a local charity that I occasionally volunteer for, as well as for use by family and friends. So just changing it to suit in the GUI isn't an option, i'd like the distro to look this way after the user goes through OEM Setup.

Previously I had been using "mate dock applet", to give a Windows 7 / 10 look ("Redmond" behaves like 95 - Vista). But I understand this has been deprecated. So I decided to base my default layout on "Cupertino".

Anyway, I'm a bit confused about the logic written into both mate-tweak (when changing layouts) , and the mate session manager itself. The crux of the problem is that plank does not start up, and when I open "mate-tweak", the "Use Dock" item is not selected.

I have a gschema override set as follows (which worked previously for my older layout:

[org.mate.panel]
default-layout='eleven--Plus-tweak'

And I have the following files in /usr/share/mate-panel/layouts/

eleven--Plus-tweak.dock :

plank

eleven--Plus-tweak.layout :

[Toplevel top]
expand=true
orientation=top
size=28

[Object mate-menu]
object-type=applet
applet-iid=MateMenuAppletFactory::MateMenuApplet
toplevel-id=top
position=0
locked=true

[Object appmenuapplet]
locked=true
position=10
toplevel-id=top
applet-iid=AppmenuAppletFactory::AppmenuApplet
object-type=applet

[Object notification-area]
object-type=applet
applet-iid=NotificationAreaAppletFactory::NotificationArea
toplevel-id=top
position=10
panel-right-stick=true
locked=true

[Object indicatorappletcomplete]
object-type=applet
applet-iid=IndicatorAppletCompleteFactory::IndicatorAppletComplete
toplevel-id=top
position=0
panel-right-stick=true
locked=true

This was getting annoying, and I noticed that saving a custom theme from mate-tweak creates a ".panel" file - but when this file is in place, plank appears, but none of the panel applets get loaded!!

eleven--Plus-tweak.panel :

[general]
default-theme='eleven'
object-id-list=['mate-menu', 'appmenuapplet', 'notification-area', 'indicatorappletcomplete']
toplevel-id-list=['top']

[toplevels/top]
expand=true
orientation='top'
screen=0
size=28

[objects/mate-menu]
applet-iid='MateMenuAppletFactory::MateMenuApplet'
locked=true
object-type='applet'
position=0
toplevel-id='top'

[objects/appmenuapplet]
applet-iid='AppmenuAppletFactory::AppmenuApplet'
locked=true
object-type='applet'
position=10
toplevel-id='top'

[objects/indicatorappletcomplete]
applet-iid='IndicatorAppletCompleteFactory::IndicatorAppletComplete'
locked=true
object-type='applet'
panel-right-stick=true
position=0
toplevel-id='top'

[objects/notification-area]
applet-iid='NotificationAreaAppletFactory::NotificationArea'
locked=true
object-type='applet'
panel-right-stick=true
position=10
toplevel-id='top'

Can anyone from the dev team help? I'd really love to be providing this distro on cheap computers for my local area, I had already had some success with this pre-covid. The distro is definitely very solid IMHO! :+1: :smile:

Hi @rbshep78,

I am not from the dev team, however, I noticed your custom layout is using mate-menu, which was removed from the default installation several releases ago. Do you have this package provided in your custom image? Most layouts are using Brisk menu now.

Yes i am, its visible in the (first) screenshot.... i just have a dconf override to remove the "menu" text.

And yes its a shame.... i hope it continues to be developed for other distros and spins though!

Seems like its a decision between plank or applets at this stage, not both :frowning:

Would it have been a better idea to post this in the dev forum?

Probably a mate-tweak github repository is the best place to have a feedback on this issue.

In theory, that sounds right for if I was changing layouts "on the fly" - but in this case, i'm not, it's all about how the desktop would appear to a newly created user account. So, i'm fairly convinced it's about the session manager, how it parses the files in /usr/share/mate-panel/layouts/ and how plank is invoked from that (for the first problem - no idea about the second problem).

Perhaps I might need to work out how to create initial dconf settings (as opposed to schema overrides) - but last time I looked, I would have to copy a binary dconf database into /etc/skel / user account :smiling_face_with_tear: . Perhaps this can be done another way.

Any ideas on how to refer this to the dev team @ironfoot as being an issue with the session manager?

There are dev and qa groups in this forum, you may try tagging them:
https://ubuntu-mate.community/g/UbuntuMATE
https://ubuntu-mate.community/g/QATeam

Btw, what happens when you choose some default layout with dock in your gschema override (e.g. 'eleven')? Does it work as intended?