LinuxQuestions.org
View the Most Wanted LQ Wiki articles.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Desktop
User Name
Password
Linux - Desktop This forum is for the discussion of all Linux Software used in a desktop context.

Notices

Reply
 
Search this Thread
Old 04-29-2012, 03:32 PM   #1
ordealbyfire83
Member
 
Registered: Oct 2006
Location: Leiden, Netherlands
Distribution: LFS, Debian recompiled without systemd, Ubuntu Hardy
Posts: 106

Rep: Reputation: 21
Howto: Install MATE on Ubuntu 12.04 with NO other Desktop Environments


Ubuntu 12.04 LTS has recently been released and with its five-year support cycle, it is sure to appeal to users who do not wish to reinstall often or perhaps to the enterprise market. However the Unity shell has drawn much controversy. I will outline here how to install Ubuntu 12.04 with only the MATE desktop environment.

Beforehand, I wish to clear up some things that seem to not be understood very well from what I have seen on many of the message boards. MATE, as most know, is a fork of Gnome 2.32 but it does not conflict with Gnome 3, meaning that you can have both MATE and Gnome 3 installed on the same system. However, beyond this, users seem to diverge in their opinions of what the implications of this actually are.

An operating system, a desktop environment, and a shell are THREE separate things. Most Gnome 2 users didn't need to understand what a "shell" was until Gnome 3 came on the scene, with the revamped and highly controversial (if not even "hated") "Gnome Shell." The "shell" dictates how application windows are handled (i.e., switched between, minimized, restored, etc.). In Gnome 2 this was gnome-panel: you could click on the minimized button on your "panel" (or "taskbar" as in Windows). How to do that in Gnome Shell or Unity, well, that's best left to be discussed elsewhere.

Linux Mint 12 was the first major operating system to include MATE - however, they only did so for purposes of the shell, apparently. When you install Linux Mint, it will include all of the familiar Gnome applications - gedit, file-roller, and so on. The collection of these applications is the desktop environment. Effectively, Linux Mint includes MATE as a shell over top of Gnome 3. In this respect, Ubuntu's Unity is not a desktop environment (there is no Unity suite of applications), but rather e.g. the text editor is gedit 3.x so you are getting Gnome 3 desktop environment with a Unity shell on top.

MATE is not just a shell but a desktop environment - Yes, you can run MATE and still use gedit 3.x, nautilus "whatever" and mate-panel isn't going to care one bit. But MATE aims to include the 2.3x versions of gedit (now called pluma), gnome-terminal (now called mate-terminal), and so on. So what if you want to install Linux Mint with "just" MATE as the desktop environment without gnome 3.x applications? Well, you're pretty much out of luck unless you want to risk breaking your installation. So while Linux Mint is to be praised for including MATE, they should tell users what they are really getting.

The differences between the 2.3x (MATE) versions of these applications and the 3.x (Gnome 3) ones are open to debate. In my subjective opinion, I believe that the latter have been redesigned to fit the tablet interface of Gnome Shell. If you have a large screen, the Gnome 3.x applications are far too big and have far too many features removed to be considered "desktop" applications.

If you would rather install Ubuntu 12.04 WITHOUT Unity and WITHOUT Gnome 3 anything, then your only route is to do a minimal "netinstall." You can get these ISO images here:

http://archive.ubuntu.com/ubuntu/dis...mages/netboot/

Change installer-amd64 to installer-i386 if you want 32-bit operating system.

The download size is very small - only about 30 MB. The installation follows a text-based wizard similar to Ubuntu's alternate CD. When you get to the screen asking what type of system you want to install, just choose something simple like "OpenSSH Server." DO NOT install any desktop or anything or else that defeats the whole purpose of this.

Once the installation finishes, you will have only a simple, command-line to work with - not even X11. We're talking bare-bones here.

Then, add the MATE repository for Ubuntu Precise:

Code:
sudo nano /etc/apt/sources.list
and add this line:

Code:
deb http://packages.mate-desktop.org/repo/ubuntu precise main
Now, from mate-desktop.org:

Code:
sudo apt-get update
sudo apt-get install mate-archive-keyring
sudo apt-get update
# this install base packages
sudo apt-get install mate-core
# this install more packages
sudo apt-get install mate-desktop-environment
This will install quite a lot of packages, and will pull in almost all of the X11 dependencies as well. But we're not done yet. Now we need to be able to start the desktop

Code:
sudo apt-get install xinit
Now reboot if you wish (sudo reboot). The thing is, this doesn't include a "display manager" so you will be brought back to the command line once you reboot. Mate-display-manager will not be included until version 1.4 apparently. GDM, KDM, etc. are options but beware that you will pull in huge amounts of GNOME and KDE libraries if you install these. Your best bet may be to build mate-display-manager from source. Or, just type "startx" from your command line and you will be brought into MATE.

I realize this tutorial only gives a very barebones desktop environment (in fact the whole OS is only using 1.7 GiB according to the Mate System Monitor), but it is yours to customize to your heart's desire just like Gnome 2.
 
Old 04-30-2012, 08:45 PM   #2
k3lt01
Senior Member
 
Registered: Feb 2011
Location: Australia
Distribution: Debian Wheezy, Jessie, Sid/Experimental, playing with Slackware 14.
Posts: 2,643

Rep: Reputation: 554Reputation: 554Reputation: 554Reputation: 554Reputation: 554Reputation: 554
Good tutorial, may I suggest instead of using GDM or KDM etc, you use LightDM. LightDM is the default on Ubuntu now as far as I am aware.
 
Old 04-30-2012, 10:36 PM   #3
neruson
LQ Newbie
 
Registered: May 2011
Location: Boulder, CO
Distribution: Fedora
Posts: 18

Rep: Reputation: 0
This is a good tutorial for Ubuntu users, but yeah GDM is going to bring in a lot of Gnome 3 dependencies. Slim or LightDM are good alternatives. I hope the Mate developers can start porting everything to GTK3 otherwise I have doubts as to whether or not the project can survive the 5 year LTS cycle. GTK2 is deprecated and will eventually begin to break down. I hope they do. I would totally use Mate on my Fedora machines but GTK3 is far superior to GTK2 so for now I'm sticking with the shell at least until Cinnamon becomes more stable and full featured.
 
Old 05-01-2012, 03:58 PM   #4
ordealbyfire83
Member
 
Registered: Oct 2006
Location: Leiden, Netherlands
Distribution: LFS, Debian recompiled without systemd, Ubuntu Hardy
Posts: 106

Original Poster
Rep: Reputation: 21
I didn't realize LightDM had so few dependencies. That's definitely a good thing. I am concerned about whether things like fast user switching and lock screen, etc. will work with any other display manager than mate-display-manager. I have never got these things to work on any distribution using MATE yet but then again I haven't tested out the latest versions yet.

As for GTK3, don't forget that GTK2 and GTK3 can co-exist perfectly (as could GTK1 when GTK2 came out). GTK3 is not a replacement for GTK2 in the way that Gnome3 is for Gnome2. So recoding everything for GTK3 might be nice but it isn't strictly necessary. I myself would like to see a lot of the GTK2 themes get ported to GTK3.

I may be wrong here, but I seem to recall reading that it is possible (or might be in the future) to set preferences for both GTK2/GTK3 themes for their respective programs in MATE though I haven't looked in to this too much.
 
Old 05-01-2012, 05:33 PM   #5
k3lt01
Senior Member
 
Registered: Feb 2011
Location: Australia
Distribution: Debian Wheezy, Jessie, Sid/Experimental, playing with Slackware 14.
Posts: 2,643

Rep: Reputation: 554Reputation: 554Reputation: 554Reputation: 554Reputation: 554Reputation: 554
I read somewhere that the MATE devs are going to move to GTK3 which I think is a good thing. If they can move to GTK3 and still be able to use GTK2 for certain things then we have the best of both worlds.
 
Old 05-02-2012, 01:36 PM   #6
ordealbyfire83
Member
 
Registered: Oct 2006
Location: Leiden, Netherlands
Distribution: LFS, Debian recompiled without systemd, Ubuntu Hardy
Posts: 106

Original Poster
Rep: Reputation: 21
Hmm...LightDM doesn't seem to be the best choice, either. Despite the requirements listed on packages.ubuntu.com it seems to pull in a lot of gnome dependencies. Not to mention all of the indicator applet packages, and even things like libsane (scanner packages needed for a desktop manager?).

Also I noticed that "Lock Screen" now works even without a desktop manager installed.
 
Old 09-20-2012, 01:05 PM   #7
traveyes
LQ Newbie
 
Registered: Sep 2012
Posts: 1

Rep: Reputation: Disabled
slim

thanks! worked for me. I registered to share what I did to get around having to startx at console....

I gave slim a try. After the OP's instructions I did:

Code:
sudo apt-get install slim
and rebooted, and bam, got a log in screen that worked. I logged in with my user, created another user, logged out, which took me back to slim login screen and then logged in as newly created user.

Thanks again for the instructions.

Last edited by traveyes; 09-20-2012 at 01:16 PM. Reason: edit to subscribe to thread
 
Old 09-25-2012, 05:52 PM   #8
ordealbyfire83
Member
 
Registered: Oct 2006
Location: Leiden, Netherlands
Distribution: LFS, Debian recompiled without systemd, Ubuntu Hardy
Posts: 106

Original Poster
Rep: Reputation: 21
I'm glad the instructions were helpful. I must apologize as the instructions are now a bit out of date, and it's certainly possible to get a lot more bells and whistles working.

Installing Mate after performing a minimal install certainly gives the smallest footprint though it leaves out the "core" of what constitutes a typical Ubuntu installation minus the desktop environment. The following instructions are based on a minimal installation with only a simple SSH server installed.

To deduce what the "core" is, I compared the manifest files for Ubuntu and Kubuntu and made a list of all the shared packages. This isn't perfect, as things like QT are imported which Mate doesn't need.

You should edit this list based on the kernel you are running. First, run

Code:
uname -r
and note the output. Scroll down the list and change all instances of 3.2.0-23-[architecture] to what has been outputted, which will prevent older kernels from being installed.

