Edit livecd iso to have traditional menu

menu
panel

#1

I have used various ubuntu-mate live cd iso files to do various things to my installs and to other folks installs. The one thing that continually irks me is using the brisk menu that is default in the live cd iso for Mate 18.04.

Is there a way to get back the old familiar "traditonal" mate menu when editing the Mate desktop iso using something like Cubic? I'm having the damndest time attempting to use the chroot cli to change the default menu and could use some help.

In chroot, I've been trying this command -

dconf write /org/mate/panel/general/default-layout "'traditional'" and getting errors like this -

error: Error spawning command line “dbus-launch --autolaunch= --binary-syntax --close-stderr”: Child process exited with code 1

Usage:
  dconf write KEY VALUE 

Write a new value to a key

Arguments:
  KEY         A key path (starting, but not ending with '/')
  VALUE       The value to write (in GVariant format)

See the following pages - https://askubuntu.com/questions/741753/how-to-use-cubic-to-create-a-custom-ubuntu-live-cd-image and - https://www.linuxuprising.com/2018/07/how-to-customize-ubuntu-or-linux-mint.html as source material.

It's just an irritation. The effing brisk menu seems to crash every time I try to raise mate tweak to set the menu to my taste and I'm tired of doing this over and over. The 16.04 iso just seems to work but I'd like the modern one to work out of the box too.

Anyone have any direct experience on this matter?


#2

Open MATE Tweak, and under the Windows tab, there is the choice of several desktops, including Traditional (I think). You can also get rid of the brisk menu by right-clicking and unlock it to the panel, then "Remove icon from dock." Then, add to the panel, the expanded menu, which is what you want.


#3

Nope. Please read my original post above where I'm trying to edit the Mate 18.04 live cd ISO. Thanks for your interest Frederick_Wrigley.


#4

Oops. I've never constructed a live session, so that question is above my pay grade..:expressionless:


#5

I hadn't had direct experience, but there is a different approach I'll suggest: Edit the existing ISO. The good news is that this can be used on past, present and future distros.

  1. First, install squashfs-tools:

    sudo apt install squashfs-tools
    
  2. Extract the ISO, easily done in Caja:

    image

  3. Unpack the filesystem:

    cd ubuntu-mate-18.04-desktop-amd64/casper
    unsquashfs filesystem.squashfs
    

    Some warnings came up about not being superuser, but things seemed OK, so I'm not sure if that's absolutely essential:

    create_inode: could not create character device squashfs-root/dev/dsp, because you're not superuser!

  4. Inside the unpacked squashfs-root folder, go to etc/skel.

    How the config is applied is up to you. You could add a launcher to .config/autostart with the dconf command, or in 18.04+:

    mate-tweak --layout ubuntu-mate
    

    If only the MATE panel was configured with ordinary config files. :thinking:

  5. Once you set your changes, time to re-pack. This could take a while, depending on the speed/cores of your CPU.

    mksquashfs squashfs-root filesystem.squashfs -b 1024k -comp xz -Xbcj x86 -e boot
    
  6. Clean up some files we don't want on the ISO:

    rm -rf squashfs-root
    rm casper/filesystem.squashfs.gpg
    

    Since we modified filesystem.squashfs, the gpg signature will be voided.

  7. Create the ISO. Most importantly, a bootable ISO.

    mkisofs -o ubuntu-mate-18.04-traditional.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -J -R -V 'Ubuntu MATE 18.04 Traditional' ./
    

    The last part is the name of the disk.

Hopefully that should be it. :slight_smile: I tested the process with an empty text file in the "Desktop" folder, just to check the concept works. :+1:

:warning: It's probably worth noting that if you install a system with this ISO, the user will inherit the files created in /etc/skel. It would likely result in traditional being applied every time they log on, until they "uncheck" the option in Start-up Applications or the files in /etc/skel are removed after installation.

Also thanks for the idea! :bulb: I might put some more time aside and repack my own copies of Ubuntu MATE ISOs. :wink:


#6

Thanks @lah7. I'll give your method a try later on today and report back. Cubic was just being used as a way of editing the existing 18.04 ISO.


#7

I tried your method several times (both as user and as superuser) using my ubuntu-mate 18.04.1 desktop iso but failed to create a bootable iso. I did not see an autostart directory in this iso so created it and its' contents. No go. I'll try some more with this when booted in 16.04.

As a work around I created a startup USB with persistence using Unetbootin. That seems to work quite well. It boots with the (cough) Traditional panel and as a result of installing the broadcom firmware

sudo apt install firmware-b43-installer

it now has wireless on this old Dell laptop. I changed the wallpaper and edited the clock in the panel as well as doing some other superficial items. I'll try extracting an iso from this USB and see what I get. Thanks @lah7


#8

Here's a screenshot showing a MATE 18.04.1 live USB desktop after playing around with it somewhat.

Extracting an ISO from this USB was successful only in that I could use the ISO to create another USB - the ISO was not a real live CD ISO. Further usage of the persistent live USB continues to allow me to add more items and features.

This is an almost effortless way of getting what I wanted - the Traditional MATE panel and a working wireless without plugging in a USB dongle.

By the way, these two wireless USBs work effortlessly and reliably. https://www.amazon.com/gp/product/B003MTTJOY/ref=ppx_yo_dt_b_asin_title_o05__o00_s00?ie=UTF8&psc=1
https://www.amazon.com/gp/product/B00EQT0YK2/ref=ppx_yo_dt_b_asin_title_o05__o00_s01?ie=UTF8&psc=1

Just in case someone else is looking for wireless USBs.


#9

Here is another persistent live USB screenshot with the newest kernel to date - 4.18.0-15-generic