Mate-tweak: Reform how panel layout works

This really should be mate-tweak: modify how panel layouts are distributed but that wouldn’t exactly roll off the tongue now, would it?

If I understand correctly, mate-tweak is dependent on a lot of components because the panel layouts are dependent on what software already exists for those layouts to work.

Instead of having mate-tweak be dependent on applications such as Plank, maybe have mate-tweak default panel layouts be installable and removable on their own? Like, mate-panel-layout-cupertino for example. This way, if someone wants to remove plank, then users wouldn’t need to also trash mate-tweak along with it, or if users found a way around that, or if permitted to keep mate-tweak while removing plank then users wouldn’t have a broken option if they did sudo apt autoremove afterward.

This would also invite people using mate-tweak to make packages for their own panel layouts, and distribute them so users can have a means of using panel layouts with software other than default, as something easily installable via apt with a PPA or dpkg.

Maybe there’s a mistake in mate-tweak’s dependency list but plank is not listed there:

ouroumov@Box:~/Desktop$ apt-cache depends mate-tweak 
mate-tweak
  Depends: compton
  Depends: dconf-cli
  Depends: gir1.2-notify-0.7
  Depends: mate-desktop-common
  Depends: mesa-utils
  Depends: python-gobject-2
  Depends: python3
  Depends: python3-psutil
  Depends: x11-xserver-utils
  Depends: zenity
    zenity:i386
  Depends: python3-pkg-resources
  Suggests: metacity

Oh, whoops. A little oopsie on my part. But if one were to remove Plank the dependent configurations would still be broken and useless, which would be even more a compelling reason to modify how such things are installed, if they can be; if a required software is being removed, related configuration files should also be removed via autoremove.

If you don't have plank ,curpentino layout won't show in the list . it is already done as a featchure .
Here is mate tweak withought curpentino layout becouse plank is not installed :


Plank package does not provide configuration ' xor ' mate-tweak , UbuntuMate . And the 'apt-get autoremove ' command does not purge configuration files . It just uninstalls packages wich are not explicitly installed by user (e.g. installed as dependencies and not needed by any package) .
And all layouts are provided by mate-tweak and ubuntu-mate-settings.
Users can package their own layouts . They just need to extract their saved layout from /usr/share/mate-panel/layouts .

3 Likes

Welp, goes to show how much I know.

I guess I was just too afraid to try removing some things.

OK, I've been wanting to have MATE Tweak include the Cupertino, Redmond, and Mutiny desktops available to ease things in for newbies, and Manjaro is perfectly suited for n00bz.

So, I looked in /usr/share/mate-panel/layouts and found this:

/usr/share/mate-panel/layouts/contemporary.layout
/usr/share/mate-panel/layouts/default.layout
/usr/share/mate-panel/layouts/eleven.layout
/usr/share/mate-panel/layouts/eleven-fresh.layout
/usr/share/mate-panel/layouts/eleven-no-indicators.layout
/usr/share/mate-panel/layouts/fedora.layout
/usr/share/mate-panel/layouts/linuxmint.layout
/usr/share/mate-panel/layouts/mageia.layout
/usr/share/mate-panel/layouts/manjaro.layout
/usr/share/mate-panel/layouts/mutiny.layout
/usr/share/mate-panel/layouts/mutiny.panel
/usr/share/mate-panel/layouts/mutiny-no-indicators.layout
/usr/share/mate-panel/layouts/netbook.layout
/usr/share/mate-panel/layouts/netbook-fresh.layout
/usr/share/mate-panel/layouts/netbook-no-indicators.layout
/usr/share/mate-panel/layouts/opensuse.layout
/usr/share/mate-panel/layouts/pantheon.layout
/usr/share/mate-panel/layouts/redmond.layout
/usr/share/mate-panel/layouts/redmond-fresh.layout
/usr/share/mate-panel/layouts/redmond-no-indicators.layout
/usr/share/mate-panel/layouts/ubuntu.layout
/usr/share/mate-panel/layouts/ubuntu-mate.layout
/usr/share/mate-panel/layouts/ubuntu-mate.layout.bak
/usr/share/mate-panel/layouts/ubuntu-mate-fresh.layout

All the layouts are there, but Manjaro MATE Tweak does not see them.

Curiouser and curiouser...

Amy ideas?