The minimal install now only has a command interface, so we need a way to import this list. One way is to make a simple perl script (as perl is already installed) by placing the package names inside the "system" command. Copy the following list, save it as "Install.pl" and then make it executable

Code:
chmod +x Install.pl
Then run it, and packages should begin installing. This will take some time.

Code:
perl ./Install.pl
Code:
#!/usr/bin/perl
system("sudo apt-get install accountsservice acl acpi-support acpid adduser alsa-base alsa-utils anacron app-install-data app-install-data-partner apparmor appmenu-gtk appmenu-gtk3 appmenu-qt apport apport-symptoms apt apt-clone apt-transport-https apt-utils apt-xapian-index apturl-common archdetect-deb aspell aspell-en at avahi-autoipd avahi-daemon avahi-utils base-files base-passwd bash bash-completion bc bind9-host binutils bluez bluez-alsa bluez-cups brltty bsdmainutils bsdutils btrfs-tools busybox-initramfs busybox-static bzip2 ca-certificates casper colord command-not-found command-not-found-data console-setup consolekit coreutils cpio cpp cpp-4.6 crda cron cryptsetup cryptsetup-bin cups cups-bsd cups-client cups-common cups-filters cups-ppdc dash dbus dbus-x11 dc dconf-gsettings-backend dconf-service debconf debconf-i18n debianutils dictionaries-common diffutils dmidecode dmraid dmsetup dnsmasq-base dnsutils dosfstools dpkg dpkg-repack dvd+rw-tools e2fslibs e2fsprogs ecryptfs-utils ed eject enchant file findutils firefox-locale-en fontconfig fontconfig-config fonts-kacst fonts-kacst-one fonts-khmeros-core fonts-lao fonts-liberation fonts-nanum fonts-opensymbol fonts-takao-pgothic fonts-thai-tlwg fonts-tlwg-garuda fonts-tlwg-kinnari fonts-tlwg-loma fonts-tlwg-mono fonts-tlwg-norasi fonts-tlwg-purisa fonts-tlwg-sawasdee fonts-tlwg-typewriter fonts-tlwg-typist fonts-tlwg-typo fonts-tlwg-umpush fonts-tlwg-waree foomatic-db-compressed-ppds foomatic-db-engine foomatic-filters friendly-recovery ftp fuse gcc-4.6-base gdb genisoimage geoip-database gettext-base ghostscript ghostscript-cups ghostscript-x gir1.2-glib-2.0 glib-networking glib-networking-common glib-networking-services gnupg gpgv grep groff-base growisofs grub-common grub-gfxpayload-lists grub-pc grub-pc-bin grub2-common gs-cjk-resource gsettings-desktop-schemas gsfonts gstreamer0.10-alsa gstreamer0.10-plugins-base gstreamer0.10-plugins-good gstreamer0.10-pulseaudio gstreamer0.10-x gzip hdparm hicolor-icon-theme hostname hplip hplip-data hunspell-en-us ifupdown im-switch info initramfs-tools initramfs-tools-bin initscripts inputattach insserv install-info iproute iptables iputils-arping iputils-ping iputils-tracepath irqbalance isc-dhcp-client isc-dhcp-common iso-codes iw jfsutils jockey-common kbd kerneloops-daemon keyboard-configuration keyutils klibc-utils kpartx kpartx-boot krb5-locales language-pack-en language-pack-en-base language-selector-common laptop-detect less libaa1 libaccountsservice0 libacl1 libapt-inst1.4 libapt-pkg4.12 libarchive12 libart-2.0-2 libasn1-8-heimdal libasound2 libasound2-plugins libaspell15 libasyncns0 libatasmart4 libatk1.0-0 libatk1.0-data libattr1 libaudio2 libavahi-client3 libavahi-common-data libavahi-common3 libavahi-core7 libavc1394-0 libbind9-80 libblkid1 libbluetooth3 libbrlapi0.5 libbsd0 libbz2-1.0 libc-bin libc6 libcaca0 libcairo-gobject2 libcairo2 libcanberra-pulse libcanberra0 libcap-ng0 libcap2 libcdparanoia0 libck-connector0 libclass-isa-perl libcmis-0.2-0 libcolord1 libcomerr2 libcroco3 libcrypt-passwdmd5-perl libcryptsetup4 libcups2 libcupscgi1 libcupsdriver1 libcupsfilters1 libcupsimage2 libcupsmime1 libcupsppdc1 libcurl3-gnutls libdaemon0 libdatrie1 libdb5.1 libdbus-1-3 libdbus-glib-1-2 libdbusmenu-glib4 libdbusmenu-gtk3-4 libdbusmenu-gtk4 libdbusmenu-qt2 libdconf0 libdebconfclient0 libdebian-installer4 libdevmapper-event1.02.1 libdevmapper1.02.1 libdiscid0 libdjvulibre-text libdjvulibre21 libdmraid1.0.0.rc16 libdns81 libdrm-intel1 libdrm-nouveau1a libdrm-radeon1 libdrm2 libdv4 libecryptfs0 libedit2 libelf1 libenchant1c2a libexif12 libexiv2-11 libexpat1 libexttextcat-data libexttextcat0 libffi6 libfile-basedir-perl libfile-copy-recursive-perl libfile-desktopentry-perl libfile-mimeinfo-perl libflac8 libfontconfig1 libfontenc1 libfreetype6 libfribidi0 libfs6 libfuse2 libgcc1 libgcrypt11 libgd2-xpm libgdbm3 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-common libgeoip1 libgirepository-1.0-1 libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libglib2.0-0 libglu1-mesa libgmp10 libgnome-keyring-common libgnome-keyring0 libgnutls26 libgpg-error0 libgpgme11 libgphoto2-2 libgphoto2-l10n libgphoto2-port0 libgpm2 libgs9 libgs9-common libgssapi-krb5-2 libgssapi3-heimdal libgstreamer-plugins-base0.10-0 libgstreamer0.10-0 libgudev-1.0-0 libgutenprint2 libhcrypto4-heimdal libheimbase1-heimdal libheimntlm0-heimdal libhpmud0 libhunspell-1.3-0 libhx509-5-heimdal libhyphen0 libical0 libice6 libicu48 libidn11 libiec61883-0 libieee1284-3 libijs-0.35 libimobiledevice2 libindicate5 libisc83 libisccc80 libisccfg82 libiw30 libjack-jackd2-0 libjasper1 libjbig2dec0 libjpeg-turbo8 libjpeg8 libjs-jquery libjson0 libk5crypto3 libkeyutils1 libklibc libkrb5-26-heimdal libkrb5-3 libkrb5support0 liblcms1 liblcms2-2 libldap-2.4-2 libllvm3.0 liblocale-gettext-perl liblockfile-bin liblockfile1 libltdl7 liblvm2app2.2 liblwres80 liblzma5 libmagic1 libmeanwhile1 libmhash2 libmng1 libmount1 libmpc2 libmpfr4 libmtdev1 libmtp-common libmtp-runtime libmtp9 libmusicbrainz3-6 libmythes-1.2-0 libncurses5 libncursesw5 libneon27-gnutls libnetfilter-conntrack3 libnettle4 libnewt0.52 libnfnetlink0 libnih-dbus1 libnih1 libnl-3-200 libnl-genl-3-200 libnl-route-3-200 libnm-glib-vpn1 libnm-glib4 libnm-util2 libnspr4 libnss-mdns libnss3 libnss3-1d libogg0 libopenobex1 liborc-0.4-0 libp11-kit0 libpam-ck-connector libpam-modules libpam-modules-bin libpam-runtime libpam0g libpango1.0-0 libpaper-utils libpaper1 libparted0debian1 libpcap0.8 libpci3 libpciaccess0 libpcre3 libpcsclite1 libperl5.14 libpipeline1 libpixman-1-0 libplist1 libplymouth2 libpng12-0 libpolkit-agent-1-0 libpolkit-backend-1-0 libpolkit-gobject-1-0 libpoppler19 libpopt0 libproxy1 libpth20 libpulse-mainloop-glib0 libpulse0 libpulsedsp libpython2.7 libqt4-dbus libqt4-declarative libqt4-network libqt4-opengl libqt4-script libqt4-sql libqt4-sql-sqlite libqt4-svg libqt4-xml libqt4-xmlpatterns libqtcore4 libqtgui4 libraptor2-0 librasqal3 libraw1394-11 librdf0 libreadline5 libreadline6 libreoffice-base-core libreoffice-calc libreoffice-common libreoffice-core libreoffice-draw libreoffice-emailmerge libreoffice-impress libreoffice-math libreoffice-writer libroken18-heimdal librsvg2-2 librtmp0 libsamplerate0 libsane libsane-common libsane-hpaio libsasl2-2 libsasl2-modules libselinux1 libsensors4 libsgutils2-2 libshout3 libslang2 libslp1 libsm6 libsmbclient libsndfile1 libsnmp-base libsnmp15 libsoup-gnome2.4-1 libsoup2.4-1 libspectre1 libspeechd2 libspeex1 libspeexdsp1 libsqlite3-0 libss2 libssh-4 libssl1.0.0 libstdc++6 libswitch-perl libsysfs2 libtag1-vanilla libtag1c2a libtalloc2 libtasn1-3 libtdb1 libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libthai-data libthai0 libtheora0 libtiff4 libtinfo5 libudev0 libupower-glib1 libusb-0.1-4 libusb-1.0-0 libusbmuxd1 libutempter0 libuuid1 libv4l-0 libv4lconvert0 libvisual-0.4-0 libvisual-0.4-plugins libvorbis0a libvorbisenc2 libvorbisfile3 libwavpack1 libwbclient0 libwind0-heimdal libwpd-0.9-9 libwpg-0.2-2 libwps-0.2-2 libwrap0 libx11-6 libx11-data libx11-xcb1 libx86-1 libxapian22 libxatracker1 libxau6 libxaw7 libxcb-dri2-0 libxcb-glx0 libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-util0 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxfont1 libxft2 libxi6 libxinerama1 libxkbfile1 libxml2 libxmu6 libxmuu1 libxp6 libxpm4 libxrandr2 libxrender1 libxslt1.1 libxt6 libxtst6 libxv1 libxvmc1 libxxf86dga1 libxxf86vm1 libyajl1 linux-firmware linux-generic linux-image-3.2.0-23-generic linux-image-generic linux-sound-base localechooser-data locales lockfile-progs login logrotate lsb-base lsb-release lshw lsof ltrace lupin-casper makedev man-db manpages mawk memtest86+ mime-support mlocate mobile-broadband-provider-info modemmanager module-init-tools mount mountall mscompress mtools mtr-tiny multiarch-support nano ncurses-base ncurses-bin net-tools netbase netcat-openbsd network-manager network-manager-pptp ntfs-3g ntpdate nvidia-common obex-data-server obexd-client openprinting-ppds openssh-client openssl os-prober parted passwd pciutils pcmciautils perl perl-base perl-modules plymouth plymouth-label plymouth-theme-ubuntu-text pm-utils policykit-1 policykit-desktop-privileges poppler-utils popularity-contest powermgmt-base ppp pppconfig pppoeconf pptp-linux printer-driver-c2esp printer-driver-foo2zjs printer-driver-gutenprint printer-driver-hpcups printer-driver-hpijs printer-driver-min12xxw printer-driver-pnm2ppa printer-driver-ptouch printer-driver-pxljr printer-driver-sag-gdi printer-driver-splix procps psmisc pulseaudio pulseaudio-module-bluetooth pulseaudio-module-x11 pulseaudio-utils python python-apport python-apt python-apt-common python-chardet python-crypto python-cups python-cupshelpers python-dbus python-dbus-dev python-debian python-gdbm python-gi python-gnupginterface python-gobject python-gobject-2 python-httplib2 python-imaging python-keyring python-launchpadlib python-lazr.restfulclient python-lazr.uri python-minimal python-oauth python-pexpect python-pkg-resources python-problem-report python-pycurl python-pyicu python-renderpm python-reportlab python-reportlab-accel python-simplejson python-smbc python-software-properties python-uno python-wadllib python-xapian python-xdg python-xkit python-zope.interface python2.7 python2.7-minimal qdbus radeontool rdate readline-common realpath reiserfsprogs resolvconf rfkill rsync rsyslog rtkit samba-common samba-common-bin sane-utils sed sensible-utils sgml-base shared-mime-info smbclient sound-theme-freedesktop ssl-cert strace sudo syslinux syslinux-common syslinux-legacy system-config-printer-common system-config-printer-udev sysv-rc sysvinit-utils tar tcpd tcpdump telnet time toshset ttf-dejavu-core ttf-freefont ttf-indic-fonts-core ttf-punjabi-fonts ttf-ubuntu-font-family ttf-wqy-microhei tzdata ubiquity ubiquity-casper ubiquity-ubuntu-artwork ubuntu-extras-keyring ubuntu-keyring ubuntu-minimal ubuntu-standard ucf udev udisks ufw unattended-upgrades uno-libs3 unzip update-inetd update-manager-core update-notifier-common upower upstart ure ureadahead usb-creator-common usb-modeswitch usb-modeswitch-data usbmuxd usbutils user-setup util-linux uuid-runtime vbetool vim-common vim-tiny wamerican wget whiptail wireless-regdb wireless-tools wodim wpasupplicant x11-apps x11-common x11-session-utils x11-utils x11-xfs-utils x11-xkb-utils x11-xserver-utils xauth xbitmaps xcursor-themes xdg-user-dirs xdg-utils xfonts-base xfonts-encodings xfonts-mathml xfonts-scalable xfonts-utils xfsprogs xinit xinput xkb-data xml-core xorg xorg-docs-core xserver-common xserver-xorg xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-evdev xserver-xorg-input-mouse xserver-xorg-input-synaptics xserver-xorg-input-vmmouse xserver-xorg-input-wacom xserver-xorg-video-all xserver-xorg-video-ati xserver-xorg-video-cirrus xserver-xorg-video-fbdev xserver-xorg-video-intel xserver-xorg-video-mach64 xserver-xorg-video-mga xserver-xorg-video-neomagic xserver-xorg-video-nouveau xserver-xorg-video-openchrome xserver-xorg-video-qxl xserver-xorg-video-r128 xserver-xorg-video-radeon xserver-xorg-video-s3 xserver-xorg-video-savage xserver-xorg-video-siliconmotion xserver-xorg-video-sis xserver-xorg-video-sisusb xserver-xorg-video-tdfx xserver-xorg-video-trident xserver-xorg-video-vesa xserver-xorg-video-vmware xz-lzma xz-utils zip zlib1g");
The above list is for amd64. For i386, use the following:

