Nxl67170 - Ubuntu: Difference between revisions

From miki
Jump to navigation Jump to search
 
(133 intermediate revisions by 2 users not shown)
Line 6: Line 6:


== Repositories ==
== Repositories ==
* Added [https://launchpad.net/~texlive-backports/+archive/ppa/ texlive-backports ppa] (backports of latest TeX Live from Ubuntu 12.10, see [http://askubuntu.com/questions/163682/how-do-i-install-the-latest-tex-live-2012])
To be completed.
<source lang=bash>
sudo add-apt-repository ppa:texlive-backports/ppa
</source>
* Added [https://launchpad.net/~libreoffice/+archive/libreoffice-4-0 LibreOffice 4.0.x PPA] (LibreOffice 4.0.x series stable backports ppa, see [http://www.webupd8.org/2013/03/install-libreoffice-40-in-ubuntu-1204.html])
<source lang=bash>
sudo add-apt-repository ppa:libreoffice/libreoffice-4-0
sudo apt-get update
sudo apt-get install libreoffice-gnome
</source>


== Installed Applications ==
== Installed Applications ==
'''Common applications'''<br/>
===Common applications===
See [[Configuration Common#Linux|Common configuration for Linux]].
See [[Configuration Common#Linux|Common configuration for Linux]].

===Essential===


{| class="install_simple_log"
{| class="install_simple_log"
|-
|-
|'''VirtualBox''' (<tt>virtualbox-4.3</tt>)||
!colspan="2" align="left"|Essential:
* [2013-10-29] &mdash; Updated to 4.3.0!
|-
* See '''[[Configuration NXP Dell Latitude E5430#Log|virtual machine configuration log]]'''.
|'''VirtualBox''' (<tt>virtualbox-4.2</tt>)||[2013-02-20]</small> Updated to 4.2.8!<br/>[[#VirtualBox|Local settings]]. See also [[VirtualBox]]
* Installed with apt (original version 4.2.8)
* VirtualBox is launched as user '''vbox''' (see [[VirtualBox]])
* Create launcher
{{hiddenSourceFile|~/.local/share/applications/|virtualbox-root.desktop|content=
<source lang=bash>
#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=VBox
Name[en_US]=Oracle VM VirtualBox (vbox user)
Exec=/home/beq06659/bin/vbox.sh
Comment[en_US]=Run several virtual systems on a single host computer
Name=Oracle VM VirtualBox (vbox user)
Comment=Run several virtual systems on a single host computer
Icon=VBox
</source>}}
* Script to reset network / bluetooth after suspend / network env. change (see [[VirtualBox]])
|-
|-
|'''Privoxy''' (<tt>privoxy</tt>)||
|'''Privoxy''' (<tt>privoxy</tt>)||
Line 22: Line 53:
|'''Gufw''' (<tt>gufw</tt>)||graphical front-end to ''ufw''
|'''Gufw''' (<tt>gufw</tt>)||graphical front-end to ''ufw''
|-
|-
|'''SSH Tunnel script''' (<tt>sshtunnel.pl</tt>, <tt>libssl-dev</tt>)||Thierry Walrant's Perl script <tt>sshtunnel.pl</tt>
|'''SSH Tunnel script''' (<tt>sshtunnel.pl</tt>, <tt>libssl-dev</tt>)||Thierry Walrant's Perl script {{file|sshtunnel.pl}}
|-
|-
|'''LAMP''' (<tt>apache2 php5 mysql-server mysql-client php5-mysql</tt>)||See [[#LAMP|local config]]
|'''LAMP''' (<tt>apache2 php5 mysql-server mysql-client php5-mysql</tt>)||See [[#LAMP|local config]]
Line 34: Line 65:
|'''Courier-POP3''' (<tt>courier-pop courier-pop-ssl</tt>)||
|'''Courier-POP3''' (<tt>courier-pop courier-pop-ssl</tt>)||
|-
|-
|'''qmail''' (<tt>ucspi-tcp qmail</tt>)||See [[qmail]] page
|'''qmail''' (<tt>ucspi-tcp qmail qmail-run qmail-uids-gids</tt>)||See [[qmail]] page &mdash; added ''qmail-run qmail-uids-gids'' to get SMTP service
|-
|-
|'''NTP''' (<tt>ntp</tt>)||
|'''NTP''' (<tt>ntp</tt>)||Set system to synchronize with NTP server automatically (servers: ntp0.nl.net, ntp1.nl.net, ntp2.nl.net, ntp.univ-lyon1.fr)
* synchronize with NTP server automatically
* add to {{file|/etc/ntp.conf}}:
<pre>server wbi.nxp.com iburst</pre>
|-
|-
|'''HTTrack''' (<tt>httrack</tt>)||
|'''HTTrack''' (<tt>httrack</tt>)||
Line 42: Line 76:
|'''WireShark''' (<tt>wireshark tshark</tt>)||
|'''WireShark''' (<tt>wireshark tshark</tt>)||
|-
|-
|'''TrueCrypt'''||<small>v7.1a, with AES-NI instructions!
|'''MBR''' (<tt>mbr</tt>)||To create VirtualBox rawdisk
* Preferences &rarr; '''uncheck''' ''Preserve modification timestamp of file containers'' (such that they are included in rsync backup without need for <code>--checksum</code>).
|-
|-
|'''Samba Server''' (<tt>samba smbfs</tt>)||See [[#Samba|local config]]
|'''Samba Server''' (<tt>samba smbfs</tt>)||See [[#Samba|local config]]
Line 58: Line 93:
|'''CUPS PDF''' (<tt>cups-pdf</tt>)||Allow CUPS to access ~/PDF:<source lang="bash" enclose="prevalid">sudo aa-complain cupsd</source>
|'''CUPS PDF''' (<tt>cups-pdf</tt>)||Allow CUPS to access ~/PDF:<source lang="bash" enclose="prevalid">sudo aa-complain cupsd</source>
|-
|-
|'''LaTeX'''||
|'''LaTeX''' (<tt>texlive texlive-xetex latex2hml</tt>)||Including XeTeX package
* See [[LaTeX]] for install instructions
|-
* Complete TeXLive 2013 install (at {{file|/usr/local/texlive/2013}}, with symlink at {{file|/opt/texbin}}).
|'''TeX Extra packages''' (<tt>texlive-plain-extra texlive-science</tt>)||Soul package requires CTAN color package - see [http://www.tex.ac.uk/tex-archive/macros/latex/contrib/soul/soul.pdf]<br/><small>[2011-01-14]</small> Added texlive-science.
* Update ''pdftex.map'' in the user profile (see [http://tex.stackexchange.com/questions/31388/getting-strange-error-with-miktex-when-trying-to-use-kpfonts-package]):
|-
<source lang=bash>
|'''GNU C/C++ compiler''' (<tt>g++</tt>)||
updmap # Update user's pdftex.map
|-
</source>
|'''C/C++ documentation''' (<tt>manpages-posix-dev stl-manual</tt>)||Make SGI doc available at http://localhost/sgi :<source lang="bash">ln -s /usr/share/doc/stl-manual/html /var/www/sgi</source>
|-
|'''Javadoc'''||Installed on http://nxl67002ux/. ''JDK 1.4.2'' in <tt>/data/www/javase/1.4.2/docs</tt>; ''JDK 6u21'' in <tt>/data/www/javase/6/docs</tt>
|-
|'''Perl-doc html''' (<tt>perl-doc-html</tt>)||Available from ''dwww'', section ''Programming/perl''
|-
|-
|'''Google Earth''' (<tt>googleearth googleearth-data</tt>)||Requires [[Ubuntu#Medibuntu|'''Medibuntu''' repository]]
|'''Google Earth''' (<tt>googleearth googleearth-data</tt>)||Requires [[Ubuntu#Medibuntu|'''Medibuntu''' repository]]
Line 76: Line 107:
|'''pdftk''' (<tt>pdftk</tt>)||
|'''pdftk''' (<tt>pdftk</tt>)||
|-
|-
|'''Oracle/Sun Java JDK 1.6''' (<tt>sun-java6-jdk</tt>)||
|'''Git''' (<tt>git-gui gitk git-doc gitweb</tt>)||
* <small>[2013-02-20]</small> &mdash; {{red|Updated to 1.7.10.5}} compiled from source.<br/>
|-
|'''4Pane''' (<tt>4pane</tt>)||See [[Linux Software#4Pane]]
|-
|'''Git''' (<tt>git-gui gitk git-doc gitweb</tt>)||<small>[2013-02-20]</small> &mdash; {{red|Updated to 1.7.10.5}} compiled from source.<br/>
<source lang=bash>
<source lang=bash>
sudo apt-get install zlib1g-dev libcurl4-openssl-dev expat asciidoc # More packages might be needed
sudo apt-get install autoconf zlib1g-dev libcurl4-openssl-dev expat asciidoc # More packages might be needed
git clone git://github.com/gitster/git.git # Use proxygit if behind a proxy
git clone git://github.com/gitster/git.git # Use proxygit if behind a proxy
cd git
cd git
Line 90: Line 118:
sudo make install install-doc install-html
sudo make install install-doc install-html
</source>
</source>
<small>[2013-02-20]</small> &mdash; Installed '''tileqt''' tcl/tk widget theme for ''gitk'' (see [[Git#Configuration|here]]).
* <small>[2013-02-20]</small> &mdash; Installed '''tileqt''' tcl/tk widget theme for ''gitk'' (see [[Git#Configuration|here]]).
* Add system user '''git''' but using shell <code>/usr/bin/git-shell</code>:
<source lang=bash>
sudo adduser --system --home /home/git --shell /usr/bin/git-shell git
# Add ssh keys to ~git/.ssh/authorized_keys
</source>
|-
|-
|Some '''git browsers''' (<tt>qgit gitg source-highlight</tt>)||<small>[2013-02-20]</small> {{red|gitg updated to 0.0.7! }}
|Some '''git browsers''' (<tt>qgit gitg source-highlight</tt>)||<small>[2013-02-20]</small> {{red|gitg updated to 0.0.7! }}
Line 106: Line 139:
|'''KDiff3-QT''' (<tt>kdiff3-qt</tt>)||(QT version has no dep on KDE) Settings &rarr; Integration &rarr; add <tt>;--</tt> to command line opts to ignore, and check ''Quit also via Escape key''
|'''KDiff3-QT''' (<tt>kdiff3-qt</tt>)||(QT version has no dep on KDE) Settings &rarr; Integration &rarr; add <tt>;--</tt> to command line opts to ignore, and check ''Quit also via Escape key''
|-
|-
|'''Diffstat''' (<tt>diffstat</tt>)||A better grep...
|'''Diffstat''' (<tt>diffstat</tt>)||
|-
|-
|'''[[Linux Commands#ack|Ack]]''' (<tt>ack-grep</tt>)||A better grep... <source lang=bash>sudo ln -s /usr/bin/ack-grep /usr/local/bin/ack</source>
|'''[[Linux Commands#ack|Ack]]''' (<tt>ack-grep</tt>)||A better grep... <source lang=bash>sudo ln -s /usr/bin/ack-grep /usr/local/bin/ack</source>
|-
|'''[[Linux Commands#ag|Ag]]''' (<tt>silversearcher-ag</tt>)||A better ack... Installed grom git.
|-
|-
|'''Hexedit''' (<tt>hexedit</tt>)||Hex editor
|'''Hexedit''' (<tt>hexedit</tt>)||Hex editor
Line 127: Line 162:
|-
|-
|'''VLC''' (<tt>vlc</tt>)||
|'''VLC''' (<tt>vlc</tt>)||
|-
|'''apt-rdepends''' (<tt>apt-rdepends</tt>)||
|-
|'''GraphViz''' (<tt>graphviz</tt>)||To plot package dependencies with <code>apt-cache dotty</code> and <code>apt-rdepends -d</code>
|-
|-
|'''pipe viewer''' (<tt>pv</tt>)||
|'''pipe viewer''' (<tt>pv</tt>)||
|-
|-
|'''Acrobat Reader''' (<tt>acroread</tt>)||Edit mime type in <tt>~/.local/share/applications/mimeapps.list</tt>:<source lang="bash">
|'''Acrobat Reader''' (<tt>acroread</tt>)||Edit mime type in {{file|~/.local/share/applications/mimeapps.list}}:<source lang="bash">
[Added Associations]
[Added Associations]
application/pdf=acroread.desktop;evince.desktop;gimp.desktop
application/pdf=acroread.desktop;evince.desktop;gimp.desktop
</source>
</source>
Add to <tt>~/.mailcap</tt>:
Add to {{file|~/.mailcap}}:
<source lang="bash">
<source lang="bash">
application/pdf; acroread '%s'; test=test -n "$DISPLAY"; nametemplate=%s.pdf
application/pdf; acroread '%s'; test=test -n "$DISPLAY"; nametemplate=%s.pdf
Line 145: Line 176:
application/x-gzpdf; acroread '%s'; test=test -n "$DISPLAY"; nametemplate=%s.pdf.gz
application/x-gzpdf; acroread '%s'; test=test -n "$DISPLAY"; nametemplate=%s.pdf.gz
</source>
</source>
* Add '''Digital ID''' for ''NXP DocStore''
|-
|-
|'''screen''' (<tt>screen</tt>)||
!colspan="2" align="left"|
|-
|'''[[X#Synergy|Synergy]]''' (<tt>synergy</tt>)||<font color="red">v1.4.10!</font> See [[#Synergy|local settings]].
|-
|'''tmux''' (<tt>tmux</tt>)||Alternative to ''screen'', but with support for multiple panes like ''terminator''
|-
|'''[http://todotxt.com/ todo.txt]'''
|
* Copy {{file|todo.sh}} to {{file|/usr/local/bin}}, {{file|todo_completion}} to {{file|/etc/bash_completion.d}}
* Copy {{file|[http://superuser.com/questions/361774/how-to-highlight-contexts-projects-in-todo-txt colorSymbols]}} to {{file|/usr/local/bin}}
* Update {{file|colorSymbols}} filter to process attachment (<code> #attach</code>)
|-
|'''Unison 2.27.57''' (<tt>unison2.27.57</tt>)
|
|-
|'''Compiz scale patch'''
|Fix [https://bugs.launchpad.net/do/+bug/933776 bug 933776]. Via [https://launchpad.net/~mc3man/+archive/fixing-scale ppa] (<code>sudo add-apt-repository ppa:mc3man/fixing-scale</code>)
|-
|'''encFS''' (<tt>encfs</tt>)||
|-
|'''Pidgin + SIPE''' (<tt>pidgin pidgin-sipe</tt>)||
* Configure SIPE plugin as:
** Basic &mdash; Protocol: Office Communicator, Username: '''michael.peeters@nxp.com''', Login: '''michael.peeters@nxp.com''', Password: '''xxxxx'''
** Advanced &mdash; Server: '''sipdir.online.lync.com:443''', Connection type: '''SSL/TLS''', User Agent: '''UCCAPI/4.0.7577.314 OC/4.0.7577.314 (Microsoft Lync 2010)''', Authentication scheme: '''TLS-DSK'''
* See [http://sourceforge.net/p/sipe/wiki/Frequently%20Asked%20Questions/ SIPE FAQ] for info on ''User Agent'' string.
|-
|'''MoreUtils''' (<tt>moreutils</tt>)||For <code>chronic</code> (used in crontab)
|}


=== Development ===
Local applications:


{| class="install_simple_log"
|-
|-
|'''GNU C/C++ compiler''' (<tt>g++</tt>)||
|'''Application''' (<tt>package</tt>)||<small>[YYYY-MM-DD]</small> Update<br/>Additional configuration settings
|-
|'''C/C++ documentation''' (<tt>manpages-posix-dev stl-manual</tt>)||Make SGI doc available at http://localhost/sgi :<source lang="bash">ln -s /usr/share/doc/stl-manual/html /var/www/sgi</source>
|-
|'''GNU libc documentation''' (<tt>glibc-doc</tt>)||
|-
|'''openJDK 7''' (<tt>openjdk-7-jdk openjdk-7-doc</tt>)||Selected alternatives with:
<source lang=bash>
sudo update-alternatives --config java
sudo update-alternatives --config javac
# TODO: Add others (like ant, javah, etc?)
</source>
|-
|'''openJDK 6 32-bit''' (<tt>openjdk-6-jdk:i386</tt>)||Installing after OpenJDK7 brings less dependency issues it seems. See [[Configuration Griffin - Ubuntu|Griffin]] for alternatives
|-
|'''ia32 libraries''' (<tt>ia32-libs libc6-dev:i386 gcc-multilib g++-multilib</tt>)||'''TODO''': Seems we should install <tt>ia32-libs-multiarch</tt> though...<br/>Installing this package removed some package, so reinstall them back with:
<source lang=bash>
sudo apt-get install build-essential g++ dkms \
nvidia-current virtualbox-dkms
</source>
Compiling with <tt>gcc -m32</tt> still does not work though (missing 32-bit <tt>libgcc.a</tt>). Installing package <tt>gcc-4.6:i386</tt> force removal of many 64-bit packages. Instead we go for solution given [http://askubuntu.com/questions/91909/trouble-compiling-a-32-bit-binary-on-a-64-bit-machine here]:
<source lang=bash>
sudo apt-get install gcc-multilib
</source>
|-
|'''Javadoc'''||Installed on http://nxl67002ux/. ''JDK 1.4.2'' in <tt>/data/www/javase/1.4.2/docs</tt>; ''JDK 6u21'' in <tt>/data/www/javase/6/docs</tt>
|-
|'''Perl-doc html''' (<tt>perl-doc-html</tt>)||Available from ''dwww'', section ''Programming/perl''
|-
|'''make documentation''' (<tt>make-doc</tt>)||
|-
|'''USB dev libs''' (<tt>libusb-dev:i386</tt>)||{{blue|(NXP Telematics ATOP dev)}}
|-
|'''ARM RVDS 2.2'''
||{{blue|(NXP Telematics ATOP dev)}}
* Recover env. at '''/cadappl''' from old install
|-
|'''ATOP 2.5g dev packages''' (<tt>patchutils lynx ncftp ksh tcsh sysvbanner flex bison dos2unix gawk</tt>)
||{{blue|(NXP Telematics ATOP dev)}}
* Main reference: <tt>bb/target/jvm/modules/j9port/srce/doc/build_on_linux.html</tt>
* Create symlinks for RTK:
<source lang=bash>
sudo ln -s /usr/bin/perl /usr/local/bin/perl
sudo mkdir -p /usr/ccs/lib
sudo ln -s /usr/bin/cpp /usr/ccs/lib/cpp
</source>
|-
|'''udev dev libs''' (<tt>libudev-dev:i386</tt>)||{{blue|(NXP Telematics ATOP dev)}}
|-
|'''custom udev rules'''||{{blue|(NXP Telematics ATOP dev)}}<br/>File <tt>/etc/udev/rules.d/10-plugdev_hub.rules</tt>
<source lang=bash>
# Basic rule - set group 'plugdev' for all USB HUB
#SUBSYSTEMS=="usb", ATTR{bDeviceClass}=="09", MODE="660", GROUP="plugdev"

# More advanced rule, only set 'plugdev' grp for hub that have an FTDI board connected to them
#SUBSYSTEM=="tty", DRIVERS=="ftdi_sio", RUN+="/etc/udev/rules.d/plugdev_hub.sh"

# Even better, this rules also detects board removal, which allow to reset grp to 'root'
SUBSYSTEM=="tty", KERNEL=="ttyUSB*", RUN+="/etc/udev/rules.d/plugdev_hub.sh"
</source>

File <tt>plugdev_hub.sh</tt>:
<source lang=bash>
#! /bin/bash

# Set group to 'plugdev' for given hub device
function setgrp()
{
DEVNAME=/dev/$(udevadm info -q name -p $1)
chgrp plugdev $DEVNAME
}

# Reset group to 'root' if no ttyUSB device found for given hub
function resetgrp()
{
TTYDEVS=$(find $1 -lname "*/ttyUSB*")
if [ -z "$TTYDEVS" ]; then
DEVNAME=/dev/$(udevadm info -q name -p $1)
chgrp root $DEVNAME
fi
}

if [ "$ACTION" = "add" -o "$ACTION" = "remove" ]; then
F=/sys$DEVPATH
while [ "$F" != "/sys" ] ; do
if [ -a "$F/bDeviceClass" ] ; then
if [ "$(cat $F/bDeviceClass)" == "09" ] ; then
if [ "$ACTION" = "add" ]; then
setgrp $F # add
else
resetgrp $F # remove
true
fi
break
fi
fi
F=$(dirname $F)
done
fi
</source>
|-
|'''pypy''' (<tt>pypy</tt>)||
* Install <code>pypy</code> as virtual environment in {{file|~/bin/local/pypy-env}} (see [[Python]])
* Install alias in {{file|~/bin/local/bashrc.local}}:
<source lang=bash>
if [ -a ~/bin/local/pypy-env/bin/pypy ]; then
alias pypy=~/bin/local/pypy-env/bin/pypy
fi
</source>
|}
|}


Un-installed applications (by uninstall date):
=== Local applications ===
{| class="install_log"
{| class="install_simple_log"
|-
|'''MBR''' (<tt>mbr</tt>)||To create VirtualBox rawdisk
|-
|'''apt-rdepends''' (<tt>apt-rdepends</tt>)||
|-
|'''GraphViz''' (<tt>graphviz</tt>)||To plot package dependencies with <code>apt-cache dotty</code> and <code>apt-rdepends -d</code>
|-
|'''Banshee''' (<tt>banshee</tt>)||
|-
|'''[http://mundogeek.net/nautilus-scripts/#nautilus-play-banshee nautilus-play-banshee]'''||To play music directly from folders
|-
|'''[[Linux Software#Simple Viewers|Feh]]''' (<tt>feh</tt>)||Fast and light image viewer (like ''qiv'')
|-
|'''Bluetooth Manager''' (<tt>blueman</tt>)||To fix re-connect issue with ''Microsft Sculpt Mouse'' (see [http://askubuntu.com/questions/253245/bluetooth-mouse-cant-connect-after-reboot], [https://bugs.launchpad.net/ubuntu/+source/bluez/+bug/1094744])
|-
|'''Mpg123''' (<tt>mpg123</tt>)||to play internet radio stream
|-
|'''Audacious''' (<tt>audacious</tt>)||to play internet radio stream
|-
|'''Stream Tuner 2 & Ripper''' (<tt>streamtuner2 streamripper</tt>)||get a list of internet radios
|-
|'''pdfpc''' (<tt>pdf-presenter-console</tt>)||Note: this really installs David Vilar's fork (version 3.x) ([http://davvil.github.io/pdfpc/ pdfpc])
|}

=== Uninstalled ===
{| class="install_simple_log"
|-
|-
|[yyyy-mm-dd]||'''Application''' (<tt>package</tt>)||<small>[YYYY-MM-DD]</small> uninstalled (reason)
|'''Application''' (<tt>package</tt>)||<small>[YYYY-MM-DD]</small> uninstalled (reason)
|}
|}


== Simple Settings ==
== Simple Settings ==
* '''SUDO''' - keep environment variable '''http_proxy''', '''https_proxy''' (to keep proxy settings for apt-get etc)
* '''SUDO''' - keep environment variables:
** <code>http_proxy</code>, <code>https_proxy</code> (to keep proxy settings for apt-get etc)
* '''SUDO''' - keep environment variable '''GREP_OPTIONS''' (keep grep options)
** <code>GREP_OPTIONS</code> (keep grep options)
* '''SUDO''' - keep environment variable '''DISPLAY''', '''XAUTHORITY''' (avoid doing <code>xhost local:root</code> before launching X pgm)
** <code>DISPLAY</code>, <code>XAUTHORITY</code> (avoid doing <code>xhost local:root</code> before launching X pgm)
* '''SUDO''' - keep environment variable '''HOME''' (e.g. to keep git aliases and settings when using etckeeper)
** <code>HOME</code> (e.g. to keep git aliases and settings when using etckeeper)
{{pl2|<source lang=bash>
{{pl2|1=<source lang=bash>
Defaults env_reset, env_keep="http_proxy https_proxy GREP_OPTIONS DISPLAY XAUTHORITY HOME"
Defaults env_reset
Defaults env_keep += "http_proxy https_proxy GREP_OPTIONS DISPLAY XAUTHORITY HOME"
</source>}}
</source>}}
* '''SUDO''' - Allow '''truecrypt''' and '''rfkill''' w/o password:
* '''SUDO''' - Allow <code>truecrypt</code> and <code>rfkill</code> w/o password:
{{pl2|<source lang=bash>
{{pl2|1=<source lang=bash>
ALL ALL=NOPASSWD: /usr/bin/truecrypt
ALL ALL=NOPASSWD: /usr/bin/truecrypt
ALL ALL=NOPASSWD: /sbin/rfkill
ALL ALL=NOPASSWD: /sbin/rfkill
</source>}}
</source>}}
* '''CRON''' - cron script for automatic '''backup''' of wikis on Noekeon's (see [[{{PAGENAME}} - Files|config files]]).
* '''CRON''' - Add cron script {{file|~/etc/crontab-noekeon}} (backup of wikis on Noekeon.org)
* '''PROXY''' - script for automatic setup of network environment (proxy, ssh...) (see [[{{PAGENAME}} - Files|config files]]).
* '''PROXY''' - script for automatic setup of network environment (proxy, ssh...) (see [[{{PAGENAME}} - Files|config files]]).
* '''Security''' &mdash; Disabled control-alt-del in console as recommended in [https://help.ubuntu.com/10.04/serverguide/C/console-security.html Ubuntu Server Guide]. Comment out the following line in the file <tt>/etc/init/control-alt-delete.conf</tt>:
* '''Security''' &mdash; Disabled control-alt-del in console as recommended in [https://help.ubuntu.com/10.04/serverguide/C/console-security.html Ubuntu Server Guide]. Comment out the following line in the file <tt>/etc/init/control-alt-delete.conf</tt>:
Line 179: Line 375:
#exec shutdown -r now "Control-Alt-Delete pressed"
#exec shutdown -r now "Control-Alt-Delete pressed"
</source>
</source>
* Add user '''www''' for synchronization of <tt>/data/www</tt> folder (''localhost'' page):
* Add user '''www''' for synchronization of {{file|/data/www}} folder (''localhost'' page):
<source lang="bash">
<source lang="bash">
sudo useradd -g www-data -G users -u 999 -s /bin/bash -m www
sudo useradd -g www-data -G users -u 999 -s /bin/bash -m www
Line 187: Line 383:
scp .ssh/id_rsa.pub .ssh/authorized_keys
scp .ssh/id_rsa.pub .ssh/authorized_keys
</source>
</source>
* '''~/bin''' &mdash; Convert scripts for new hostname '''nxl6717ux''' and '''NXL67170''' (see <tt>~/bin/restore_wiki.sh</tt>, <tt>~/bin/generate_wiki_page.sh</tt>, <tt>~/bin/set-network.sh</tt>, files in <tt>~/.unison</tt>)
* Force locale time to <code>en_US.UTF-8</code>. Add to {{file|~/.profile}}:
export LC_TIME="en_US.UTF-8"


'''For Telematics build environment'''
* '''CRON''' - Add cron script '''~/work/NXP/ATOP/crontab-svn-fetch''' (fetch svn database automatically)
* '''Printer''' &mdash; add '''Canon''' network printer (select ''IPP network printer via DNS-SD'' for protocol)


== Detailed System Settings ==
== Detailed System Settings ==
Line 202: Line 406:
* Software to install: '''Ubuntu Desktop'''
* Software to install: '''Ubuntu Desktop'''
* Partition: see [[Configuration NXP Dell Latitude E5430#Partition|main page]]
* Partition: see [[Configuration NXP Dell Latitude E5430#Partition|main page]]

=== Upgrade to Ubuntu 14.04 Trusty Tahr ===
* Get list of packages not coming from repositories
apt-show-versions | grep -v uptodate
* Add back some repositories
sudo add-apt-repository ppa:recoll-backports/recoll-1.15-on
sud apt-get update
sudo apt-get upgrade
* Remove / reinstall obsolete packages
sudo apt-get purge app-install-data-medibuntu medibuntu-keyring psmouse-dkms adobeair
sudo apt-get install git-annex=5.20140412ubuntu1
* Reinstall grub (to fix <code>file not found</code> error messages at boot [https://bbs.archlinux.org/viewtopic.php?id=147123])
sudo grub-install --directory=/usr/lib/grub/i386-pc --target=i386-pc --recheck /dev/sda
sudo grub-mkconfig -o /boot/grub/grub.cfg


=== Kernel ===
=== Kernel ===
Line 208: Line 426:
=== File System ===
=== File System ===
* For details, see [[{{PAGENAME}} - Files|/etc/fstab]].
* For details, see [[{{PAGENAME}} - Files|/etc/fstab]].
** '''NTFS''' &mdash; '''C:''' &rarr; do '''not''' mount automatically. <font color="red">'''Risk of corruption''' if mounted while VirtualBox is running!</font><br/> Also NTFS partition must be mounted without <tt>umask=007,gid=46</tt>, or will get ''operation not permitted'' when modifying timestamps:
* '''NTFS''' partition:
** '''Reiserfs''' &mdash; '''/''' &rarr; enable '''acl'''
** '''C:''' &rarr; do '''not''' mount automatically. <font color="red">'''Risk of corruption''' if mounted while VirtualBox is running!</font>
** '''D:''' &rarr; mount as <tt>/win/d</tt>.
** '''ext4''' &mdash; '''/data''' &rarr; enable '''acl''' and '''data=writeback'''
* '''NTFS''' partition must be mounted without <tt>umask=007,gid=46</tt>, or will get ''operation not permitted'' when modifying timestamps:
<source lang="text">
<source lang="text">
/dev/sda2 /win/c ntfs ro,users,nls=utf8,exec 0 2
/dev/sda2 /c ntfs ro,users,nls=utf8,exec 0 2
/dev/sda7 /win/d ntfs users,nls=utf8,exec 0 2
UUID=... / reiserfs notail,noatime,acl 0 1
UUID=... /data ext4 defaults,noatime,data=writeback,acl 0 2
</source>
</source>
* File system structure:
* File system structure:
<div style="padding-left:2em">
<div style="padding-left:2em">
'''<u>/</u>''':
'''<u>/</u>''':
drwxr-xr-x root root <font color="blue">boot</font>/ <font color="gray"># /dev/sda3</font>
drwxr-xr-x root root <font color="blue">boot</font>/ <font color="gray"># /dev/sda3</font>
drwxr-xr-x root root <font color="blue">data</font>/ <font color="gray"># /dev/sda8</font>
drwxr-xr-x root root <font color="blue">c</font>/ <font color="gray"># /dev/sda2</font>
drwxr-xr-x root root <font color="blue">net</font>/
lrwxrwxrwx root root <font color="darkcyan">d</font> -> <font color="blue">/data/d</font>/
lrwxrwxrwx root root <font color="darkcyan">sage</font> -> <font color="blue">/data/sage-4.2.1</font>/
drwxr-xr-x root root <font color="blue">data</font>/ <font color="gray"># /dev/sda8</font>
drwxr-xr-x root root <font color="blue">smb</font>/
drwxr-xr-x root root <font color="blue">net</font>/
drwxr-xr-x root root <font color="blue">win</font>/
lrwxrwxrwx root root <font color="darkcyan">sage</font> -> <font color="blue">/data/sage-6.0</font>/
drwxr-xr-x root root <font color="blue">smb</font>/
drwxr-xr-x root root <font color="blue">win</font>/
'''<u>/data</u>''':
'''<u>/data</u>''':
drwxr-xr-x root root <font color="blue">home</font>/
drwxrwsr-x+ beq06659 vbox <font color="blue">d</font>/
drwxr-xr-x beq06659 beq06659 <font color="blue">sage-4.2.1</font>/
drwxr-xr-x root root <font color="blue">home</font>/
drwxr-xr-x www-data root <font color="blue">www</font>/
drwxr-xr-x beq06659 beq06659 <font color="blue">sage-6.0</font>/
drwxr-sr-x+ root www-data <font color="blue">www</font>/
'''<u>/home/beq06659</u>''':
'''<u>/home/beq06659</u>''':
lrwxrwxrwx beq06659 beq06659 <font color="darkcyan">Documents</font> -> <font color="blue">/windows/d/Profiles/beq06659/My Documents</font>/
lrwxrwxrwx beq06659 beq06659 <font color="darkcyan">Documents</font> -> <font color="blue">/d/documents</font>/
'''<u>/net</u>''':
'''<u>/net</u>''':
<font color="gray"># NFS autofs</font>
<font color="gray"># NFS autofs</font>
'''<u>/smb</u>''':
'''<u>/smb</u>''':
drwxr-xr-x root root <font color="blue">mnemosyne</font>/ <font color="gray"># SMB autofs</font>
drwxr-xr-x root root <font color="blue">mnemosyne</font>/ <font color="gray"># SMB autofs</font>
'''<u>/var</u>''':
'''<u>/var</u>''':
lrwxrwxrwx root root <font color="darkcyan">www</font> -> <font color="blue">/data/www</font>/
lrwxrwxrwx root root <font color="darkcyan">www</font> -> <font color="blue">/data/www</font>/
'''<u>/win</u>''':
drwxr-xr-x root root <font color="blue">c</font>/ <font color="gray"># /dev/sda2</font>
lrwxrwxrwx root root <font color="blue">d</font>/ <font color="gray"># /dev/sda7</font>
</div>
</div>
* Configure '''acl''' on <tt>/data/d</tt>:
* Configure '''acl''' on <tt>/data/d</tt>:
<source lang=bash>
<source lang=bash>
# VirtualBox uses /data/d as Windows D: drive. Since VirtualBox runs as 'root', all files gets root/root ownership.
# VirtualBox uses /data/d as Windows D: drive. Since VirtualBox runs as 'vbox', all files gets vbox/vbox ownership.
# We use acl so that files gets group access beqO6659/rwx by default
# beq06659 user is in group 'vbox' so he can access all files created by vbox.
# We use acl so that files gets group access vbox/rwx, so that vbox can also access any file created by other users.
# OLD CONFIG:
# # VirtualBox uses /data/d as Windows D: drive. Since VirtualBox runs as 'root', all files gets root/root ownership.
# # We use acl so that files gets group access beqO6659/rwx by default
cd /data
cd /data
sudo chgrp -R beq06659 d
sudo chgrp -R vbox d
sudo chmod -R g+w d
sudo chmod -R g+w d
find d -type d -print0|sudo xargs -0 chmod g+s
find d -type d -print0|sudo xargs -0 chmod g+ws
find d -type d -print0|sudo xargs -0 setfacl -m d:group:beq06659:rwx
find d -type d -print0|sudo xargs -0 setfacl -m d:group:vbox:rwx
</source>
</source>
* Configure '''acl''' on <tt>/data/www</tt>:
* Configure '''acl''' on <tt>/data/www</tt>:
Line 256: Line 478:
cd /data
cd /data
sudo chgrp -R www-data www
sudo chgrp -R www-data www
find d -type www -print0|sudo xargs -0 chmod g+s
find www -type d -print0|sudo xargs -0 chmod g+s
find d -type www -print0|sudo xargs -0 setfacl -m d:group:www-data:r-x
find www -type d -print0|sudo xargs -0 setfacl -m d:group:www-data:r-x
find d -type www print0|sudo xargs -0 setfacl -m d:user:www:r-x # TODO: this one does not work with root...
find www -type d -print0|sudo xargs -0 setfacl -m d:user:www:r-x # TODO: this one does not work with root...
</source>
</source>


Line 344: Line 566:
</source>
</source>
</ul>
</ul>
<li>'''NXP Wired''' (see [[Linux Admin#Network Manager - Search Path]])</li>
<li>'''NXP Wired'''</li>
* Added local domain name <tt>be-leu01.nxp.com</tt> to <tt>/etc/resolv.conf</tt>
* Added local domain name <tt>be-leu01.nxp.com</tt> to <tt>/etc/resolv.conf</tt> ({{red|! do not edit this file directly}}, see [[Linux Admin#Network Manager - Search Path]])
<li>'''NXP Wireless''' (see [[Linux Admin#Wireless Network]])</li>
<li>'''NXP Wireless''' (see [[Linux Admin#Wireless Network]])</li>
* Network name (SSID): '''WLAN-WBI'''
* Network name (SSID): '''WLAN-NXP'''
* Wireless security: '''Dynamic WEP (802.1x)'''
* Wireless security: '''WPA & WPA2 Enterprise'''
* Authentication: '''TLS'''
* Authentication: '''TLS'''
* Identity: '''michael.peeters@nxp.com'''
* Identity: '''beq06659'''
* User certificate / CA certificate / Private key: imported from Windows ('''NXP Enterprise CA 1''' for '''Client Authentication, Secure Email''', serial '''2F DF 1F D4 00 00 00 00 5E 1C''')
* User certificate / CA certificate / Private key: imported from Windows ('''EMEA-CA''', exp. '''2014-02-18''', for '''Client Authentication, Secure Email''')
<li>'''Privoxy''' settings:
<li>'''Privoxy''' settings:
* Added to <tt>/etc/privoxy/user.action</tt>:
* Added to <tt>/etc/privoxy/user.action</tt>:
Line 357: Line 579:
{ -filter }
{ -filter }
tennislibre.com
tennislibre.com
</source>
* Add filter settings for ''chromanova'' web-radio (config file):
<source lang=bash>
# 3 forward rules for chromanova radio
forward 85.25.86.69 emea.nics.nxp.com:8080
forward 91.143.81.239 emea.nics.nxp.com:8080
forward 212.112.241.88 emea.nics.nxp.com:8080
</source>
</source>
</ul>
</ul>
Line 381: Line 610:


=== Preferences ===
=== Preferences ===

<ul>
<ul>
<li>'''Fonts''' (via <tt>ubuntu-tweak</tt>):</li>
<li>Theme</li>
{| class=wikitable
The mighty '''[[Gnome#Macbuntu|Macbuntu 10.04]]''' theme! Reverted changes:
* '''Fonts''' &mdash; see below.
* '''Terminal''' &mdash; ''Colors'' select '''Use colors from system theme''' (was set to ''Gray on black'' built-in schemes). Keep transparent background '''95%'''.
* '''Panel''' &mdash; add back '''System Monitor'''. We don't add back the bottom task panel.
* In Configuration Editor, '''<tt>/apps/metacity/general/button_layout</tt>''': <tt>menu:minimize,maximize,close</tt>

<li>Appearance</li>
* <s>(before ''Macbuntu'') Fonts &mdash; ''Application'' &rarr; '''Tahoma 9'''; ''Document''&rarr; '''Sans 8'''; ''Desktop'' &rarr; '''Sans 8'''; Title &rarr; '''Sans Bold 9'''; ''Fixed width'' &rarr; '''Monospace 8'''</s>
* (after ''Macbuntu'') Fonts &mdash; ''Application'' &rarr; '''Lucida Grande 9'''; ''Document''&rarr; '''Lucida Grande 9'''; ''Desktop'' &rarr; '''Lucida Grande 9'''; Title &rarr; '''Lucida Grande 10'''; ''Fixed width'' &rarr; '''Lucida Console 9''' (originally ''Lucida Console 10'')
* Fonts &mdash; rename <tt>~/.fonts.conf</tt> to <tt>~/.fonts.conf.macbuntu</tt> to disable macbuntu hinting settings override.

<li>Appearance</li>
* <tt>Isabelle Hires Noir&Blanc crop-despeckle 936x1200.png</tt>, in <tt>~/etc</tt>.

<li>Keyboard Layout (System-Wide)</li>
* Layout: '''Belgium''' (default) + '''USA''', no separate layout<br/>Custlayout '''Belgium''' (file <tt>/usr/share/X11/xkb/symbols/be</tt>) to allow ''AltGr-;'' &rarr; '<tt>&lt;</tt>' and ''AltGr-:'' &rarr; '<tt>&gt;</tt>', and support ''Greek letters'' with ''AltGr-Shift''.
* Options: '''Capslock''' affects all keys, '''Alt+CapsLock''' or '''Right Ctrl+Right Shift''' switch layout, '''right alt''' chooses 3rd level.<br/><small>(because ''Alt+Shift'',''Left Ctrl+Left Shift'' prevents ''ctrl-alt-shift'' shortcuts to work, ''Right Ctrl'' conflicts with VirtualBox)</small>

<li>Keyboard Shortcuts</li>
{| class="wikitable"
|-
|-
!Category!!Font!!Size
! Shortcut !! Action !! Remark
|-
|-
|Default Font||Ubuntu||9
| '''Super-E''' || Home Folder || Hack ''Super is mapped to Win keys'' not needed anymore it seems
|}

<li>Window List Panel (see [[Gnome#Configuring the Window List Panel|here]])</li>
* Window List Content &rarr; '''Show windows from all workspaces'''
* Restoring Minimized Windows &rarr; '''Restore to native workspace'''

<li>[[Fonts|Fonts]]</li>
* System fonts (<tt>/usr/local/share/fonts</tt>):
:Added '''BitStream Vera 1.10'''
:Added '''jsMath fonts''' (Linux variant, [http://www.math.union.edu/~dpvc/jsMath/download/TeX-fonts-linux.tgz darkness 20 file], see [http://www.math.union.edu/~dpvc/jsMath/download/jsMath-fonts.html here])
:Added all '''jsMath extra fonts''' ([http://www.math.union.edu/~dpvc/jsmath/download/extra-fonts/welcome.html dark version from this page])
* User fonts (<tt>~/.fonts</tt>):
:Added '''Tahoma'''

<li>[[Gnome#Compiz|Compiz]]</li>
* ''General Option - Move Window'': {{kb|Su}}{{kbname|Button2}}<br/>''because {{kb|A}}{{kbname|Button3}} is used in OpenOffice to move columns / rows''
* ''Static Application Switcher'': Use {{kb|A}}{{kbname|Alt}} for <tt>Next Window (current workspace)</tt>
* ''Scale'': '''Multi-Output Mode''' &rarr; '''On all output devices''', '''darken background''', '''Emblem''' for overlay icon
* ''Ring Switcher'': Enabled + Use {{kb|Su}}{{kbname|Tab}} for <tt>Next Windows (All Workspaces)</tt> + '''Allow Mouse Selection'''
* ''Enhanced Zoom Desktop'': Disabled
* ''Negative'': Disabled
* ''Desktop Wall'': enabled '''Edge Flip Move'''.
* ''Put'' : disabled ''Put Pointer'', enabled '''Put To Next Output''' ({{kb|Super}}{{kbkey|z}}) selected '''Avoid Offscreen'''.
{| class="wikitable"
|+ Frequently used Compiz shortcuts (bold are custom ones)
|-
|-
|Desktop Font||Sans||9
! Shortcut !! Action !! Remark
|-
|-
|Monospace font||Lucida Console Semi-Condensed||10
|'''{{kb|S}}{{kb|A}}{{kbname|Space}}'''<br/>'''{{kb|Su}}{{kbname|Button3}}'''|| General Options - Window Menu
|-
|-
|Document font||Sans||10
|{{kb|C}}{{kb|A}}{{kbname|Left}}<br/>{{kb|C}}{{kb|A}}{{kbname|Right}}|| Desktop Wall - Move ||
|-
|-
|Window title bar font||Ubuntu Bold||10
|{{kb|S}}{{kb|C}}{{kb|A}}{{kbname|Left}}<br/>{{kb|S}}{{kb|C}}{{kb|A}}{{kbname|Right}}|| Desktop Wall - Move with window ||
|-
|'''{{kb|S}}{{kb|Su}}{{kbkey|e}}'''||Expo Key||
|-
|{{kb|A}}{{kbname|F7}}||Move Window||
|-
|'''{{kb|Su}}{{kbkey|z}}'''||Windows Put To Next Output||
|-
|{{kb|A}}{{kbname|F8}}<br/>'''{{kb|Su}}{{kbname|Button2}}'''||Resize Window||
|-
|'''{{kb|Su}}{{kbname|Tab}}'''<br/>'''{{kb|S}}{{kb|Su}}{{kbname|Tab}}'''|| Ring Switcher || (All Workspaces)
|-
|'''{{kb|Su}}{{kbkey|w}}'''<br/>'''{{kb|Su}}{{kbkey|a}} / {{kb|{{kbname|TopLeft}}}} / {{kb|{{kbname|TopRight}}}}'''|| Scale windows || Current viewport<br/>All windows
|-
|'''{{kb|A}}{{kbname|Tab}}'''<br/>'''{{kb|S}}{{kb|A}}{{kbname|Tab}}'''|| Static application switcher || Current viewport
|}
|}
* Hinting: '''Basic'''
</ul>
* Antialiasing: '''Subpixel antialising (LCD screens only)
<li>Keyboard</li>
* [[Ubuntu#Assign Ctrl-Alt-Del to Shutdown dialog|Assign Ctrl-Alt-Del to Shutdown dialog]]
<li>Appearance</li>
* Launcher icon size: '''32'''
<li>Desktop icons (via <tt>ubuntu-tweak</tt>)</li>
* Show desktop icons: '''ON''' (switching off disable the wallpaper as well!)
<li>File Manager (via <tt>ubuntu-tweak</tt>)</li>
* Use the location entry instead of the pathbar: '''ON'''
<li>Displays</li>
* Sticky edges: '''OFF'''
* Launcher placement: '''leftmost''' screen only (or we will have sticky edge on the middle edge)
<li>Brightness and Lock</li>
* Turn off screen: '''after 5 minutes'''
* Lock: '''Disabled'''
<li>Theme</li>
* Macbuntu 14.04. See [[Ubuntu]].
* Compiz settings, see [[Ubuntu]].
* Wallpaper: {{file|Pirate Mac.jpg}} (previous was {{file|Isabelle Hires Noir&Blanc crop-despeckle 936x1200.png}}).

=== Users ===
<source lang=bash>
sudo gpasswd -a $USER dialout # for access to /dev/ttyUSB0
sudo gpasswd -a $USER fuse # to allow mounting FUSE fs (like curlftpfs)
</source>


== Detailed Application Settings ==
== Detailed Application Settings ==
Line 473: Line 670:
** Created <tt>/etc/courier/userdb</tt>, and kept entries for '''root''', '''localuser''' and '''beq06659'''
** Created <tt>/etc/courier/userdb</tt>, and kept entries for '''root''', '''localuser''' and '''beq06659'''
** Use password from <tt>/etc/courier/userdb</tt> (method '''authuserdb''').
** Use password from <tt>/etc/courier/userdb</tt> (method '''authuserdb''').
* Recovered most files from ''nxl67002ux'', but it '''failed''' at first because users where assigned different UID!!!<br/>Make sure users have identical UID, or courier will complain it has not the permission to access Maildir/p

=== Crontab ===
<source lang=bash>
# Crontab
#
# Install this crontab with
#
# sed -r '/^#/!s/\$USER/'$USER'/g' crontab-noekeon | crontab
#
# !!! THIS WILL OVERWRITE ANY CURRENT CRONTAB !!!
#
# Or append only job to current crontab
#
# ( crontab -l; sed -r '$!d;s/\$USER/'$USER'/g' crontab-noekeon ) | crontab
#
# Use /bin/bash to run commands, instead of the default /bin/sh
SHELL=/bin/bash
# Define variable USER because we need it in our job scripts
USER=beq06659
# Mail any output to '$USER', no matter whose crontab this is
MAILTO=beq06659
# Set PATH - by default it is set to /usr/bin:/bin
PATH=/home/beq06659/bin:/usr/local/bin:/usr/bin:/bin
#
#
# m h dom mon dow command (dow=0|7 is sunday)
37 * * * * chronic ~beq06659/bin/backup_main ~beq06659/etc/backup-noekeon
33 * * * * chronic ~beq06659/bin/fetch_all_svn.sh
30 12 * * * RCLCRON_RCLINDEX= RECOLL_CONFDIR="/home/beq06659/.recoll/" recollindex
42 * * * * chronic ~beq06659/bin/local/fetch_all_git.sh
37 * * * * chronic ~beq06659/bin/backup_main ~beq06659/etc/backup-nxpwiki
47 * * * * chronic ~beq06659/bin/local/deduplocal.sh
50 * * * * chronic ~beq06659/bin/backup_main ~beq06659/etc/backup-evoswiki
</source>


=== Firefox ===
=== Firefox ===
Line 510: Line 742:
* Apache root http directory is '''/var/www'''
* Apache root http directory is '''/var/www'''
* Enable ''mod-rewrite'' module.<br/> In <tt>/etc/apache2/sites-available/default</tt>, change as: <code>AllowOverride <s>{{red|None}}</s>{{green|FileInfo}}</code> (twice).
* Enable ''mod-rewrite'' module.<br/> In <tt>/etc/apache2/sites-available/default</tt>, change as: <code>AllowOverride <s>{{red|None}}</s>{{green|FileInfo}}</code> (twice).
* Enable mathjax:

:First install it:
sudo apt-get install libjs-mathjax
:Then edit {{file|/etc/apache2/sites-available/default-ssl.conf}}:
<source lang=diff>
DocumentRoot /var/www
+Alias /mathjax /usr/share/javascript/mathjax
</source>


Create databases that will store local copies of ''cryptokiwi'' and ''mikiwiki'' wiki, and of ''mikido'':
Create databases that will store local copies of ''cryptokiwi'' and ''mikiwiki'' wiki, and of ''mikido'':
Line 537: Line 776:
* Icon View, Compact View: zoorm '''66%'''
* Icon View, Compact View: zoorm '''66%'''
* Preview: all set to '''Never''', and only for files smaller than '''500kB''' (to prevent thumbnailing PDFs...)
* Preview: all set to '''Never''', and only for files smaller than '''500kB''' (to prevent thumbnailing PDFs...)

=== Opera ===
* (nxp) Import collabnet client-side certificate (<tt>beq06659.pfx</tt>)
* Change fonts (''Preferences'' &rarr; ''webpages'' &mdash; requires restart for changes to take effect!):
** Normal font: '''DejaVu Sans, 16'''.
** Monospace font: '''DejaVu Sans Mono'', 16'''.


=== Psi ===
=== Psi ===
Line 604: Line 849:
=== [[Vim|Vim]] ===
=== [[Vim|Vim]] ===
* Added <tt>~/.bash_completion</tt> from [http://vim.wikia.com/wiki/Using_bash_completion_with_ctags_and_Vim] (modified to also take <code>alias '''v'''=gvim</code>)
* Added <tt>~/.bash_completion</tt> from [http://vim.wikia.com/wiki/Using_bash_completion_with_ctags_and_Vim] (modified to also take <code>alias '''v'''=gvim</code>)

=== [[VirtualBox|VirtualBox]] ===
* See '''[[Configuration NXP Dell Latitude E5430#Log|virtual machine configuration log]]'''.
* Installed with apt (original version 4.2.8)
* VirtualBox is launched as user '''root''' (because it seems that only the current user and '''root''' can access '''PulseAudio''' in a same X session &mdash; see [https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/433654])
* Allow user '''beq06659''' to launch VirtualBox through user ''root''. Add to <tt>/etc/sudoers</tt>:
{{pl2|<source lang="text">beq06659 ALL=NOPASSWD: /usr/bin/VirtualBox</source>}}
* Helper script to add to e.g. <tt>~/bin</tt> :
{{pl2|<source lang="bash" enclose=prevalid>
#First allow user vbox to connect to X11
#xhost +SI:localuser:vbox
#sudo su vbox -c /usr/bin/VirtualBox&

#New config - run VirtualBox as root to allow sound
sudo /usr/bin/VirtualBox&
</source>}}
* Create a launcher in <tt>~/.local/share/applications/virtualbox-root.desktop</tt>
{{pl2|<source lang=bash>
#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon[en_US]=VBox
Name[en_US]=Oracle VM VirtualBox (root)
Exec=/home/beq06659/bin/vbox.sh
Comment[en_US]=Run several virtual systems on a single host computer
Name=Oracle VM VirtualBox (root)
Comment=Run several virtual systems on a single host computer
Icon=VBox
</source>}}


=== Wine ===
=== Wine ===
See [[Configuration NXP Dell Latitude E5430 - Wine]].
See [[Configuration NXP Dell Latitude E5430 - Wine]].


== To Do ==
== Issues and To Do ==
=== Issues ===
=== Issues ===
See [[Common Issues]]
* '''{{red|Issue}}''' — To be completed

* '''{{red|To Do}}''' — Description
=== To Do ===
* '''{{red|To Do}}''' &mdash; Set up smtp server for localhost (to allow sending mail to remote server from local smtp)
* '''{{red|To Do}}''' &mdash; See To Do / Issue list on [[Configuration NXP Dell Latitude E6500]]
* '''{{red|To Do}}''' &mdash; '''recoll''', install more filters: ''python:epub, python:midi, python:rarfile'' (see <tt>~/.recoll/missing</tt>)
* '''{{red|To Do}}''' &mdash; Install macbuntu or similar theme, if available
* '''{{red|To Do}}''' &mdash; See [[Ubuntu#Guides|Ubuntu 14.04 Trusty Tahr guides]]
* '''{{red|To Do}}''' &mdash; Things to try, as demo'ed by Alicia Da Conceicao on her Surface Pro 2:
** MS Office on Wine + Play on Linux
** Connect to MS Exchange using Evolution
** Connect to MS Lync using Online Buddy (Pidgin)


=== Done & Fixed ===
=== Done ===
* '''{{green|Fixed}}''' — Issue description<br/>Fix description
* '''{{green|Done}}''' — Description
* '''{{green|Done}}''' — Description

Latest revision as of 06:30, 9 April 2019

Introduction

This is the configuration page for the Ubuntu Precise 12.04 partition on NXL67170.

Configuration Files

All configuration files can be found here.

Repositories

sudo add-apt-repository ppa:texlive-backports/ppa
sudo add-apt-repository ppa:libreoffice/libreoffice-4-0
sudo apt-get update
sudo apt-get install libreoffice-gnome

Installed Applications

Common applications

See Common configuration for Linux.

Essential

VirtualBox (virtualbox-4.3)
  • Script to reset network / bluetooth after suspend / network env. change (see VirtualBox)
Privoxy (privoxy)
Gufw (gufw) graphical front-end to ufw
SSH Tunnel script (sshtunnel.pl, libssl-dev) Thierry Walrant's Perl script sshtunnel.pl
LAMP (apache2 php5 mysql-server mysql-client php5-mysql) See local config
PHPMyAdmin (phpmyadmin) Install for apache2 + configure phpmyadmin database + see local config
dwww (dwww)
Courier IMAP (courier-imap courier-doc courier-imap-ssl) Install instructions and local settings
Courier-POP3 (courier-pop courier-pop-ssl)
qmail (ucspi-tcp qmail qmail-run qmail-uids-gids) See qmail page — added qmail-run qmail-uids-gids to get SMTP service
NTP (ntp)
  • synchronize with NTP server automatically
  • add to /etc/ntp.conf:
server wbi.nxp.com iburst
HTTrack (httrack)
WireShark (wireshark tshark)
TrueCrypt v7.1a, with AES-NI instructions!
  • Preferences → uncheck Preserve modification timestamp of file containers (such that they are included in rsync backup without need for --checksum).
Samba Server (samba smbfs) See local config
ACL (acl)
Google Chrome (chromium-browser)
Thunderbird (thunderbird)
Wine (wine) See Wine page
Psi (psi) See local config
CUPS PDF (cups-pdf) Allow CUPS to access ~/PDF:
sudo aa-complain cupsd
LaTeX
  • See LaTeX for install instructions
  • Complete TeXLive 2013 install (at /usr/local/texlive/2013, with symlink at /opt/texbin).
  • Update pdftex.map in the user profile (see [3]):
updmap                # Update user's pdftex.map
Google Earth (googleearth googleearth-data) Requires Medibuntu repository
Recoll desktop search (recoll) See also Recoll page.
pdftk (pdftk)
Git (git-gui gitk git-doc gitweb)
  • [2013-02-20]Updated to 1.7.10.5 compiled from source.
sudo apt-get install autoconf zlib1g-dev libcurl4-openssl-dev expat asciidoc     # More packages might be needed
git clone git://github.com/gitster/git.git          # Use proxygit if behind a proxy
cd git
make configure                                      # See also INSTALL
./configure --prefix=/usr/local                     # In // of existing package installation. /usr/local has precedence
make all doc
sudo make install install-doc install-html
  • [2013-02-20] — Installed tileqt tcl/tk widget theme for gitk (see here).
  • Add system user git but using shell /usr/bin/git-shell:
sudo adduser --system --home /home/git --shell /usr/bin/git-shell git
# Add ssh keys to ~git/.ssh/authorized_keys
Some git browsers (qgit gitg source-highlight) [2013-02-20] gitg updated to 0.0.7!
KDirStat (kdirstat)
Color Diff (colordiff)
Word Diff (wdiff)
Diffuse (diffuse)
bsdiff (bsdiff)
KDiff3-QT (kdiff3-qt) (QT version has no dep on KDE) Settings → Integration → add ;-- to command line opts to ignore, and check Quit also via Escape key
Diffstat (diffstat)
Ack (ack-grep) A better grep...
sudo ln -s /usr/bin/ack-grep /usr/local/bin/ack
Ag (silversearcher-ag) A better ack... Installed grom git.
Hexedit (hexedit) Hex editor
Hexer (hexer) Hex editor with vi-like interface
Uncrustify (uncrustify) v0.59, simply compiled from source (./configure; make; sudo make install)
socat (socat)
multitee (multitee)
colortail (colortail)
Qiv (qiv)
libdvdcss2 Installed via sudo /usr/share/doc/libdvdread4/install-css.sh (see also [4])
VLC (vlc)
pipe viewer (pv)
Acrobat Reader (acroread) Edit mime type in ~/.local/share/applications/mimeapps.list:
[Added Associations]
application/pdf=acroread.desktop;evince.desktop;gimp.desktop

Add to ~/.mailcap:

application/pdf; acroread '%s'; test=test -n "$DISPLAY"; nametemplate=%s.pdf
application/x-pdf; acroread '%s'; test=test -n "$DISPLAY"; nametemplate=%s.pdf
application/x-bzpdf; acroread '%s'; test=test -n "$DISPLAY"; nametemplate=%s.pdf.bz2
application/x-gzpdf; acroread '%s'; test=test -n "$DISPLAY"; nametemplate=%s.pdf.gz
  • Add Digital ID for NXP DocStore
screen (screen)
Synergy (synergy) v1.4.10! See local settings.
tmux (tmux) Alternative to screen, but with support for multiple panes like terminator
todo.txt
  • Copy todo.sh to /usr/local/bin, todo_completion to /etc/bash_completion.d
  • Copy colorSymbols to /usr/local/bin
  • Update colorSymbols filter to process attachment ( #attach)
Unison 2.27.57 (unison2.27.57)
Compiz scale patch Fix bug 933776. Via ppa (sudo add-apt-repository ppa:mc3man/fixing-scale)
encFS (encfs)
Pidgin + SIPE (pidgin pidgin-sipe)
  • Configure SIPE plugin as:
    • Basic — Protocol: Office Communicator, Username: michael.peeters@nxp.com, Login: michael.peeters@nxp.com, Password: xxxxx
    • Advanced — Server: sipdir.online.lync.com:443, Connection type: SSL/TLS, User Agent: UCCAPI/4.0.7577.314 OC/4.0.7577.314 (Microsoft Lync 2010), Authentication scheme: TLS-DSK
  • See SIPE FAQ for info on User Agent string.
MoreUtils (moreutils) For chronic (used in crontab)

Development

GNU C/C++ compiler (g++)
C/C++ documentation (manpages-posix-dev stl-manual) Make SGI doc available at http://localhost/sgi :
ln -s /usr/share/doc/stl-manual/html /var/www/sgi
GNU libc documentation (glibc-doc)
openJDK 7 (openjdk-7-jdk openjdk-7-doc) Selected alternatives with:
sudo update-alternatives --config java
sudo update-alternatives --config javac
# TODO: Add others (like ant, javah, etc?)
openJDK 6 32-bit (openjdk-6-jdk:i386) Installing after OpenJDK7 brings less dependency issues it seems. See Griffin for alternatives
ia32 libraries (ia32-libs libc6-dev:i386 gcc-multilib g++-multilib) TODO: Seems we should install ia32-libs-multiarch though...
Installing this package removed some package, so reinstall them back with:
sudo apt-get install build-essential g++ dkms \
     nvidia-current virtualbox-dkms

Compiling with gcc -m32 still does not work though (missing 32-bit libgcc.a). Installing package gcc-4.6:i386 force removal of many 64-bit packages. Instead we go for solution given here:

sudo apt-get install gcc-multilib
Javadoc Installed on http://nxl67002ux/. JDK 1.4.2 in /data/www/javase/1.4.2/docs; JDK 6u21 in /data/www/javase/6/docs
Perl-doc html (perl-doc-html) Available from dwww, section Programming/perl
make documentation (make-doc)
USB dev libs (libusb-dev:i386) (NXP Telematics ATOP dev)
ARM RVDS 2.2 (NXP Telematics ATOP dev)
  • Recover env. at /cadappl from old install
ATOP 2.5g dev packages (patchutils lynx ncftp ksh tcsh sysvbanner flex bison dos2unix gawk) (NXP Telematics ATOP dev)
  • Main reference: bb/target/jvm/modules/j9port/srce/doc/build_on_linux.html
  • Create symlinks for RTK:
sudo ln -s /usr/bin/perl /usr/local/bin/perl
sudo mkdir -p /usr/ccs/lib
sudo ln -s /usr/bin/cpp /usr/ccs/lib/cpp
udev dev libs (libudev-dev:i386) (NXP Telematics ATOP dev)
custom udev rules (NXP Telematics ATOP dev)
File /etc/udev/rules.d/10-plugdev_hub.rules
# Basic rule - set group 'plugdev' for all USB HUB
#SUBSYSTEMS=="usb", ATTR{bDeviceClass}=="09", MODE="660", GROUP="plugdev"

# More advanced rule, only set 'plugdev' grp for hub that have an FTDI board connected to them
#SUBSYSTEM=="tty", DRIVERS=="ftdi_sio", RUN+="/etc/udev/rules.d/plugdev_hub.sh"

# Even better, this rules also detects board removal, which allow to reset grp to 'root'
SUBSYSTEM=="tty", KERNEL=="ttyUSB*", RUN+="/etc/udev/rules.d/plugdev_hub.sh"

File plugdev_hub.sh:

#! /bin/bash

# Set group to 'plugdev' for given hub device
function setgrp()
{
    DEVNAME=/dev/$(udevadm info -q name -p $1)
    chgrp plugdev $DEVNAME
}

# Reset group to 'root' if no ttyUSB device found for given hub
function resetgrp()
{
    TTYDEVS=$(find $1 -lname "*/ttyUSB*")
    if [ -z "$TTYDEVS" ]; then
        DEVNAME=/dev/$(udevadm info -q name -p $1)
        chgrp root $DEVNAME
    fi
}

if [ "$ACTION" = "add" -o "$ACTION" = "remove" ]; then
    F=/sys$DEVPATH
    while [ "$F" != "/sys" ] ; do 
        if [ -a "$F/bDeviceClass" ] ; then
            if [ "$(cat $F/bDeviceClass)" == "09" ] ; then
                if [ "$ACTION" = "add" ]; then
                    setgrp $F                           # add
                else
                    resetgrp $F                         # remove
                    true
                fi
                break
            fi
        fi
        F=$(dirname $F)
    done
fi
pypy (pypy)
  • Install pypy as virtual environment in ~/bin/local/pypy-env (see Python)
  • Install alias in ~/bin/local/bashrc.local:
if [ -a ~/bin/local/pypy-env/bin/pypy ]; then
    alias pypy=~/bin/local/pypy-env/bin/pypy
fi

Local applications

MBR (mbr) To create VirtualBox rawdisk
apt-rdepends (apt-rdepends)
GraphViz (graphviz) To plot package dependencies with apt-cache dotty and apt-rdepends -d
Banshee (banshee)
nautilus-play-banshee To play music directly from folders
Feh (feh) Fast and light image viewer (like qiv)
Bluetooth Manager (blueman) To fix re-connect issue with Microsft Sculpt Mouse (see [5], [6])
Mpg123 (mpg123) to play internet radio stream
Audacious (audacious) to play internet radio stream
Stream Tuner 2 & Ripper (streamtuner2 streamripper) get a list of internet radios
pdfpc (pdf-presenter-console) Note: this really installs David Vilar's fork (version 3.x) (pdfpc)

Uninstalled

Application (package) [YYYY-MM-DD] uninstalled (reason)

Simple Settings

  • SUDO - keep environment variables:
    • http_proxy, https_proxy (to keep proxy settings for apt-get etc)
    • GREP_OPTIONS (keep grep options)
    • DISPLAY, XAUTHORITY (avoid doing xhost local:root before launching X pgm)
    • HOME (e.g. to keep git aliases and settings when using etckeeper)
Defaults        env_reset
Defaults        env_keep += "http_proxy https_proxy GREP_OPTIONS DISPLAY XAUTHORITY HOME"
  • SUDO - Allow truecrypt and rfkill w/o password:
ALL     ALL=NOPASSWD: /usr/bin/truecrypt
ALL     ALL=NOPASSWD: /sbin/rfkill
  • CRON - Add cron script ~/etc/crontab-noekeon (backup of wikis on Noekeon.org)
  • PROXY - script for automatic setup of network environment (proxy, ssh...) (see config files).
  • Security — Disabled control-alt-del in console as recommended in Ubuntu Server Guide. Comment out the following line in the file /etc/init/control-alt-delete.conf:
#exec shutdown -r now "Control-Alt-Delete pressed"
  • Add user www for synchronization of /data/www folder (localhost page):
sudo useradd -g www-data -G users -u 999 -s /bin/bash -m www
sudo passwd www
su - www
ssh-keygen                                         # Or copy .ssh/ copy from other www users
scp .ssh/id_rsa.pub .ssh/authorized_keys
  • ~/bin — Convert scripts for new hostname nxl6717ux and NXL67170 (see ~/bin/restore_wiki.sh, ~/bin/generate_wiki_page.sh, ~/bin/set-network.sh, files in ~/.unison)
  • Force locale time to en_US.UTF-8. Add to ~/.profile:
export LC_TIME="en_US.UTF-8"


For Telematics build environment

  • CRON - Add cron script ~/work/NXP/ATOP/crontab-svn-fetch (fetch svn database automatically)
  • Printer — add Canon network printer (select IPP network printer via DNS-SD for protocol)

Detailed System Settings

1st install

  • 2nd install on [2013-02-20]
  • Distribution: Ubuntu 12.04 amd64
  • Installation method: Net boot install from Internet using GRUB
  • Language: English
  • Location: Europe, Belgium Time
  • Computer name: nxl67170ux
  • Keyboard layout: BE
  • Name: beq06659
  • Login name: beq06659
  • Update: No automatic update
  • Software to install: Ubuntu Desktop
  • Partition: see main page

Upgrade to Ubuntu 14.04 Trusty Tahr

  • Get list of packages not coming from repositories
apt-show-versions | grep -v uptodate
  • Add back some repositories
sudo add-apt-repository ppa:recoll-backports/recoll-1.15-on
sud apt-get update
sudo apt-get upgrade
  • Remove / reinstall obsolete packages
sudo apt-get purge app-install-data-medibuntu medibuntu-keyring psmouse-dkms adobeair
sudo apt-get install git-annex=5.20140412ubuntu1
  • Reinstall grub (to fix file not found error messages at boot [7])
sudo grub-install --directory=/usr/lib/grub/i386-pc --target=i386-pc --recheck /dev/sda
sudo grub-mkconfig -o /boot/grub/grub.cfg

Kernel

  • Initial kernel: Precise Pangolin 3.2.0-38-generic (see Ubuntu page).

File System

  • For details, see /etc/fstab.
    • NTFSC: → do not mount automatically. Risk of corruption if mounted while VirtualBox is running!
      Also NTFS partition must be mounted without umask=007,gid=46, or will get operation not permitted when modifying timestamps:
    • Reiserfs/ → enable acl
    • ext4/data → enable acl and data=writeback
/dev/sda2               /c          ntfs        ro,users,nls=utf8,exec                0       2
UUID=...                /           reiserfs    notail,noatime,acl                    0       1
UUID=...                /data       ext4        defaults,noatime,data=writeback,acl   0       2
  • File system structure:
/:                                        
  drwxr-xr-x  root      root      boot/       # /dev/sda3
  drwxr-xr-x  root      root      c/          # /dev/sda2
  lrwxrwxrwx  root      root      d -> /data/d/
  drwxr-xr-x  root      root      data/       # /dev/sda8
  drwxr-xr-x  root      root      net/
  lrwxrwxrwx  root      root      sage -> /data/sage-6.0/
  drwxr-xr-x  root      root      smb/
  drwxr-xr-x  root      root      win/
/data:
  drwxrwsr-x+ beq06659  vbox      d/
  drwxr-xr-x  root      root      home/
  drwxr-xr-x  beq06659  beq06659  sage-6.0/
  drwxr-sr-x+ root      www-data  www/
/home/beq06659:
  lrwxrwxrwx  beq06659  beq06659  Documents -> /d/documents/
/net:
  # NFS autofs
/smb:
  drwxr-xr-x  root      root      mnemosyne/   # SMB autofs
/var:
  lrwxrwxrwx  root      root      www -> /data/www/
  • Configure acl on /data/d:
# VirtualBox uses /data/d as Windows D: drive. Since VirtualBox runs as 'vbox', all files gets vbox/vbox ownership.
# beq06659 user is in group 'vbox' so he can access all files created by vbox.
# We use acl so that files gets group access vbox/rwx, so that vbox can also access any file created by other users.
# OLD CONFIG:
# # VirtualBox uses /data/d as Windows D: drive. Since VirtualBox runs as 'root', all files gets root/root ownership.
# # We use acl so that files gets group access beqO6659/rwx by default
cd /data
sudo chgrp -R vbox d
sudo chmod -R g+w d
find d -type d -print0|sudo xargs -0 chmod g+ws
find d -type d -print0|sudo xargs -0 setfacl -m d:group:vbox:rwx
  • Configure acl on /data/www:
# Set default access condition to rwxr-xr-x / www / www-data
cd /data
sudo chgrp -R www-data www
find www -type d -print0|sudo xargs -0 chmod g+s
find www -type d -print0|sudo xargs -0 setfacl -m d:group:www-data:r-x
find www -type d -print0|sudo xargs -0 setfacl -m d:user:www:r-x           # TODO: this one does not work with root...

Network

  • Edited /etc/hosts (added names for intranet)
  • Added to /etc/apt/apt.conf:
Acquire::http::proxy "http://localhost:8118/";
Acquire::ftp::proxy "ftp://localhost:8118/";
Acquire::https::proxy "https://localhost:8118/";
  • Added to /etc/environment:
http_proxy="http://localhost:8118/"
ftp_proxy="ftp://localhost:8118/"
https_proxy="https://localhost:8118/"
NXP network
sshproxy
  • Connect to NXP proxy with sshtunnel (with NTLM auth. if needed)
  • Forward IMAP/SMTP ports
  • Opens a SOCKS5 proxy
privoxy
  • Forward to ssh SOCKS5 proxy.
  • Provide http proxy server.
apt-get, wget, browsers
  • through privoxy (through environment variables or .pac file)
ftp
  • Direct connection (no solution...)
HOME network
sshproxy
  • Direct connection
  • Forward IMAP/SMTP ports
  • Opens a SOCKS5 proxy (not used)
privoxy
  • Direct connection
  • Provide http proxy server.
apt-get, wget, browsers
  • through privoxy (through environment variables or .pac file)
ftp
  • SAMBA/NFS CLIENT - Mount mnemosyne shares as NFS autofs (see [8]) and as SMB autofs
    • Enabled/created the following automounters in /etc/auto.master:
    • /net           /etc/auto.net
      /smb/mnemosyne /etc/auto.smb.mnemosyne
      
    • Created configuration file /etc/auto.smb.mnemosyne (mount options: noperm,iocharset=utf8,credentials=/etc/auto.smb.mnemosyne.*)
    • Created SMB credential files /etc/auto.smb.mnemosyne.* (see man mount.cifs)
    • Created path for mount points:
    • sudo mkdir /net
      sudo mkdir -p /smb/mnemosyne
      #ls /net/mnemosyne
      #sudo mkdir -p /mnt/mnemosyne
      #for i in /net/mnemosyne/volume1/*; do sudo ln -s $i /mnt/mnemosyne/$(basename $i); done
      
  • NXP Wired
  • NXP Wireless (see Linux Admin#Wireless Network)
    • Network name (SSID): WLAN-NXP
    • Wireless security: WPA & WPA2 Enterprise
    • Authentication: TLS
    • Identity: beq06659
    • User certificate / CA certificate / Private key: imported from Windows (EMEA-CA, exp. 2014-02-18, for Client Authentication, Secure Email)
  • Privoxy settings:
    • Added to /etc/privoxy/user.action:
    { -filter }
    tennislibre.com
    
    • Add filter settings for chromanova web-radio (config file):
    # 3 forward rules for chromanova radio
    forward             85.25.86.69         emea.nics.nxp.com:8080
    forward             91.143.81.239       emea.nics.nxp.com:8080
    forward             212.112.241.88      emea.nics.nxp.com:8080
    

Firewall

  • Moved user rules to /etc/ufw so that they can be tracked by etckeeper
  • cd /lib/ufw
    sudo mv user* /etc/ufw
    sudo ln -s /etc/ufw/user.rules
    sudo ln -s /etc/ufw/user6.rules
    
  • Enabled ufw
  • sudo ufw enable
    
  • Policy:
  • sudo ufw allow from 192.168.11.2                   # Enable full access from local virtualbox
    sudo ufw allow from 172.19.0.0/16 to any port 22   # Enable - from home local network - SSH
    

Preferences

  • Fonts (via ubuntu-tweak):
  • Category Font Size
    Default Font Ubuntu 9
    Desktop Font Sans 9
    Monospace font Lucida Console Semi-Condensed 10
    Document font Sans 10
    Window title bar font Ubuntu Bold 10
    • Hinting: Basic
    • Antialiasing: Subpixel antialising (LCD screens only)
  • Keyboard
  • Appearance
    • Launcher icon size: 32
  • Desktop icons (via ubuntu-tweak)
    • Show desktop icons: ON (switching off disable the wallpaper as well!)
  • File Manager (via ubuntu-tweak)
    • Use the location entry instead of the pathbar: ON
  • Displays
    • Sticky edges: OFF
    • Launcher placement: leftmost screen only (or we will have sticky edge on the middle edge)
  • Brightness and Lock
    • Turn off screen: after 5 minutes
    • Lock: Disabled
  • Theme
    • Macbuntu 14.04. See Ubuntu.
    • Compiz settings, see Ubuntu.
    • Wallpaper: Pirate Mac.jpg (previous was Isabelle Hires Noir&Blanc crop-despeckle 936x1200.png).

    Users

    sudo gpasswd -a $USER dialout    # for access to /dev/ttyUSB0
    sudo gpasswd -a $USER fuse       # to allow mounting FUSE fs (like curlftpfs)
    

    Detailed Application Settings

    Amarok

    Courier IMAP

    • Install (reference here):
      • Create directories for web-based administration
      • SSL Certificate: /etc/courier/pop3d.pem, /etc/courier/imapd.pem
      • Postfix configuration: local only
      • System mail name: nxl67002ux.wbi.nxp.com
      • Created /etc/courier/userdb, and kept entries for root, localuser and beq06659
      • Use password from /etc/courier/userdb (method authuserdb).
    • Recovered most files from nxl67002ux, but it failed at first because users where assigned different UID!!!
      Make sure users have identical UID, or courier will complain it has not the permission to access Maildir/p

    Crontab

    # Crontab
    #
    # Install this crontab with
    #
    #   sed -r '/^#/!s/\$USER/'$USER'/g' crontab-noekeon | crontab
    #
    #   !!! THIS WILL OVERWRITE ANY CURRENT CRONTAB !!!
    #
    # Or append only job to current crontab
    #
    #   ( crontab -l; sed -r '$!d;s/\$USER/'$USER'/g' crontab-noekeon ) | crontab
    #
    # Use /bin/bash to run commands, instead of the default /bin/sh
    SHELL=/bin/bash
    # Define variable USER because we need it in our job scripts
    USER=beq06659
    # Mail any output to '$USER', no matter whose crontab this is
    MAILTO=beq06659
    # Set PATH - by default it is set to /usr/bin:/bin
    PATH=/home/beq06659/bin:/usr/local/bin:/usr/bin:/bin
    #
    #
    # m h dom mon dow   command     (dow=0|7 is sunday)
    37 * * * *      chronic ~beq06659/bin/backup_main ~beq06659/etc/backup-noekeon
    33 * * * *      chronic ~beq06659/bin/fetch_all_svn.sh
    30 12  * * * RCLCRON_RCLINDEX= RECOLL_CONFDIR="/home/beq06659/.recoll/" recollindex
    42 * * * *      chronic ~beq06659/bin/local/fetch_all_git.sh
    37 * * * *      chronic ~beq06659/bin/backup_main ~beq06659/etc/backup-nxpwiki
    47 * * * *      chronic ~beq06659/bin/local/deduplocal.sh
    50 * * * *      chronic ~beq06659/bin/backup_main ~beq06659/etc/backup-evoswiki
    

    Firefox

    • Theme: macfox3 1.1.7
    • Extensions (some disabled because Firefox hangs on launch/exit):
      • AutoPager 0.7.0.0 — disabled
      • Belgium eID 1.0.11 — disabled
      • CHM Reader 0.2.3
      • Cycle Input Focus 1.0.0 — disabled
      • Delicious Bookmarks 2.3.1
      • Fast Dial 3.4
      • FireGestures 1.5.7 — disabled
      • FoxyProxy Standard 3.3
      • Live HTTP headers 0.17
      • Ubuntu Firefox Modifications 0.9rc2
      • User Agent Switcher 0.7.3 — disabled

    LAMP

    Install the servers:

    sudo apt-get install apache2 php5 mysql-server mysql-client php5-mysql
    # --> Defined password for MySQL root user
    sudo vi /etc/apache2/apache2.conf
    # --> Added lines at line 32:
    #     #MIP CUSTOM
    #     ServerName "nxl67002ux"
    # Restart apache server to activate php module...
    sudo /etc/init.d/apache restart
    
    # Move www root dir to /data disk
    sudo mv /var/www /data
    sudo ln -sf /data/www /var/www
    

    Apache:

    • configuration file is at /etc/apache2/apache2.conf
    • Apache root http directory is /var/www
    • Enable mod-rewrite module.
      In /etc/apache2/sites-available/default, change as: AllowOverride NoneFileInfo (twice).
    • Enable mathjax:
    First install it:
    sudo apt-get install libjs-mathjax
    
    Then edit /etc/apache2/sites-available/default-ssl.conf:
     DocumentRoot /var/www
    +Alias /mathjax /usr/share/javascript/mathjax
    

    Create databases that will store local copies of cryptokiwi and mikiwiki wiki, and of mikido:

    MYSQL_HISTFILE=/dev/null mysql --user=root -p mysql
    
    mysql> CREATE DATABASE cryptokiwi;
    mysql> GRANT ALL PRIVILEGES ON cryptokiwi.* TO kiwi@localhost IDENTIFIED BY '********';
    mysql> CREATE DATABASE mikiwiki;
    mysql> GRANT ALL PRIVILEGES ON mikiwiki.* TO miki@localhost IDENTIFIED BY '********';
    mysql> CREATE DATABASE mikido;
    mysql> GRANT ALL PRIVILEGES ON mikido.* TO miki@localhost IDENTIFIED BY '********';
    mysql> CREATE DATABASE nxpwiki;
    mysql> GRANT ALL PRIVILEGES ON nxpwiki.* TO nxp@localhost IDENTIFIED BY '********';
    mysql> quit
    
    • Enabled HTTPS (requires valid-user)
    • Firewall blocks port 80 but allow port 443 (so that localhost can connect w/o password but other guest needs password)

    Nautilus

    • Default view: List View
    • Display, date format: YYYY-MM-DD hh:mm:ss
    • List View: zoom 33%
    • Icon View, Compact View: zoorm 66%
    • Preview: all set to Never, and only for files smaller than 500kB (to prevent thumbnailing PDFs...)

    Opera

    • (nxp) Import collabnet client-side certificate (beq06659.pfx)
    • Change fonts (Preferenceswebpages — requires restart for changes to take effect!):
      • Normal font: DejaVu Sans, 16.
      • Monospace font: DejaVu Sans Mono, 16.

    Psi

    (recovered from previous settings on Gryphon at ~/.psi)

    • Gnome: Added Psi as startup program (Psi, /usr/bin/psi, Communicate over the jabber network).
    • OptionsEventsEnable popup notifications (all notifications)
    • Modify Account... → Changed resource to work-ux
    • Modify Account...Automatically reconnect if disconnected
    • Modify Account...Proxylocalhost:8118

    Samba

       security = user
       username map = /etc/samba/smbusers
    
    # [...]
    
    [homes]
       comment = Home Directories
       browseable = no
     
    # [...]
     
    [c]
       comment = Windows Drive C
       browseable = yes
       path = /win/c
       printable = no
       guest ok = no
       read only = yes
       create mask = 0700
    
    [d]
       comment = Windows Drive D
       browseable = yes
       path = /win/d
       printable = no
       guest ok = no
       read only = yes
       create mask = 0700
    

    SSH

    • Installed SSH-Tunnel
    • Files recovered from other installation (ssh-tunnel v2.26 + patch):
    /usr/local/bin
    -rwxr-xr-x 1 root root ssh-agent-refresh_andlinux.sh
    -rwxr-xr-x 1 root root ssh-agent-refresh.sh
    -rwxr-xr-x 1 root root ssh.pl
    -rwxr-xr-x 1 root root ssh-tunnel.pl
    
    • User beq06659 - configuration file in directory ~/.ssh:
      • id_rsa || id_rsa.pub || authorized_keys || config* || proxy.conf* || clbanner.txt
    • Disabled SSH Key Agent from Gnome Startup Applications
    • Added startup application:
      • Name: startup.sh
      • Command: /home/beq06659/bin/startup.sh
      • Comment: Custom startup script
    • Do not accept locale env var. LC_* from the client (see SSH#Missing Locale in Perl)

    Terminal

    Vim

    • Added ~/.bash_completion from [9] (modified to also take alias v=gvim)

    Wine

    See Configuration NXP Dell Latitude E5430 - Wine.

    Issues and To Do

    Issues

    See Common Issues

    To Do

    • To Do — Set up smtp server for localhost (to allow sending mail to remote server from local smtp)
    • To Do — See To Do / Issue list on Configuration NXP Dell Latitude E6500
    • To Dorecoll, install more filters: python:epub, python:midi, python:rarfile (see ~/.recoll/missing)
    • To Do — Install macbuntu or similar theme, if available
    • To Do — See Ubuntu 14.04 Trusty Tahr guides
    • To Do — Things to try, as demo'ed by Alicia Da Conceicao on her Surface Pro 2:
      • MS Office on Wine + Play on Linux
      • Connect to MS Exchange using Evolution
      • Connect to MS Lync using Online Buddy (Pidgin)

    Done

    • Done — Description