Debian

From YobiWiki
Jump to navigation Jump to search

Intro

Notes while replacing my LMDE with Debian Sid + Cinnamon.
This included recovery of some settings so those are not notes for an install from scratch.

Installation

First installing from Debian testing ISO (Jessie) then dist-upgrading to Sid

Sid multiarch

/etc/apt/sources.list:

# Add contrib & non-free to Jessie source lines

/etc/apt/sources.list.d/sid.list:

deb http://ftp.be.debian.org/debian/ sid main contrib non-free
deb-src http://ftp.be.debian.org/debian/ sid main contrib non-free
dpkg --add-architecture i386
apt-get update
apt-get upgrade
apt-get dist-upgrade

Add Kali repositories

See Kali

Install software

Essentials

apt-get install sudo
adduser phil sudo

To allow sudo on some specific programs without password, create /etc/sudoers.d/phil

phil     ALL = NOPASSWD: /usr/bin/killall, /sbin/iptables, /etc/init.d/openvpn, /etc/init.d/logkeys, /bin/mount, /bin/umount
apt-get install mc
apt-get install etckeeper git
cd /etc
etckeeper init
apt-get install intel-microcode firmware-iwlwifi
dpkg-reconfigure console-setup
# -> utf-8 / latin1+latin5 / Terminus / 10x20

Cinnamon

apt-get install cinnamon

Once Cinnamon is installed, some tuning:

  • pin progs to panel: drag & drop from menu
  • change user picture: Settings / Account details
  • Hide Icons on the Desktop: Settings / Desktop
  • Add a Program Shortcut to the Mint Menu: Right-click the Mint Menu, select "Configure" then "Open the menu editor", Click a software category / "New Item".

applet Multicode System Monitor: see http://cinnamon-spices.linuxmint.com/applets/view/79

apt-get install gir1.2-gtop-2.0

Settings / Applets / Get more / search network -> NMulticode System Monitor
Right click on bar / add applets

Gnome

apt-get install gnome-terminal gnome-backgrounds grilo-plugins-0.2 gnome-screenshot gedit

Strangely, to modify background I had to use Gnome settings instead of Cinnamon settings:

gnome-control-center # -> background

debian

apt-listchanges                - package change history notification tool
apt-rdepends                   - Recursively lists package dependencies
dlocate                        - fast alternative to dpkg -L and dpkg -S
equivs                         - Circumvent Debian package dependencies
apt-file
debootstrap
reportbug-ng
$ apt-file update

system tools

bridge-utils                   - Utilities for configuring the Linux Ethernet bridge
encfs
openssh-server                 - secure shell (SSH) server, for secure access from remote machines
pcscd                          - Middleware to access a smart card using PC/SC (daemon side)
pcsc-tools                     - Some tools to use with smart cards and PC/SC
samba-common-bin
smartmontools                  - control and monitor storage systems using S.M.A.R.T.
usbview                        - USB device viewer
uuid                           - the Universally Unique Identifier Command-Line Tool
wfrench                        - French dictionary words for /usr/share/dict
wine                           - Windows API implementation - standard suite

utils

an                             - very fast anagram generator
baobab                         - GNOME disk usage analyzer
bleachbit                      - delete unnecessary files from the system
calibre                        - e-book converter and library management
comix                          - GTK Comic Book Viewer
gnumeric                       - spreadsheet application for GNOME - main program
gt5                            - shell program to display visual disk usage with navigation
htop                           - interactive processes viewer
impressive                     - PDF presentation tool with eye candies
iotop                          - simple top-like I/O monitor
link-grammar                   - Carnegie Mellon University's link grammar parser
mc                             - Midnight Commander - a powerful file manager
polygen                        - generator of random sentences from grammar definitions
powertop                       - diagnose issues with power consumption and management
psutils                        - PostScript document handling utilities
pv                             - Shell pipeline element to meter data passing through
pyp                            - sed/awk-like tool with Python language
screen                         - terminal multiplexer with VT100/ANSI terminal emulation
signing-party                  - Various OpenPGP related tools
synergy                        - Share mouse, keyboard and clipboard over the network
tmux
transgui                       - Front-end to remotely control Transmission
unetbootin                     - installer of Linux/BSD distributions to a partition or USB drive
unison                         - file-synchronization tool for Unix and Windows
wodim                          - command line CD/DVD writing tool

latex

latex2rtf
texlive
texlive-latex-extra
latexmk
texlive-xetex
texlive-publishers
texlive-science
texlive-luatex
texlive-generic-recommended

devel