Code:
#!/usr/bin/perl
system("sudo apt-get install accountsservice acl acpi-support acpid adduser alsa-base alsa-utils anacron app-install-data app-install-data-partner apparmor appmenu-gtk appmenu-gtk3 appmenu-qt apport apport-symptoms apt apt-clone apt-transport-https apt-utils apt-xapian-index apturl-common archdetect-deb aspell aspell-en at avahi-autoipd avahi-daemon avahi-utils base-files base-passwd bash bash-completion bc bind9-host binutils bluez bluez-alsa bluez-cups brltty bsdmainutils bsdutils btrfs-tools busybox-initramfs busybox-static bzip2 ca-certificates casper colord command-not-found command-not-found-data console-setup consolekit coreutils cpio cpp cpp-4.6 crda cron cryptsetup cryptsetup-bin cups cups-bsd cups-client cups-common cups-filters cups-ppdc dash dbus dbus-x11 dc dconf-gsettings-backend dconf-service debconf debconf-i18n debianutils dictionaries-common diffutils dmidecode dmraid dmsetup dnsmasq-base dnsutils dosfstools dpkg dpkg-repack dvd+rw-tools e2fslibs e2fsprogs ecryptfs-utils ed eject enchant file findutils firefox-locale-de firefox-locale-en fontconfig fontconfig-config fonts-kacst fonts-kacst-one fonts-khmeros-core fonts-lao fonts-liberation fonts-nanum fonts-opensymbol fonts-takao-pgothic fonts-thai-tlwg fonts-tlwg-garuda fonts-tlwg-kinnari fonts-tlwg-loma fonts-tlwg-mono fonts-tlwg-norasi fonts-tlwg-purisa fonts-tlwg-sawasdee fonts-tlwg-typewriter fonts-tlwg-typist fonts-tlwg-typo fonts-tlwg-umpush fonts-tlwg-waree foomatic-db-compressed-ppds foomatic-db-engine foomatic-filters friendly-recovery ftp fuse gcc-4.6-base gdb genisoimage geoip-database gettext-base ghostscript ghostscript-cups ghostscript-x gir1.2-glib-2.0 glib-networking glib-networking-common glib-networking-services gnupg gpgv grep groff-base growisofs grub-common grub-gfxpayload-lists grub-pc grub-pc-bin grub2-common gs-cjk-resource gsettings-desktop-schemas gsfonts gstreamer0.10-alsa gstreamer0.10-plugins-base gstreamer0.10-plugins-good gstreamer0.10-pulseaudio gstreamer0.10-x gzip hdparm hicolor-icon-theme hostname hplip hplip-data hunspell-en-us ifupdown im-switch info initramfs-tools initramfs-tools-bin initscripts inputattach insserv install-info iproute iptables iputils-arping iputils-ping iputils-tracepath irqbalance isc-dhcp-client isc-dhcp-common iso-codes iw jfsutils jockey-common kbd kerneloops-daemon keyboard-configuration keyutils klibc-utils kpartx kpartx-boot krb5-locales language-pack-de language-pack-de-base language-pack-en language-pack-en-base language-selector-common laptop-detect less libaa1 libaccountsservice0 libacl1 libapt-inst1.4 libapt-pkg4.12 libarchive12 libart-2.0-2 libasn1-8-heimdal libasound2 libasound2-plugins libaspell15 libasyncns0 libatasmart4 libatk1.0-0 libatk1.0-data libattr1 libaudio2 libavahi-client3 libavahi-common-data libavahi-common3 libavahi-core7 libavc1394-0 libbind9-80 libblkid1 libbluetooth3 libbrlapi0.5 libbsd0 libbz2-1.0 libc-bin libc6 libcaca0 libcairo-gobject2 libcairo2 libcanberra-pulse libcanberra0 libcap-ng0 libcap2 libcdparanoia0 libck-connector0 libclass-isa-perl libcmis-0.2-0 libcolord1 libcomerr2 libcroco3 libcrypt-passwdmd5-perl libcryptsetup4 libcups2 libcupscgi1 libcupsdriver1 libcupsfilters1 libcupsimage2 libcupsmime1 libcupsppdc1 libcurl3-gnutls libdaemon0 libdatrie1 libdb5.1 libdbus-1-3 libdbus-glib-1-2 libdbusmenu-glib4 libdbusmenu-gtk3-4 libdbusmenu-gtk4 libdbusmenu-qt2 libdconf0 libdebconfclient0 libdebian-installer4 libdevmapper-event1.02.1 libdevmapper1.02.1 libdiscid0 libdjvulibre-text libdjvulibre21 libdmraid1.0.0.rc16 libdns81 libdrm-intel1 libdrm-nouveau1a libdrm-radeon1 libdrm2 libdv4 libecryptfs0 libedit2 libelf1 libenchant1c2a libexif12 libexiv2-11 libexpat1 libexttextcat-data libexttextcat0 libffi6 libfile-basedir-perl libfile-copy-recursive-perl libfile-desktopentry-perl libfile-mimeinfo-perl libflac8 libfontconfig1 libfontenc1 libfreetype6 libfribidi0 libfs6 libfuse2 libgcc1 libgcrypt11 libgd2-xpm libgdbm3 libgdk-pixbuf2.0-0 libgdk-pixbuf2.0-common libgeoip1 libgirepository-1.0-1 libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libglib2.0-0 libglu1-mesa libgmp10 libgnome-keyring-common libgnome-keyring0 libgnutls26 libgpg-error0 libgpgme11 libgphoto2-2 libgphoto2-l10n libgphoto2-port0 libgpm2 libgs9 libgs9-common libgssapi-krb5-2 libgssapi3-heimdal libgstreamer-plugins-base0.10-0 libgstreamer0.10-0 libgudev-1.0-0 libgutenprint2 libhcrypto4-heimdal libheimbase1-heimdal libheimntlm0-heimdal libhpmud0 libhunspell-1.3-0 libhx509-5-heimdal libhyphen0 libical0 libice6 libicu48 libidn11 libiec61883-0 libieee1284-3 libijs-0.35 libimobiledevice2 libindicate5 libisc83 libisccc80 libisccfg82 libiw30 libjack-jackd2-0 libjasper1 libjbig2dec0 libjpeg-turbo8 libjpeg8 libjs-jquery libjson0 libk5crypto3 libkeyutils1 libklibc libkrb5-26-heimdal libkrb5-3 libkrb5support0 liblcms1 liblcms2-2 libldap-2.4-2 libllvm3.0 liblocale-gettext-perl liblockfile-bin liblockfile1 libltdl7 liblvm2app2.2 liblwres80 liblzma5 libmagic1 libmeanwhile1 libmhash2 libmng1 libmount1 libmpc2 libmpfr4 libmtdev1 libmtp-common libmtp-runtime libmtp9 libmusicbrainz3-6 libmythes-1.2-0 libncurses5 libncursesw5 libneon27-gnutls libnetfilter-conntrack3 libnettle4 libnewt0.52 libnfnetlink0 libnih-dbus1 libnih1 libnl-3-200 libnl-genl-3-200 libnl-route-3-200 libnm-glib-vpn1 libnm-glib4 libnm-util2 libnspr4 libnss-mdns libnss3 libnss3-1d libogg0 libopenobex1 liborc-0.4-0 libp11-kit0 libpam-ck-connector libpam-modules libpam-modules-bin libpam-runtime libpam0g libpango1.0-0 libpaper-utils libpaper1 libparted0debian1 libpcap0.8 libpci3 libpciaccess0 libpcre3 libpcsclite1 libperl5.14 libpipeline1 libpixman-1-0 libplist1 libplymouth2 libpng12-0 libpolkit-agent-1-0 libpolkit-backend-1-0 libpolkit-gobject-1-0 libpoppler19 libpopt0 libproxy1 libpth20 libpulse-mainloop-glib0 libpulse0 libpulsedsp libpython2.7 libqt4-dbus libqt4-declarative libqt4-network libqt4-opengl libqt4-script libqt4-sql libqt4-sql-sqlite libqt4-svg libqt4-xml libqt4-xmlpatterns libqtcore4 libqtgui4 libraptor2-0 librasqal3 libraw1394-11 librdf0 libreadline5 libreadline6 libreoffice-base-core libreoffice-calc libreoffice-common libreoffice-core libreoffice-draw libreoffice-emailmerge libreoffice-impress libreoffice-math libreoffice-writer libroken18-heimdal librsvg2-2 librtmp0 libsamplerate0 libsane libsane-common libsane-hpaio libsasl2-2 libsasl2-modules libselinux1 libsensors4 libsgutils2-2 libshout3 libslang2 libslp1 libsm6 libsmbclient libsndfile1 libsnmp-base libsnmp15 libsoup-gnome2.4-1 libsoup2.4-1 libspectre1 libspeechd2 libspeex1 libspeexdsp1 libsqlite3-0 libss2 libssh-4 libssl1.0.0 libstdc++6 libstlport4.6ldbl libswitch-perl libsysfs2 libtag1-vanilla libtag1c2a libtalloc2 libtasn1-3 libtdb1 libtext-charwidth-perl libtext-iconv-perl libtext-wrapi18n-perl libthai-data libthai0 libtheora0 libtiff4 libtinfo5 libudev0 libupower-glib1 libusb-0.1-4 libusb-1.0-0 libusbmuxd1 libutempter0 libuuid1 libv4l-0 libv4lconvert0 libvisual-0.4-0 libvisual-0.4-plugins libvorbis0a libvorbisenc2 libvorbisfile3 libwavpack1 libwbclient0 libwind0-heimdal libwpd-0.9-9 libwpg-0.2-2 libwps-0.2-2 libwrap0 libx11-6 libx11-data libx11-xcb1 libx86-1 libxapian22 libxatracker1 libxau6 libxaw7 libxcb-dri2-0 libxcb-glx0 libxcb-render0 libxcb-shape0 libxcb-shm0 libxcb-util0 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxfont1 libxft2 libxi6 libxinerama1 libxkbfile1 libxml2 libxmu6 libxmuu1 libxp6 libxpm4 libxrandr2 libxrender1 libxslt1.1 libxt6 libxtst6 libxv1 libxvmc1 libxxf86dga1 libxxf86vm1 libyajl1 linux-firmware linux-generic-pae linux-image-3.2.0-23-generic-pae linux-image-generic-pae linux-sound-base localechooser-data locales lockfile-progs login logrotate lsb-base lsb-release lshw lsof ltrace lupin-casper makedev man-db manpages mawk memtest86+ mime-support mlocate mobile-broadband-provider-info modemmanager module-init-tools mount mountall mscompress mtools mtr-tiny multiarch-support nano ncurses-base ncurses-bin net-tools netbase netcat-openbsd network-manager network-manager-pptp ntfs-3g ntpdate nvidia-common obex-data-server obexd-client openprinting-ppds openssh-client openssl os-prober parted passwd pciutils pcmciautils perl perl-base perl-modules plymouth plymouth-label plymouth-theme-ubuntu-text pm-utils policykit-1 policykit-desktop-privileges poppler-utils popularity-contest powermgmt-base ppp pppconfig pppoeconf pptp-linux printer-driver-c2esp printer-driver-foo2zjs printer-driver-gutenprint printer-driver-hpcups printer-driver-hpijs printer-driver-min12xxw printer-driver-pnm2ppa printer-driver-ptouch printer-driver-pxljr printer-driver-sag-gdi printer-driver-splix procps psmisc pulseaudio pulseaudio-module-bluetooth pulseaudio-module-x11 pulseaudio-utils python python-apport python-apt python-apt-common python-chardet python-crypto python-cups python-cupshelpers python-dbus python-dbus-dev python-debian python-gdbm python-gi python-gnupginterface python-gobject python-gobject-2 python-httplib2 python-imaging python-keyring python-launchpadlib python-lazr.restfulclient python-lazr.uri python-minimal python-oauth python-pexpect python-pkg-resources python-problem-report python-pycurl python-pyicu python-renderpm python-reportlab python-reportlab-accel python-simplejson python-smbc python-software-properties python-uno python-wadllib python-xapian python-xdg python-xkit python-zope.interface python2.7 python2.7-minimal qdbus radeontool rdate readline-common realpath reiserfsprogs resolvconf rfkill rsync rsyslog rtkit samba-common samba-common-bin sane-utils sed sensible-utils sgml-base shared-mime-info smbclient sound-theme-freedesktop ssl-cert strace sudo syslinux syslinux-common syslinux-legacy system-config-printer-common system-config-printer-udev sysv-rc sysvinit-utils tar tcpd tcpdump telnet time toshset ttf-dejavu-core ttf-freefont ttf-indic-fonts-core ttf-punjabi-fonts ttf-ubuntu-font-family ttf-wqy-microhei tzdata ubiquity ubiquity-casper ubiquity-ubuntu-artwork ubuntu-extras-keyring ubuntu-keyring ubuntu-minimal ubuntu-standard ucf udev udisks ufw unattended-upgrades uno-libs3 unzip update-inetd update-manager-core update-notifier-common upower upstart ure ureadahead usb-creator-common usb-modeswitch usb-modeswitch-data usbmuxd usbutils user-setup util-linux uuid-runtime vbetool vim-common vim-tiny wamerican wget whiptail wireless-regdb wireless-tools wodim wpasupplicant x11-apps x11-common x11-session-utils x11-utils x11-xfs-utils x11-xkb-utils x11-xserver-utils xauth xbitmaps xcursor-themes xdg-user-dirs xdg-utils xfonts-base xfonts-encodings xfonts-mathml xfonts-scalable xfonts-utils xfsprogs xinit xinput xkb-data xml-core xorg xorg-docs-core xserver-common xserver-xorg xserver-xorg-core xserver-xorg-input-all xserver-xorg-input-evdev xserver-xorg-input-mouse xserver-xorg-input-synaptics xserver-xorg-input-vmmouse xserver-xorg-input-wacom xserver-xorg-video-all xserver-xorg-video-ati xserver-xorg-video-cirrus xserver-xorg-video-fbdev xserver-xorg-video-geode xserver-xorg-video-intel xserver-xorg-video-mach64 xserver-xorg-video-mga xserver-xorg-video-neomagic xserver-xorg-video-nouveau xserver-xorg-video-openchrome xserver-xorg-video-qxl xserver-xorg-video-r128 xserver-xorg-video-radeon xserver-xorg-video-s3 xserver-xorg-video-savage xserver-xorg-video-siliconmotion xserver-xorg-video-sis xserver-xorg-video-sisusb xserver-xorg-video-tdfx xserver-xorg-video-trident xserver-xorg-video-vesa xserver-xorg-video-vmware xz-lzma xz-utils zip zlib1g");
Now add the Mate repositories and install the packages. Open your sources.list file

