Posts: 8
Joined: Sat Mar 19, 2016 9:48 am

Install Mate Desktop on FreeBSD 11

Wed Jul 11, 2018 4:44 am

I have installed the FreeBSD image for pi2 but it is command line only so:
Download ... PI2.img.xz

#Then do all of these things:

tzsetup (timezone)
ntpd -gn (ntp time set)
date (set time and date)

#install pkg:
pkg install

portsnap fetch extract

pkg install sudo mc slim xorg xf86-video-scfb lxde-meta

lxd-meta will allow you to run LXDE desktop and you don't have to compile it.

#if you want nano you will have to compile it.
cd /usr/ports/editors/nano
make install
All done, use it!

#sshdconfig changes:

PermitRootLogin yes
PasswordAuthentication yes

#rc.conf additions needed:


#fstab add:

procfs /proc procfs rw 0 0

# make xorg.conf in /etc/X11:

Section "Device"
Identifier "Generic FB"
Driver "scfb"
Option "NoAccel" "True"
# Option "ShadowFB" "False" #

#make .xinitrc in users home folder with locality info:

# $FreeBSD: xinitrc $
export LC_ALL=au.UTF-8
export LANGUAGE=au.UTF-8
export LANG=au.UTF-8
exec $1
#if you are not using slim's F1 menu uncomment the following line and comment out the previous, replace mate-session with whatever desktop you are using.
#exec mate-session

#for slim F1 menu add desktop files here:
mkdir /usr/local/share/xsessions

LXDE install adds some default desktop files in /xsessions that you can look at to see how they are structured to make your own.
You can now run LXDE from the Slim Gui menu

#to allow exit/restart/poweroff options in slim add user to "operator group" in /etc/group file

#To compile large things like mate/gnome/kde desktops:
I use "make -DBATCH install clean" to install the default configuration without boxes popping up to ask questions that stop everything until you answer them.
Alternatively, you can use "make config-recursive" (usually) to get all of the options displayed for you to choose upfront.
I say "usually" because not all ports support it, but most do.
and "make config-recursive && make install clean"
Sometimes it will stop and say it cannot make several dependacies.
What I found was that you had to go and manually make the firstone it rejected and then it wold continue.
For MATE it was ports/www/webkit2.gtk3, net-im/telepathy-glib, net/samba46

Webkit2-gtk3 is a grave concern and kept crashing on compile when I did MATE.
After much head bashing trying different fixes the following worked with all 4 cpu cores active, no need for anything else.
I created a 1gb swap file and all went well after that. The most I saw it use was 400mb. It took 4.5 hours to compile.

Create the swap file, change the count to however many megabytes size you want:
# dd if=/dev/zero of=/usr/swap0 bs=1m count=1024
Set the proper permissions on the new file:
# chmod 0600 /usr/swap0
Inform the system about the swap file by adding a line to /etc/fstab:
md99 none swap sw,file=/usr/swap0,late 0 0
The md(4) device md99 is used, leaving lower device numbers available for interactive use.
Swap space will be added on system startup. To add swap space immediately, use swapon:
# swapon -aL

Return to “FreeBSD”