astyle
cmake
ddd                            - The Data Display Debugger, a graphical debugger frontend
dissy                          - graphical frontend for objdump
git-annex                      - manage files with git, without checking their contents into git
gitk                           - fast, scalable, distributed revision control system (revision tree visualizer)
git-svn                        - fast, scalable, distributed revision control system (svn interoperability)
gperf                          - Perfect hash function generator
hexedit                        - view and edit files in hexadecimal or in ASCII
ht                             - Viewer/editor/analyser (mostly) for executables
indent                         - C language source code formatting program
lua5.1                         - Simple, extensible, embeddable programming language
meld                           - graphical tool to diff and merge files
nasm                           - General-purpose x86 assembler
qt4-qmake
subversion
uncrustify                     - C, C++, C#, D, Java and Pawn source code beautifier
valgrind
wdiff                          - Compares two files word by word
ipython                        - enhanced interactive Python shell
python-tk                      - Tkinter - Writing Tk applications with Python
python-setuptools              - Python Distutils Enhancements (setuptools compatibility)
libpython2.7-dev               - Header files and a static library for Python (v2.7)
python-pip
python-pygments
pypy
python-dev
python-bzutils
python-ptrace
python-pydot
python-virtualenv
python-autopep8
autoconf                       - automatic configure script builder
automake                       - Tool for generating GNU Standards-compliant Makefiles
colormake                      - simple wrapper around make to colorize output
libpcsclite-dev                - Middleware to access a smart card using PC/SC (development files)
libssl-dev                     - Secure Sockets Layer toolkit - development files
libtool                        - Generic library support script
libusb-1.0-0-dev               - userspace USB programming library development files
libusb-dev                     - userspace USB programming library development files
libbz2-dev
libmuparser-dev
libsparsehash-dev
liblzma-dev
libsnappy-dev
libqt4-dev

elec/embedded

android-tools-adb              - Android Debug Bridge CLI tool
android-tools-fastboot         - Android Fastboot protocol CLI tool
arduino                        - AVR development board IDE and built-in libraries
gerbv                          - Gerber file viewer for PCB design
opensc                         - Smart card utilities with support for PKCS#15 compatible cards

data

antiword                       - Converts MS Word files to text, PS and PDF
cabextract                     - Microsoft Cabinet file unpacker
catdoc                         - MS-Word to TeX or plain text converter
dos2unix                       - convert text file line endings between CRLF and LF
furiusisomount                 - ISO, IMG, BIN, MDF and NRG image management utility
gpsprune                       - visualize, edit, convert and prune GPS data
lsdvd                          - read the content info of a DVD
mtd-utils                      - Memory Technology Device Utilities
mtp-tools                      - Media Transfer Protocol (MTP) library tools
page-crunch                    - PDF and PS manipulation for printing needs
pdfchain                       - graphical user interface for the PDF Tool Kit
pdftk                          - tool for manipulating PDF documents
pgpdump                        - PGP packet visualizer
pst-utils                      - tools for reading Microsoft Outlook PST files
qprint                         - encoder and decoder for quoted-printable encoding
recode                         - Character set conversion utility

audio

id3v2                          - A command line id3v2 tag editor
mp3blaster                     - Full-screen console mp3 and Ogg Vorbis player
musescore                      - Full featured WYSIWYG score editor
sox                            - Swiss army knife of sound processing

picture

darktable                      - virtual lighttable and darkroom for photographers
exif                           - command-line utility to show EXIF information in JPEG files
gifsicle                       - Tool for manipulating GIF images
gimp
gimp-data-extras               - An extra set of brushes, palettes, and gradients for The GIMP
gimp-lensfun                   - Gimp plugin to correct lens distortion using the lensfun library
gimp-plugin-registry
gimp-texturize                 - generates large textures from a small sample
gnuplot                        - Command-line driven interactive plotting program
gphoto2
graphviz                       - rich set of graph drawing tools
gthumb
inkscape                       - vector-based drawing program
jhead                          - manipulate the non-image part of Exif compliant JPEG files
jpeginfo                       - Prints information and tests integrity of JPEG/JFIF files
jpegpixi                       - Remove hot spots from JPEG images with minimal quality loss
netpbm                         - Graphics conversion tools between image formats
plotutils                      - GNU plotutils command line tools based on libplot
pngtools                       - series of tools for PNG (Portable Network Graphics) images
rawtherapee                    - raw image converter and digital photo processor
hugin                          - panorama photo stitcher - GUI tools
#autopano-sift-c                - Automatically create control points for panorama image

video