Code:
sudo nano /etc/apt/sources.list
and add this line

Code:
deb http://packages.mate-desktop.org/repo/ubuntu precise main
Save and close. Now run

Code:
sudo apt-get update
sudo apt-get install mate-archive-keyring
sudo apt-get update
# this install base packages
sudo apt-get install mate-core
# this install more packages
sudo apt-get install mate-desktop-environment
With the release of Mate 1.4 and with some work done by Linux Mint, it is possible to log in/out, lock screen, and have fast user switching using MDM, which is a fork of GDM 2.20.

Edit /etc/apt/sources.list again and add this line

Code:
deb http://ppa.launchpad.net/nilarimogard/webupd8/ubuntu precise main
Save and exit. Now

Code:
sudo apt-get update
sudo apt-get install mdm
Now reboot. You should see the default MDM screen upon login. It isn't that impressive but we'll fix that later. Log back in and let's continue.

One thing that you will notice is that there is no network manager applet. But you clearly have networking if you've gotten this far. Network Manager is not enabled right now. Installing the network manager applets from Ubuntu is possible although it is optimized for Unity. We will build the package (and the deb) from source and optimize it for gtk2, though we cannot use the Ubuntu build scripts as they depend on using indicators optimized for gtk3.

Code:
sudo apt-get install build-essential checkinstall debhelper dh-apparmor dpkg-dev fakeroot gettext gir1.2-gconf-2.0 gir1.2-gnomekeyring-1.0 gir1.2-gtk-2.0 gir1.2-networkmanager-1.0 gir1.2-notify-0.7 gobject-introspection html2text intltool intltool-debian libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libatk1.0-dev libcairo-script-interpreter2 libcairo2-dev libdbus-1-dev libdbus-glib-1-dev libdpkg-perl libexpat1-dev libfontconfig1-dev libfreetype6-dev libgconf2-dev libgconf2-doc libgdk-pixbuf2.0-dev libgettextpo0 libglib2.0-bin libglib2.0-dev libgnome-keyring-dev libgtk2.0-dev libice-dev libmail-sendmail-perl libnm-glib-dev libnm-glib-vpn-dev libnm-util-dev libnotify-dev libpango1.0-dev libpcre3-dev libpcrecpp0 libpixman-1-dev libpng12-dev libpthread-stubs0 libpthread-stubs0-dev libsm-dev   libsys-hostname-long-perl libunistring0 libx11-dev libx11-doc libxau-dev libxcb-render0-dev libxcb-shm0-dev libxcb1-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev libxrandr-dev libxrender-dev   network-manager-dev pkg-config po-debconf python-mako python-markupsafe x11proto-composite-dev x11proto-core-dev x11proto-damage-dev x11proto-fixes-dev x11proto-input-dev x11proto-kb-dev x11proto-randr-dev x11proto-render-dev x11proto-xext-dev x11proto-xinerama-dev xorg-sgml-doctools xtrans-dev zlib1g-dev
Now download the source: http://packages.ubuntu.com/source/pr...manager-applet

Purge some conflicting packages (all of these will be inadvertently built as part of our source package):

Code:
sudo apt-get purge libnm-gtk0 libnm-gtk-common network-manager-gnome network-manager-pptp-gnome
Now extract the source and cd into its directory.

Code:
./configure --prefix=/usr --sysconfdir=/etc --with-gtkver=2 --localstatedir=/var --libexecdir=/usr/lib/NetworkManager --disable-static --disable-maintainer-mode
We can't run 'make' yet. It will fail because all warnings are treated as errors. Adjusting compiler flags didn't work for me, so I had to edit some Makefiles manually.

Code:
nano src/Makefile
Press CTRL+W and type -Werror
Delete -Werror when it is found
Save the file (CTRL+X, Yes)

Do the same for:

src/utils/Makefile
src/utils/tests/Makefile
src/gconf-helpers/Makefile
src/gconf-helpers/tests/Makefile
src/wireless-security/Makefile
src/libnm-gtk/Makefile
src/connection-editor/Makefile

Code:
make
sudo make install
Now make a deb:

Code:
sudo checkinstall
Work through the menus. When you get to the numbered menu screen, press 2 and change the name to network-manager-gnome. This will produce a deb archive in the source archive. It is already installed, but move it aside and save it for later (as you should with all of the other debs that we will build). Now fix some icon problems:

Code:
sudo gtk-update-icon-cache -f /usr/share/icons/hicolor
Unlike previous distributions the main system ethernet connection is called ifupdown (as opposed to eth0). It is not managed by network manager yet, so we need to change it.

Code:
sudo nano /etc/NetworkManager/NetworkManager.conf
After ifupdown, change managed=false to managed=true

Save and exit. Then

Code:
sudo rm /var/lib/NetworkManager/NetworkManager.state
Restart NetworkManager

Code:
sudo service network-manager restart
Voila. You should now see the applet icon in the notification area. This should stick after rebooting.

*****

Some other applications from Gnome2 can be installed but aren't part of the release as they are yet draft versions.

Mate-character-map:

Get the source here http://en.sourceforge.jp/projects/sf...er-map.tar.gz/

Code:
sudo apt-get install ibidl-dev libmateconf-dev libmatecorba-dev
Code:
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libexecdir=/usr/lib/mate-character-map
make
sudo make install
-> Continue on next page...
 
1 members found this post helpful.
Old 09-25-2012, 07:08 PM   #9
ordealbyfire83
Member
 
Registered: Oct 2006
Location: Leiden, Netherlands
Distribution: LFS, Debian recompiled without systemd, Ubuntu Hardy
Posts: 106

Original Poster
Rep: Reputation: 21
(Page 2)

Mate-notes. This is GNote, aka Tomboy without the Mono code. This is a draft port and the name of the program is still gnote, meaning it will conflict if gnote is installed. Get the tarball http://sourceforge.net/projects/mate...ar.gz/download

Code:
sudo apt-get install mate-doc-utils xsltproc libglibmm-2.4-dev libsigc++-2.0-dev libatkmm-1.6-dev libcairomm-1.0-dev libgtkmm-2.4-dev libpangomm-1.4-dev libxml2-dev libxslt1-dev uuid-dev libart-2.0-dev libboost-dev libboost1.46-dev libcanberra-dev libenchant-dev libgail-common libgail-dev libgtkspell-dev libgtkspell0 libmate-dev libmatecanvas-dev libmatecomponent-dev libmatecomponentui-dev libmatepanelapplet-dev libmatevfs-dev libpopt-dev libboost-test-dev libboost-test1.46-dev libboost-test1.46.1 gnome-doc-utils
Code:
./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib/mate-notes --localstatedir=/var --disable-static

make
sudo make install
If you haven't already, grab firefox and synaptic

Code:
sudo apt-get install aptdaemon aptdaemon-data firefox firefox-globalmenu gir1.2-atk-1.0 gir1.2-freedesktop gir1.2-gdkpixbuf-2.0 gir1.2-gtk-3.0 gir1.2-pango-1.0 gir1.2-vte-2.90 libcairo-perl libglib-perl libgtk2-perl libpango-perl librarian0 libvte-2.90-9 libvte-2.90-common python-aptdaemon python-aptdaemon.gtk3widgets python-defer rarian-compat software-properties-common software-properties-gtk synaptic xul-ext-ubufox
Multimedia. Mate lacks a multimedia player. The aim is to build mate-video-player, a draft fork of Totem as well as some gstreamer plugins. Install some dvelopment libraries

Code:
sudo apt-get install liba52-0.7.4 liba52-0.7.4-dev libaacs0 libao-common libao-dev libao4 libasound2-dev libavahi-client-dev libavahi-common-dev libavc1394-dev libbluray-dev libbluray1 libbz2-dev libcaca-dev libcdio-cdda-dev libcdio-dev libcdio-paranoia-dev libcdparanoia-dev libdc1394-22 libdc1394-22-dev libdirac-decoder0 libdirac-dev libdirac-encoder0 libdrm-dev libdv4-dev libebml-dev libebml3 libfaac-dev libfaac0 libfaad-dev libfaad2 libfftw3-3 libfftw3-dev libflac++-dev libflac++6 libflac-dev libgl1-mesa-dev libglu1-mesa-dev libgsm1-dev libid3tag0 libid3tag0-dev libidn11-dev libiec61883-dev libilmbase-dev libiso9660-8 libiso9660-dev libjpeg-turbo8-dev libjpeg8-dev libkms1 liblircclient-dev liblircclient0 liblivemedia-dev libltdl-dev libmad0 libmad0-dev libmatroska-dev   libmatroska5 libmp3lame-dev libmp3lame0 libmpcdec-dev libmpcdec6 libmpg123-0 libmpg123-dev libncurses5-dev libogg-dev liboil0.3 liboil0.3-dev libopencore-amrnb-dev libopencore-amrnb0 libopencore-amrwb-dev libopencore-amrwb0 libopenexr-dev liborc-0.4-dev libpulse-dev libraw1394-dev libsamplerate0-dev libschroedinger-dev libsdl1.2-dev libsdl1.2debian libslang2-dev libsndfile1-dev libsoundtouch-dev libsoundtouch0 libspeex-dev libtheora-dev libtiff4-dev libtiffxx0c2 libtinfo-dev libtool libtwolame-dev libtwolame0 libv4l-dev libvcdinfo-dev libvcdinfo0 libvorbis-dev libx264-120 libx264-dev libxt-dev libxv-dev libxvidcore-dev libxvidcore4 libxvmc-dev libxxf86vm-dev mesa-common-dev x11proto-video-dev x11proto-xf86vidmode-dev libdb4.8 libsvn1 nasm subversion yasm
Build ffmpeg. Get the source (newer than what precise uses but not too new to cause problems) http://ffmpeg.mplayerhq.hu/releases/...0.8.12.tar.bz2

Code:
./configure --enable-postproc --enable-runtime-cpudetect --enable-x11grab --enable-libfaac --enable-libmp3lame --enable-libschroedinger --enable-libdirac --enable-libspeex --enable-libvorbis --enable-libtheora --enable-libx264 --enable-libxvid --enable-libgsm --enable-bzlib --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libdc1394 --enable-shared --enable-pic --enable-gpl --enable-version3 --enable-nonfree
make
make install
sudo checkinstall
sudo ldconfig
Now for the plugins. First build libquicktime and mjpegtools (installing these from the repository might not work. We need libquicktime with --with-libdv and mjpegtools built against that) http://sourceforge.net/projects/libq...ar.gz/download and http://sourceforge.net/projects/mjpe...ar.gz/download

libquicktime

Code:
./configure --with-libdv --without-doxygen
make
make install
# For checkinstall, change name to libquicktime2
sudo checkinstall
mjpegtools

Code:
./configure
make
make install
sudo checkinstall
Now we can start building the plugins. This is just the basic configuration. Read the output of ./configure carefully. If you want additional features, try installing the appropriate development libraries. Note that all options are not available on all platforms, and upon detecting some libraries, others get disabled so do not expect all plugins to be built. MAKE SURE to add --prefix=/usr or else Totem will not find the plugins.