audacity
cheese                         - tool to take pictures and videos from your webcam
gaupol                         - subtitle editor for text-based subtitle files
gnome-video-effects-frei0r
mencoder                       - MPlayer's Movie Encoder
metacam                        - extract EXIF information from digital camera files
mkvtoolnix                     - Set of command-line tools to work with Matroska files
mkvtoolnix-gui                 - Set of tools to work with Matroska files - GUI frontend
mpegdemux                      - MPEG1/2 system stream demultiplexer
mplayer2                       - next generation movie player for Unix-like systems
cclive                         - lightweight command line video extraction tool
mimms                          - mms (e.g. mms://) stream downloader
quvi                           - command line program to extract video download links
youtube-dl                     - downloader of videos from YouTube and other sites

net

esniper                        - simple, lightweight tool for sniping ebay auctions
iftop                          - displays bandwidth usage information on an network interface
ipcalc                         - parameter calculator for IPv4 addresses
ipmitool                       - utility for IPMI control with kernel driver or LAN interface
iptraf                         - Interactive Colorful IP LAN Monitor
ipv6calc                       - small utility for manipulating IPv6 addresses
mosh                           - Mobile shell that supports roaming and intelligent local echo
#mozplugger                     - Plugin allowing external viewers to be launched inside Mozilla
subnetcalc                     - IPv4/IPv6 Subnet Calculator
upnp-inspector                 - Python UPnP framework analyser
upnp-router-control            - UPnP compliant router manager
tcpdump
knot-dnsutils
bind9utils
autossh
fping
minicom
icedove                        - mail/news client with RSS and integrated spam filter support
enigmail                       - GPG support for Thunderbird and Debian Icedove

Specific installation instructions

chromium

apt-get install chromium pepperflashplugin-nonfree

If the Flash plugin crashes, you can try this:

  • Check exact chromium version you have
dpkg -l|grep chromium
ii  chromium                                                    39.0.2171.71-2                         amd64        web browser
wget http://mirror.pcbeta.com/google/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_39.0.2171.71-1_amd64.deb
  • Extract plugin and copy it over pepperflash version:
dpkg -x google-chrome-stable_39.0.2171.71-1_amd64.deb temp/
sudo cp temp/opt/google/chrome/PepperFlash/* /usr/lib/pepperflashplugin-nonfree/

openvpn

apt-get install openvpn resolvconf
  • restore /etc/openvpn
  • /etc/default/openvpn: AUTOSTART="none"

Syntax with systemd is different:

  • service openvpn@to_yobi start
  • service openvpn@to_yobi stop

Synergy

Getting latest version from their website:

virtualbox

wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -
echo "deb http://download.virtualbox.org/virtualbox/debian wheezy contrib" > /etc/apt/sources.list.d/virtualbox.list
apt-get update
apt-get install virtualbox-4.3
/etc/init.d/vboxdrv setup

And extension pack at https://www.virtualbox.org/wiki/Downloads

google-musicmanager

https://dl.google.com/linux/direct/google-musicmanager-beta_current_amd64.deb

dropbox

TODO

To avoid autostart:

  • Settings / Startup Apps Prefs / disable Dropbox

Skype

Take Debian 7 multiarch version: http://www.skype.com/en/download-skype/skype-for-linux/downloading/?type=debian32

dpkg -i skype-debian_4.2.0.13-1_i386.deb
apt-get -f install
dpkg -i skype-debian_4.2.0.13-1_i386.deb

Problem of sound? see http://forums.linuxmint.com/viewtopic.php?f=48&t=143634
Edit /etc/pulse/default.pa:

-load-module module-udev-detect
+load-module module-udev-detect tsched=0

Googleearth

apt-get install googleearth-package
make-googleearth-package
dpkg -i googleearth_6.0.3.2197+1.1.0-1_amd64.deb
apt-get -f install
dpkg -i googleearth_6.0.3.2197+1.1.0-1_amd64.deb

Psi-plus

psi-plus                       - Qt-based XMPP/Jabber client (basic version)
psi-plus-plugins               - plugins for Psi+
libqca2-plugin-ossl            - SSL/TLS support for the Qt Cryptographic Architecture

Recover backuped config:

~/.cache/psi+
~/.config/psi+
~/.local/share/psi+

Gogoc

gogoc                          - Client to connect to IPv6 tunnel brokers

Recover backuped config:

/etc/gogoc/

Avoid it to start automatically:

update-rc.d gogoc disable

Run once "gogoc -n" as root to accept key, then ctrl-c
To use:

service gogoc start
service gogoc stop

Exim4

Check /etc/mailname for your machine FQDN

Add to /etc/email-addresses:

<myuser>: <myemail>

Add to /etc/exim4/passwd.client:

<mysmtpserver>:<myuser>:<mypwd>

dpkg-reconfigure exim4-config

  • mail sent by smarthost; no local mail
  • system mail name: yobi.be
  • incoming SMTP connections: 127.0.0.1 ; ::1
  • outgoing smarthost: smtp.....::port

Install Security software

See Security packages.

Install SDR software

See RTL-SDR.

Maintenance

Resizing

Default install reserved 10G for /root, which became quickly too short.

First, learn vg name:

vgscan

=> vg is something like yourhostname-vg

umount /home

In this example, root fs was 9.3Gb and home fs about 217Gb
We reduce inner filesystem too much to avoid any problem when resizing the logical volume.

resize2fs  /dev/mapper/yourhostname--vg-home  190G
lvreduce -L 197G yourhostname-vg/home

Then we readjust the inner fs:

resize2fs  /dev/mapper/yourhostname--vg-home

Now we can grow root logical volume

lvextend -L 30G yourhostname-vg/root
resize2fs  /dev/mapper/yourhostname--vg-root

Using ZRam

See https://wiki.debian.org/ZRam
Requires linux kernel >= 3.14