Code:
sudo apt-get install gir1.2-gstreamer-0.10 libgstreamer0.10-dev gir1.2-gst-plugins-base-0.10 libgstreamer-plugins-base0.10-dev libmms-dev libmms0
bad plugin: http://archive.ubuntu.com/ubuntu/poo...3.orig.tar.bz2

Important! From this point forward, it is assumed that the following environment variables are set when building anything from source

Code:
export LD_LIBRARY_PATH=/usr/local/lib:/usr/lib
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig
Code:
./configure --prefix=/usr
sudo make
sudo make install
# For checkinstall change name to gstreamer0.10-plugins-bad
checkinstall
ugly plugin: http://archive.ubuntu.com/ubuntu/poo...14.orig.tar.gz

Note, this is from lucid. The version from precise is a bit buggy regarding x264. The precise version will compile without incident if you would rather have the latest version.

Code:
./configure --prefix=/usr
make
sudo make install
# For checkinstall change name to gstreamer0.10-plugins-ugly
sudo checkinstall
ffmpeg plugin: http://archive.ubuntu.com/ubuntu/poo...3.orig.tar.bz2

Code:
./configure --prefix=/usr --with-system-ffmpeg
make
sudo make install
# For checkinstall change name to gstreamer0.10-ffmpeg
sudo checkinstall
Now build the media player itself. First we need to build mate-pl-parser (a fork of totem-pl-parser), not in the release as it is a draft. http://en.sourceforge.jp/projects/sf...parser.tar.gz/

Code:
sudo apt-get install gir1.2-soup-2.4 gir1.2-xkl-1.0 gstreamer0.10-gconf gstreamer0.10-tools libcaja-extension-dev libffi-dev libgmime-2.6-0 libgmime-2.6-dev libmatekbd-dev libsoup-gnome2.4-dev libsoup2.4-dev libssl-dev libssl-doc libunique-dev libxklavier-dev python-dev python-gobject-2-dev python-gtk2-dev python-gtk2-doc python2.7-dev
Code:
./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib/mate-pl-parser --localstatedir=/var --disable-static
make
sudo make install
# For checkinstall change name to mate-pl-parser and version to 2.32
mate-video-player: http://sourceforge.jp/projects/sfnet...player.tar.gz/

This is a draft version from last summer. The application name is still Totem therefore it will conflict with that supplied by Gnome 3 if it is installed on your system.

Code:
./configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib/mate-video-player --localstatedir=/var --disable-static
make
sudo make install
# For checkinstall change name to mate-video-player, version to 2.32, and conflicts to totem if you wish to prevent Gnome 3's totem from ever being installed
sudo checkinstall
Note: The debs for mate-character-map, mate-notes, and mate-video-player may not install as they may conflict with one another. If that happens, the package manager won't be aware that these packages are installed. But the applications are installed, as you already ran "make install." I deliberately left off checkinstall instructions for these packages.

In firefox, type aboutlugins and check to see that plugins are installed.

Optional steps: mplayer, cinelerra. These should fill the gap in any playback formats that the gstreamer plugins can't handle. Also there is no video editor in Mate.

mplayer http://mplayerhq.hu/MPlayer/releases/MPlayer-1.1.tar.gz

Code:
./configure --enable-runtime-cpudetection --enable-gui
make
sudo make install
sudo checkinstall
Install skin using instructions on MPlayer web site.

cinelerra:

Code:
sudo apt-get install git git-man liberror-perl
Code:
git clone git://git.cinelerra.org/CinelerraCV.git cinelerra-cv
Download an important patch. This lets us use the newer version of ffmpeg that we installed earlier. (For more information, see http://comments.gmane.org/gmane.comp....general/12922)

The patch: http://cache.gmane.org/gmane/comp/vi.../12950-001.bin

Rename the source directory from cinelerra-cv to cinelerra-cv-2.1.5 (that's not the version, but doing so makes the patch work easier). You must cd into the source directory:

Code:
cd cinelerra-cv-2.1.5
patch -p0 < ../12950-001.bin
If it doesn't work for you, you might be prompted to type in the entire full path of the file name that it is looking for. We need to patch something else by hand. The swscale.h file is not found so we need to explicitly tell it where it is

Code:
nano cinelerra/ffmpeg.C
In line 5, change the included directory to be /usr/local/include/libswscale/swscale.h Save and exit. Now we can hopefully build (note, the CXXFLAGS stuff is required on i686 as well):

Code:
./autogen.sh
CXXFLAGS=-D__STDC_CONSTANT_MACROS ./configure --with-external-ffmpeg
make
sudo make install
# For checkinstall change name to cinelerra-cv and version to 2.2
sudo checkinstall
End Optional Steps

*****

Thematization

Code:
sudo apt-get install mate-conf-editor
- Volume Control

There is no volume control yet. Right-click in the notification next to the clock (but to the right of the vertical separator). If there isn't enough room for your pointer in there, move the separator to the left--you might have to "unlock" it first. Scroll down and find "Volume Control" and add it.

Click on the volume control icon. Unmute it and drag it to the appropriate level. Click the Volume Control button and note what you see. This is the alsa version. If you want the pulseaudio version, download the gnome-media package:

http://packages.ubuntu.com/lucid/gnome-media

Download the appropriate deb for your architecture (scroll down to the box below "Download gnome-media"). DO NOT install the deb. Open it in engrampa (Archive Manager, formerly file-roller). Double-click usr, then bin, and extract gnome-volume-control (not the applet) to your Desktop.

Replace mate-volume-control with gnome-volume-control:

Code:
sudo mv /usr/bin/mate-volume-control /usr/bin/mate-volume-control.original
sudo mv ~/Desktop/gnome-volume-control /usr/bin/mate-volume-control
Now click the the volume icon near your clock and then click the "Volume Control" button. You should see the familiar volume control.

- Human Theme

I like the Human Theme back before it got all "light." By that I mean the orange/brown version. To get it back download these:

http://packages.ubuntu.com/hardy-upd...looks/download
http://packages.ubuntu.com/hardy/human-icon-theme
http://packages.ubuntu.com/hardy/human-theme

cd into the directory where these were downloaded and run (change architecture to i386 if necessary)

Code:
sudo dpkg -i gtk2-engines-ubuntulooks_0.9.12-12_amd64.deb human-icon-theme_0.28_all.deb human-theme_0.18_all.deb
Click System -> Preferences -> Appearance and change theme to Human. Note, you have to log out and back in for the icons to fully refresh.

- Buttons, Icons, and Toolbars

Get gtk icon appearances for LibreOffice

Code:
sudo apt-get install libreoffice-gtk libreoffice-style-tango
In your libreoffice applications, click Tools -> Options. At the left, under LibreOffice, click View. Change the icon size to small. Then set the style to Human.

Run mateconf-editor (Note, the program name has one hyphen in it but the package name has two).

Navigate to desktop, mate, interface. Change toolbar_style to "both" (This will give the appearance from 8.04; if you don't know what this does, open Pluma and watch what happens once you save the changes)

Remove computer, home, and trash icons from your desktop:

Navigate to apps, caja, desktop. Uncheck computer_icon_visible, home_icon_visible, trash_icon_visible

Add trash icon on the bottom taskbar: Right-click the workspaces, uncheck Lock to Panel. Move it a little to the left. Right-click empty space to the right of it, Add to Desktop, and then Trash. Move workspaces back and lock.

*****

Compiz

Mate uses marco, a fork of metacity, which is already running. If you want desktop effects back, you will need to use Compiz. Compiz does not work perfectly well anymore as it is optimized for Gnome 3, so things like the desktop cube only sort-of work. But most other things do.

Since Compiz is a Gnome application, we need to install gconf-editor if you want to edit settings manually Mateconf-editor is not aware of compiz.

Code:
sudo apt-get install gconf-defaults-service gconf-editor
Now get ccsm:

Code:
sudo apt-get install compiz-core compiz-plugins compiz-plugins-default compiz-plugins-main compiz-plugins-main-default compizconfig-settings-manager libboost-serialization1.46.1 libcompizconfig0 libdecoration0 libprotobuf7 python-central python-compizconfig
Now run mate-conf-editor.

Navidate to desktop -> mate -> session -> required_components.

Change windowmanager from marco to compiz. Close mateconf-editor, log out and back in. Run ccsm and edit the setting to your liking. Make sure you use window decorations, or else your applications' title bars will disappear.

Note: You can use metacity to get better compiz integration. Install it, and then configure its settings using gconf-editor (metacity is a gnome application). Navigate to apps -> metacity -> general. Because metacity is a gnome application, clicking System -> Application -> Appearance will have no effect (that only is aware of marco). That is why we need to configure it manually:

- Make sure button_layout is menu:minimize,maximize,close
- Change theme to whatever theme you're using, like Human
- Change titlebar_font to Sans Bold 10 or whatever you were using with marco (Gnome 3 likes huge fonts)

*****

GDM Themes

MDM is a fork of gdm-2.20. We can use the ubuntu gdm themes though we need to change some names first.

Here is how to install the default theme from <= 8.04 that prompts for a user name and password and doesn't list all of the users on the system:

Download the theme deb (same for either architecture) http://packages.ubuntu.com/hardy/ubuntu-gdm-themes

Don't install the deb. Extract the folder usr/share/gdm/themes/Human to, say, your desktop. Rename the file GdmGreeterTheme.desktop to MdmGreeterTheme.desktop but use the command line. If you rename it using the GUI, it will be renamed to MdmGreeterTheme.desktop.desktop and the rest of this won't work. Open the newly renamed file and change GdmGreeterTheme to MdmGreeterTheme.

Zip up the Human folder to a gzipped tarball. So, from your Desktop, you would type

Code:
tar -cf Human.tar Human
gzip Human.tar
Now install the theme:

sudo mdmsetup

On the Local tab, click "Add" and find the tarball you just created. If it complains that it is not a valid tar.gz archive even if it is, then something isn't named right. Go back and make sure there are no .desktop.desktop renaming mistakes.

This theme uses a .gtkrc file. Click the General tab, place a check next to GtkRC file and point to /usr/share/mdm/themes/Human/gtk-2.0/gtkrc

Log out and you should see the proper theme.

*****

Enable Hibernation

You will notice that hibernation is disabled and doesn't show up on your System, Shut Down box or on the MDM screen.

Code:
sudo nano /etc/polkit-1/localauthority/50-local.d/com.ubuntu.enable-hibernate.pkla
Paste this into the file, save, and exit.

[Re-enable hibernate by default]
Identity=unix-user:*
Action=org.freedesktop.upower.hibernate
ResultActive=yes

Hibernate should be an option after rebooting, provided that you have enough swap space available.

*****

Fonts (optional): You can use older versions of some fonts to give a more uniform appearance like in 8.04. Get these packages:

http://packages.ubuntu.com/hardy/all...ejavu/download
http://packages.ubuntu.com/hardy/all...-core/download
http://packages.ubuntu.com/hardy/all...extra/download
http://packages.ubuntu.com/hardy/all...-vera/download
http://packages.ubuntu.com/hardy/all...efont/download
http://packages.ubuntu.com/hardy/all/defoma/download

Code:
sudo dpkg -i defoma_0.11.10-0.2_all.deb
sudo apt-get purge ttf-freefont
sudo dpkg -i ttf-freefont_20060501cvs-12_all.deb
sudo apt-get purge fonts-liberation
sudo dpkg -i ttf-bitstream-vera_1.10-7_all.deb
sudo dpkg -i ttf-dejavu-core_2.23-1_all.deb ttf-dejavu-extra_2.23-1_all.deb ttf-dejavu_2.23-1_all.deb
sudo dpkg-reconfigure fontconfig
To get firefox/seamonkey/etc interface fonts to match the rest of the system:

Code:
sudo rm /etc/fonts/conf.d/10*.conf
sudo dpkg-reconfigure fontconfig
To undo the firefox "fix" later:

Code:
sudo ln -s /etc/fonts/conf.avail/10-antialias.conf /etc/fonts/conf.d
sudo ln -s /etc/fonts/conf.avail/10-hinting.conf /etc/fonts/conf.d
sudo ln -s /etc/fonts/conf.avail/10-hinting-slight.conf /etc/fonts/conf.d
*****

Install a Plymouth theme

Open Synaptic and search for plymouth-theme. Install whichever you choose, or search online for more themes. If you wish to install one that isn't in deb format, the directory of interest is /lib/plymouth/themes.

*****

Administrative Tools

We need to install some things useful to administering partitions and packages.

Code:
sudo apt-get install gparted ntfsprogs python-vte
Now, install gdebi (the standard way to install deb archives graphically). Go to http://packages.ubuntu.com/source/natty/gdebi and download the source and the dsc file.

So, we can rebuild the debs. Now, run

Code:
 dpkg-source -x gdebi_0.7.0.dsc
dpkg-buildpackage -rfakeroot -b
Congratulations, you just rebuilt debian packages according the method according to the disribution's specifications. That's a bit more elegant than checkinstall. The debs you just built are located in the parent directory.

Code:
cd ..
sudo dpkg -i gdebi-core_0.7.0_all.deb gdebi_0.7.0_all.deb
*****

Pin Packages

Pin all of the packages that we built from source or otherwise custom-installed so that they will not be upgraded when you update your system. Here is the list, depending on how many you used checkinstall with:

network-manager-gnome
mate-notes
ffmpeg
mplayer (optional)
libquicktime2
mjpegtools
gstreamer0.10-plugins-bad
gstreamer0.10-plugins-ugly
gstreamer0.10-ffmpeg
mate-pl-parser
mate-video-player
cinelerra-cv (optional)
gtk2-engines-ubuntulooks
human-icon-theme
human-theme
ttf-dejavu (optional)
ttf-dejavu-core (optional)
ttf-dejavu-extra (optional)
ttf-bitstream-vera (optional)
ttf-freefont (optional)
defoma (optional)
gdebi
gdebi-core

Note: In 12.04 you MUST apply updates using Synaptic if you wish for your pinned rules to be observed! Using apt-get or any graphical tool such as muon will destroy all of this work. (To apply updates in Synaptic (DO NOT DO THIS BEFORE YOU PIN YOUR PACKAGES), run Synaptic, click Edit -> Mark All Upgrades, and then apply those changes)

*****

Clean Up

A lot of development libraries are installed, and now that we are finished, we really don't need them.

Code:
sudo apt-get purge git git-man libcaja-extension-dev libffi-dev libgmime-2.6-dev libmatekbd-dev libsoup-gnome2.4-dev libsoup2.4-dev libssl-dev libssl-doc libunique-dev python-dev python-gobject-2-dev python-gtk2-dev python-gtk2-doc python2.7-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libmms-dev libsvn1 subversion nasm yasm liba52-0.7.4-dev libao-dev libasound2-dev libavahi-client-dev libavahi-common-dev libavc1394-dev libbluray-dev libbz2-dev libcaca-dev libcdio-cdda-dev libcdio-dev libcdio-paranoia-dev libcdparanoia-dev libdc1394-22-dev libdirac-dev libdrm-dev libdv4-dev libebml-dev libfaac-dev libfaad-dev libfftw3-dev libflac++-dev libflac-dev libgl1-mesa-dev libglu1-mesa-dev libgsm1-dev libid3tag0-dev libidn11-dev libiec61883-dev libilmbase-dev libiso9660-dev libjpeg-turbo8-dev libjpeg8-dev liblircclient-dev liblivemedia-dev libltdl-dev libmad0-dev libmatroska-dev libmp3lame-dev libmpcdec-dev libmpg123-dev libncurses5-dev libogg-dev liboil0.3-dev libopencore-amrnb-dev libopencore-amrwb-dev libopenexr-dev liborc-0.4-dev libpulse-dev libraw1394-dev libsamplerate0-dev libschroedinger-dev libsdl1.2-dev libslang2-dev libsndfile1-dev libsoundtouch-dev libspeex-dev libtheora-dev libtiff4-dev libtiffxx0c2 libtinfo-dev libtool libtwolame-dev libv4l-dev libvcdinfo-dev libvorbis-dev libx264-dev libxt-dev libxv-dev libxvidcore-dev libxvmc-dev libxxf86vm-dev mesa-common-dev x11proto-video-dev x11proto-xf86vidmode-dev libidl-dev libmateconf-dev libmatecorba-dev libglibmm-2.4-dev libsigc++-2.0-dev libatkmm-1.6-dev libcairomm-1.0-dev libgtkmm-2.4-dev libpangomm-1.4-dev libxml2-dev libxslt1-dev uuid-dev libart-2.0-dev libboost-dev libboost1.46-dev libcanberra-dev libenchant-dev libgail-dev libgtkspell-dev libmate-dev libmatecanvas-dev libmatecomponent-dev libmatecomponentui-dev libmatepanelapplet-dev libmatevfs-dev libpopt-dev libboost-test-dev libboost-test1.46-dev gnome-doc-utils mate-doc-utils xsltproc libcairo2-dev libdbus-1-dev libdbus-glib-1-dev libexpat1-dev libfontconfig1-dev libfreetype6-dev libgconf2-dev libgconf2-doc libgdk-pixbuf2.0-dev libglib2.0-bin libglib2.0-dev libgnome-keyring-dev libgtk2.0-dev libice-dev libmail-sendmail-perl libnm-glib-dev libnm-glib-vpn-dev libnm-util-dev libnotify-dev libpango1.0-dev libpcre3-dev libpixman-1-dev libpng12-dev libpthread-stubs0-dev libsm-dev libx11-dev libx11-doc libxau-dev libxcb-render0-dev libxcb-shm0-dev libxcb1-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev libxrandr-dev libxrender-dev network-manager-dev x11proto-composite-dev x11proto-core-dev x11proto-damage-dev x11proto-fixes-dev x11proto-input-dev x11proto-kb-dev x11proto-randr-dev x11proto-render-dev x11proto-xext-dev x11proto-xinerama-dev xorg-sgml-doctools xtrans-dev zlib1g-dev
*****

Final notes

Remember to move all of your built debs out of their source directories and keep them for later should you decide to uninstall them.

I hope this can help give a more usable system that is a bit better integrated.

Last edited by ordealbyfire83; 09-25-2012 at 07:15 PM.
 
Old 04-16-2013, 03:43 PM   #10
sailorxyz
LQ Newbie
 
Registered: Jan 2007
Location: Auckland, New Zealand
Distribution: Crunchbang Waldorf
Posts: 6

Rep: Reputation: 0
Mate 1.6 any changes to the install process?

Hi OrdealByFire,

Thanks for your detailed howto, it's been most motivating to read it. I would like to do the same thing but useing Mate 1.6 which is now the latest and by all accounts much improved version of Mate. Have you done an install useing 1.6 yet? Are there any differences or traps that I need to be aware of? If you have any info or comments on doing the above, I'd appriciated you posting them as I'll shortly be making my own attempt at this.

Thanks in advance.
 
Old 04-16-2013, 05:09 PM   #11
k3lt01
Senior Member
 
Registered: Feb 2011
Location: Australia
Distribution: Debian Wheezy, Jessie, Sid/Experimental, playing with Slackware 14.
Posts: 2,643

Rep: Reputation: 554Reputation: 554Reputation: 554Reputation: 554Reputation: 554Reputation: 554
Yes Sailorxyz there are differences. May I suggest you take a look at the official forums for MATE.
 
Old 04-16-2013, 06:08 PM   #12
sailorxyz
LQ Newbie
 
Registered: Jan 2007
Location: Auckland, New Zealand
Distribution: Crunchbang Waldorf
Posts: 6

Rep: Reputation: 0
Smile

Quote:
Originally Posted by k3lt01 View Post
Yes Sailorxyz there are differences. May I suggest you take a look at the official forums for MATE.
Thanks, that was most helpful.
 
Old 04-20-2013, 10:13 PM   #13
ordealbyfire83
Member
 
Registered: Oct 2006
Location: Leiden, Netherlands
Distribution: LFS, Debian recompiled without systemd, Ubuntu Hardy
Posts: 106

Original Poster
Rep: Reputation: 21
sailorxyz, Thanks for your interest in this howto. I hope you can get your system up and running smoothly. I have not yet installed Mate 1.6 in the manner described in the tutorial, but this weekend I did upgrade from 1.4 to 1.6. I will try to outline the procedure, and show where it differs from the above tutorial.

Most notably, MateConf has been replaced with GSettings. (MateConf is a fork of the configuration system used by Gnome 2. In Gnome 2, settings were changed by using gconftool or gconf-editor.) Despite responses by some angry users who didn't plan accordingly, no functionality has been lost, at least in principle. For users who have Mate 1.4 installed, take close note of your:

- Applications Menu items (take screenshots!)
- Desktop Theme, including fonts, wallpaper, applets on your panels, and anything else you changed or customized since you installed
- In System, Preferences, Appearance: Make a note of all of the settings as they are
- And anything else that you did using mateconf-editor

Users who use heavy mockups like Macbuntu (yes, it does work with Mate) that rely heavily on the old configuration system, you will need to change each configuration option manually now. If a user hasn't yet installed Mate and wishes to install version 1.4, it is of course possible, as all of the packages for 1.2, 1.4, and 1.6 are in the repositories.

Regarding Page 1 of the above tutorial, everything is the same except for Mate-character-map. It is in the repositories now so you can skip building this from source.

Regarding Page 2:

Please now do this first:

Code:
sudo apt-get install libidl-dev
Now we need to build two depreciated Mate libraries from source, to get mate-notes and mate-video-player to compile. Please download these:

http://pub.mate-desktop.org/releases...a-1.4.0.tar.xz
http://pub.mate-desktop.org/releases...f-1.4.0.tar.xz

Code:
tar -xJf mate-corba-1.4.0.tar.xz
./autogen.sh --prefix=/usr/local
# Note, configure is run automatically, so we pass
# the configure arguments to autogen.sh instead
make
sudo make install
Code:
tar -xJf mate-conf-1.4.0.tar.xz
./autogen.sh --prefix=/usr/local
make
sudo make install
Now proceed on Page 2 building mate-notes, and so on down the page. If you are upgrading from 1.4, you may uninstall the above two libraries after you build mate-video-player (just cd into the source directory and type "sudo make uninstall"). If you are installing 1.6 from scratch, do not uninstall them.

For the Thematization section, this is where things get different. Do not install mate-conf-editor. It is not used in 1.6. If you install it and try to change settings in there, it will have no effect. Instead:

Code:
sudo apt-get install dconf-tools
Regarding the Volume Control:

You don't need to download the volume control package from Lucid. Mate now includes its own pulseaudio volume controller

Code:
sudo apt-get install mate-media-pulse
All you have to do now is add the icon to the panel: "Right-click in the notification next to the clock (but to the right of the vertical separator). If there isn't enough room for your pointer in there, move the separator to the left--you might have to "unlock" it first. Scroll down and find "Volume Control" and add it. Click on the volume control icon. Unmute it and drag it to the appropriate level." That's all! When clicking "Volume Control," you should see something very familiar.

Continue down the page as it is. Stop when you get to "Run mateconf-editor." Instead, run

Code:
dconf-editor &
The configuration settings are now in org > mate > desktop > interface

Note: to change the value of an entry in dconf-editor, you need to double click the [B]value[B] and a box will show around it; then you can type in your change. It took me a while to figure that one out.

As described:

Change toolbar_style to "both" [i.e., double-click on "both-horiz" and then type "both] (This will give the appearance from 8.04; if you don't know what this does, open Pluma and watch what happens once you save the changes)

Remove computer, home, and trash icons from your desktop:

Navigate to org > mate > caja > desktop. Uncheck computer_icon_visible, home_icon_visible, trash_icon_visible

Regarding Compiz:

Mate 1.6 now can have some degree of compositing using Marco (!) To enable it, go to System -> Preferences -> Windows and check "Enable software compositing." You can get some eye candy with ALT + TAB and so on.

To use Compiz itself, install the packages as described in the totorial and then go into dconf-editor and navigate to org > mate > desktop > session > required compoents. Change windowmanager from marco to compiz. The rest still holds true. Note that you need to use gconf-editor (not dconf-editor) for this part:

Navigate to apps -> metacity -> general. Because metacity is a gnome application, clicking System -> Application -> Appearance will have no effect (that only is aware of marco). That is why we need to configure it manually:

- Make sure button_layout is menu:minimize,maximize,close
- Change theme to whatever theme you're using, like Human
- Change titlebar_font to Sans Bold 10 or whatever you were using with marco (Gnome 3 likes huge fonts)

By the way, Desktop Cube now works as it should.

The rest of the tutorial will work as written.

For those upgrading, or those installing 1.6 and want more "traditional" fonts in the interface: Go to System -> Preferences -> Appearance and click the Fonts tab. The Application, Document, and Desktop fonts should be "Sans," "Window" title "Sans" Bold, and Fixed with "Monospace." By default these will probably now all be "Ubuntu." Nothing wrong with that font, but some users might find it to look a bit "cartoonish."

Some other things of note:

Now, when your desktop is locked and you go to unlock, you will now see a "Leave Message" button just as in Gnome > 2.22, and if you use MDM you will also see "Switch User." A fast user switch applet is still missing though. Also, the default wallpaper behind the login box on a locked desktop is now the "Light" wallpaper. You can change this to something else or leave it black.

Now, for an addition: Mate now has an optical disk burning program. It is called Rejilla, and it is a fork of Brasero. Let's build it. Install the following development libraries (they can be removed after you are done building):

Code:
sudo apt-get install build-essential checkinstall debhelper dh-apparmor dpkg-dev fakeroot gir1.2-gconf-2.0 gir1.2-gnomekeyring-1.0 gir1.2-networkmanager-1.0 gir1.2-notify-0.7 gobject-introspection html2text intltool libalgorithm-diff-perl libalgorithm-diff-xs-perl libalgorithm-merge-perl libatk1.0-dev libcairo-script-interpreter2 libcairo2-dev libdbus-1-dev   libdbus-glib-1-dev libdpkg-perl libexpat1-dev libfontconfig1-dev libfreetype6-dev libgconf2-dev libgconf2-doc libgdk-pixbuf2.0-dev libglib2.0-dev libgnome-keyring-dev libgtk2.0-dev libice-dev libnotify-dev libpango1.0-dev libpcre3-dev libpng12-dev libpthread-stubs0-dev libsm-dev libx11-dev libx11-doc libxau-dev libxcb-render0-dev libxcb-shm0-dev libxcb1-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxft-dev libxi-dev libxinerama-dev libxrandr-dev libxrender-dev mate-doc-utils network-manager-dev python-mako python-markupsafe x11proto-composite-dev x11proto-core-dev x11proto-damage-dev x11proto-fixes-dev x11proto-input-dev x11proto-kb-dev x11proto-randr-dev x11proto-render-dev x11proto-xext-dev x11proto-xinerama-dev xorg-sgml-doctools xtrans-dev zlib1g-dev gir1.2-gst-plugins-base-0.10 gir1.2-gstreamer-0.10 libextutils-depends-perl libextutils-pkgconfig-perl libgstreamer-interfaces-perl libgstreamer-perl   libgstreamer-plugins-base0.10-dev libgstreamer0.10-dev libxml2-dev libidl-dev libmatepolkit-dev libcanberra-dev libcanberra-gtk-common-dev libcanberra-gtk-dev gir1.2-gudev-1.0 libgudev-1.0-dev libudev-dev libcaja-extension-dev libdb4.8 libsvn1 subversion libcdio-dev gnome-doc-utils
Get the source. Go here https://github.com/NiceandGently/rejilla-2 and click the "ZIP" button. Then

Code:
unzip rejilla-2-master.zip
cd rejilla-2-master
./autogen.sh --prefix=/usr/local --enable-gtk3=no
make
sudo make install
Now you can remove the development libraries.

Also of note is another Mate program called bastile (not to be confused with bastille). It is a fork of seahorse. You can download it from github, but as of right now it will not build (no Configure.in gets created).

I do apologize for addressing the updates / changes in this way. I will try rewriting the entire tutorial from start to finish for 1.6 when I get the time.
 
1 members found this post helpful.
Old 04-20-2013, 11:49 PM   #14
sailorxyz
LQ Newbie
 
Registered: Jan 2007
Location: Auckland, New Zealand
Distribution: Crunchbang Waldorf
Posts: 6

Rep: Reputation: 0
Thanks OredealByFire for taking the time and making the effort, it's much appriciated. I'l give it a bash and report back later. Thanks once again.
 
Old 04-21-2013, 12:42 AM   #15
k3lt01
Senior Member
 
Registered: Feb 2011
Location: Australia
Distribution: Debian Wheezy, Jessie, Sid/Experimental, playing with Slackware 14.
Posts: 2,643

Rep: Reputation: 554Reputation: 554Reputation: 554Reputation: 554Reputation: 554Reputation: 554
There is a migration script to migrate the majority of MATE 1.4 settings to MATE 1.6.

My advice is do not use anything from MATE 1.4 in MATE 1.6. There is evidence in various distributions that keeping things from MATE 1.4 actually cause problems in MATE 1.6. If it is not in 1.6 it is most probably deprecated and will do nothing useful in 1.6 anyway.
 
1 members found this post helpful.
  


Reply

Tags
desktop environment, mate, shell, ubuntu 12.04, unity


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] multiple desktop environments mint vs ubuntu chuckyanutsup Linux - Newbie 10 06-05-2012 01:34 PM
LXer: How to Install MATE Desktop in Ubuntu 12.04/Ubuntu 11.10 LXer Syndicated Linux News 0 04-26-2012 12:01 PM
LXer: FOLLOW-UP: How-To: Get My Desktop with MATE in Ubuntu LXer Syndicated Linux News 0 04-13-2012 07:40 AM
LXer: How-To: Get My Desktop with MATE in Ubuntu LXer Syndicated Linux News 0 03-16-2012 11:00 AM
LXer: Install LinuxMint12 extensions Mate & MGSE in Ubuntu 11.10 LXer Syndicated Linux News 0 11-16-2011 08:50 AM


All times are GMT -5. The time now is 04:50 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration