#### Table of Contents 1. [Post installation script for Debian Sid](#post_install_sid.sh) * [How-to](#how-to) * [Description](#description) * [Prerequisite](#prerequisite) * [Apt configuration](#apt-configuration) * [X11 Server](#x11-server) * [Graphic Environment](#graphic-environment) * [Gnome tools](#gnome-tools) * [Dev tools](#dev-tools) * [Admin tools for cli](#admin-tools-for-cli) * [UEFI tools](#uefi-tools) * [System tools for cli](#system-tools-for-cli) * [Internet tools for cli](#internet-tools-for-cli) * [Internet tools for X11](#internet-tools-for-x11) * [Office tools for cli](#office-tools-for-cli) * [Office tools for X11](#office-tools-for-x11) * [Multimedia tools for cli](#multimedia-tools-for-cli) * [Multimedia tools for X11](#multimedia-tools-for-x11) * [Games](#games) * [Network share](#network-share) * [Nvidia driver](#nvidia-driver) * [Wireless driver for BCM43](#wireless-driver-for-bcm43) * [Wireless tools for cli](#wireless-tools-for-cli) * [Wireless tools for X11](#wireless-tools-for-x11) * [Miscellaneous useless packages](#miscellaneous-useless-packages) * [Manpages - Documentation](#manpages-documentation) ## post_install_sid.sh Script to complete the installation of Debian Sid on my laptop. ### How-to * You just have to use the template file to specify your own informations: ```sh cp informations.template informations vi informations ``` * Then run the script: ```sh sudo post_install_sid.sh ``` ### Description #### Prerequisite ##### Add * debconf-utils: Contains some small utilities for debconf developers. * Load pre-seed files (debconf-set-selections) or see current debconf database (debconf-get-selections). * lsof: Utility to list open files. * Usefull to redirect the standard output. ##### Post-Configuration * Load locales and keyboard pre-seed files. #### Apt configuration ##### Pre-Configuration * Load pre-seed to automatically restart services after an upgrade * apt.conf.d: Use apt/apt.conf.d directory from git repository to provide additionnal configurations such as: * Update package lists every day. * Dowload upgradeable packages every day. * Automatically clean dowloaded packages every week * Set the default Debian version to Sid/Unstable. * … see apt/apt.conf.d/ files. * sources.list.d: Use apt/sources-list.d directory from git repository to provide the sources-list.d system directory. * Backup initials files if exists. * Add Wheezy/OldStable (official + backports), Jessie/Stable (official + backports), Stretch/Testing (official), Sid/Unstable (official + multimedia) and Experimental (official) repositories. * preferences.d directory: Use apt/preferences.d directory from git repository to provide the preferences.d system directory. * Backup initials files if exists. * Default preferences: Sid < Stretch < Stable < Old-stable < Experimental * Firefox/Icedove preferences: Experimental * Update Debian repositories. ##### Add * deb-multimedia-keyring: GnuPG archive key of the deb-multimedia repository. ##### Post-Configuration * Set a variable to ensure to keep old config files when upgrading a package. * Then force a full-upgrade of the system with the new repositories. #### X11 Server ##### Pre-Configuration * Load x11-common seed file that allows anybody to run the X server. ##### Add * mesa-utils: Provides several utilities built by Mesa (glxinfo, glxgears, …). * xorg: Provides the X librairies, an X server, … for a standalone workstation running the X Window System. #### Graphic Environment ##### Add * gtk2-engines-cleanice: Contains theme engine and 3 themes for GTK. * herbstluftwm: Manual tiling window manager for X11. * i3lock: Simple screen locker. * lxappearance: LXDE GTK+ theme switcher. * nitrogen: Wallpaper browser and changing utility. * Easy to manage multi-screen. * redshift: Adjusts the color temperature of your screen. * rofi: Can act as an application launcher, window switcher, ssh launcher and dmenu replacement. * roxterm: Multi-tabbed GTK+/VTE terminal emulator. * scrot: Command line SCReen shOT utility (screen capture). * suckless-tools: Simple commands for minimalistic window managers. * terminator: Multiple GNOME terminals in one window. * wmctrl: Command line tool to interact with an EWMH/NetWM compatible X Window Manager. * xautolock: Program launcher for idle X session. * xbacklight: Simple utility to set the backlight level. * xclip: Command line interface to X selections/clipboard. * Used with VIM to copy the vim-selection into X11 buffer. ##### Remove * Sometimes automatically installed with GUI packages: * geoclue-2.0 * modemmanager * xscreensaver * xscreensaver-data ##### Post-Configuration * Ensure to have an xautolock launch at boot time (in ~/.xinitrc). #### Gnome tools ##### Add * evince: Document (PostScript, PDF) viewer. * etherape: Graphical network monitor. * gedit: Official text editor of the GNOME desktop environment. * gnome-calculator: GNOME desktop calculator. * gparted: GNOME partition editor. * nemo: Official Cinnamon File Manager (Nautilus replacement). * nemo-fileroller: Nemo extension to manage (create, extract, …) archives. * planner: Project management application that supports Gantt. ##### Remove * eog: Eye of GNOME graphics viewer program. Use 'mirage' or 'gpicview' instead! #### Dev tools ##### Add * build-essential: Useful to build Debian packages. * binutils: GNU assembler, linker and binary utils. * cpp: GNU C preprocessor. * debconf-utils: Contains some small utilities for debconf developers. * Load pre-seed files (debconf-set-selections) or see current debconf database (debconf-get-selections). * gcc: GNU C compiler. * g++: GNU C++ compiler. * make: Utility for directing compilation. #### Admin tools for cli ##### Pre-Configuration * Load hddtemp pre-seed file. ##### Add * acpitool: Command line ACPI client for laptop users (apm replacement). * alien: Convert and install rpm and other packages. * apticron: Simple tool to mail about pending package updates. * apt-file: Search tool for files within Debian packages. * apt-listbugs: Tool which lists critical bugs before each APT installation. * List all pending bugs of a package: ```sh apt-listbugs -s all -S pending list PKG_NAME ``` * apt-rdepends: Recursively lists package dependencies. * List the dependencies of a package: ```sh apt-rdepends vim-tiny ``` * List packages that depend of a package: ```sh apt-rdepends -r vim-nox ``` * Get a graph of dependencies: ```sh apt-rdepends -d firefox|dot -Tsvg > firefoxdep.svg ``` * apt-show-source: Shouws source-package information. * apt-show-versions: Lists available package versions with version. * dctrl-tools: Tools to process Debian package information. * debian-goodies: Small toolbox-style utilities for Debian systems. * Show which installed packages occupy the most place: ```sh dpigs ``` * dnsutils: Clients provided with BIND. * dstat : Versatile resource statistics tool. * ethtool: Display or change Ethernet device settings. * git: Fast, scalable and distributed revision control system (cvs). * git-svn: Git extension for SVN interoperability. * gpm: General Purpose Mouse interface. * e.g: Allows mouse in tty. * hddtemp: Hard drive temperature monitoring utility. * htop: Interactive processes viewer. * ifscheme: Scheme control for network interfaces. * Useful to manage multiple WLAN networks. * iperf: Internet Protocol bandwidth measuring tool. * Measure performances between A and B: ```sh user@A % iperf -s user@B % iperf -c IP_COMPUTER_A ``` * mlocate: Quickly find files on the filesystem based on their name. * lsof: Utility to list open files. * mercurial: Easy-to-use, scalable distributed version control system (cvs). * module-assistant: Tool to make module package creation easier. * ncdu: Ncurses disk usage viewer. * netdiscover: Active/passive network address scanner using ARP requests. * netselect-apt: Speed tester for choosing a fast Debian mirror. * Please see http://httpredir.debian.org/ instead of netselect-apt. * ngrep : Grep for network traffic. * nmap: The Network Mapper. * ntp: Network Time Protocol daemon and utility programs. * parted: Disk partition manipulator. * pastebinit: Command-line pastebin client. * Send the command result to a pastebinit: ```sh ls -al /dev | pastebinit - pastebinit - < <(ls -al /dev) ``` * perf-tools-unstable : DTrace-like tools for Linux. * Provide opensnoop : ```sh sudo opensnoop -p $(pidof firefox) ``` * rsyslog: Reliable system and kernel logging daemon. * strace : System call tracer. * sudo: Provide limited super user privileges to specific users. * sysv-rc-conf: SysV init runlevel configuration tool for the terminal. * tcpdump: Command-line network traffic analyzer. * tree: Displays an indented directory tree,in color. * util-linux: Miscellaneous system utilities. * whois: Intelligent WHOIS client. ##### Post-Configuration * apt-file: Synchronize the package contents from their sources. * Grub: Add the possibility to set the GRUB_TIMEOUT * mlocate: Update the mlocate database. * Modprobe: * Disable the annoying console beeps * Ensure to disable dangerous modules such as firewire, thunderbolt, … * NTP: * Set a better NTP server (strate 1) for french computer. * Restart the NTP service. * Rsyslog: Display rsyslog in tty9. * Sudo: Add default user to the sudo group * Fstrim: Ensure to enable TRIM in '/etc/rc.local' if a SSD is available. * See http://links.gardouille.fr/?ozlKFg for more informations. #### UEFI tools Add some UEFI tools if grub-efi is installed on the system. ##### Add * efibootmgr: Interact with the EFI Boot Manager. * efivar: Tools to manage UEFI variables. #### System tools for cli ##### Add * bdsmainutils: Collection of more utilities from FreeBSD. * colordiff: Tool to colorize 'diff' output. * cpio: GNU cpio; a program to manage archives of files. * exuberant-ctags: Build tag file indexes of source code definitions. * genisoimage: Creates ISO filesystem images. * keychain: Key manager for OpenSSH. * knockd: Small port-knock daemon. * lzip: Lossless data compressor based on the LZMA algorithm. * moreutils: Additionnal Unix utilities. * Edit directory content as a file with vim: ```sh vidir ``` * multitail: View multiple logfiles windowed on console. * myrepos: Tool to manage all your version control repos. * ntfs-3g: Read/write NTFS driver for FUSE. * openssh-client: Secure shell (SSH) client, for secure access from remote machines. * openvpn: Virtual private network daemon. * physlock: Lightweight Linux console locking tool. * Physlock need to be run as root, so it's possible to set NOPASSWD for sudoers: ```sh sudo visudo %sudo ALL=(ALL) NOPASSWD:/usr/bin/physlock ``` * screen: Terminal multiplexer with VT100/ANSI terminal emulation. * tmux: Terminal multiplexer. * udisks2: D-Bus service to access and manipulate storage devices. * A simple user can mount removable devices: ```sh udisksctl mount --block-device /dev/sdb2 ``` * And **unmount** (take, 'u**n**mount' and not 'umount') it's own devices: ```sh udisksctl unmount --block-device /dev/sdb2 ``` * unrar: Unarchiver for .rar files (non-free version). * unzip: De-archiver for .zip files. * urlview: Extracts URLs from text. * vim-nox: Vi IMproved - enhanced vi editor - with scripting languages support. * vim-doc: Vi IMproved - HTML documentation. * vim-scripts: Plugins for vim, adding bells and whistles. * vlock: Virtual Console locking program. * wakeonlan: Sends 'magic packets' to wake-on-LAN enabled ethernet adapters. * zsh: Shell with lots of features. * zip: Archiver for .zip files. ##### Remove * bluetooth packages (bluetooth, bluez) * network-manager : Can come with tlp dependencies. * vim-tiny: Useless default vi version ! ##### Post-Configuration * Vim: set vim-nox as default editor. * Openvpn: Disable to automatically start * Useful in case of many configuration files. A default vpn is launch by "post-up" instruction in '/etc/network/interfaces' file: ```sh allow-hotplug enp0s25 iface enp0s25 inet dhcp post-up openvpn /etc/openvpn/XYZ_tunnel.conf ``` * ZSH: set as default user for root; "${new_username}"; new users with adduser. #### Internet tools for cli ##### Add * axel: Light command line download accelerator. * finch: Instant messaging client in ncurses. * lynx-cur: Classic non-graphical (text-mode) web browser. * mat: Metadata anonymisation toolkit. * Also provide a GUI: 'mat-gui'. * postfix: High-performance mail transport agent. * weechat-curses: Fast, light and extensible chat client. ##### Configuration * Ensure to forward root's mail to new user email address. * Ensure Postfix only listen on localhost. #### Internet tools for X11 ##### Add * browser-plugin-freshplayer-pepperflash: PPAPI-host NPAPI-plugin adapter for pepperflash to get the latest Flash Plugin into Firefox/Firefox. * dwb: Lightweight WebKit browser. * filezilla: Full-featured FTP client with an easy-to-use GUI. * icedove: Mail/news client with RSS and integrated spam filter support. * icedove-l10n-fr: French language package for Icedove. * iceowl-extension: Calendar Extension for Thunderbird/Icedove (Lightning addon replacement). * firefox: Web browser based on Firefox. * firefox-l10n-fr: French language package for Firefox. * libjs-pdf : PDF.js viewer built with HTML5 by Mozilla. * luakit: Fast and small web browser extensible by Lua. * midori: Fast, lightweight graphical web browser based on WebKit. * mumble: Low latency encrypted VoIP client. * pepperflashplugin-nonfree: Pepper Flash Player - browser plugin (based on Flash Player from Goggle/Chrome). * pidgin: Graphical multi-protocol instant messaging client for X. * pidgin-otr: Off-the-Record Messaging plugin for Pidgin. * rdesktop: RDP client for Windows NT/2000 Terminal Server and Windows Servers. * transmission: Lightweight BitTorrent client. * transmission-remote-gtk: GTK+ interface for the Transmission BitTorrent daemon. * xvnc4viewer: Virtual network computing client software for X. ##### Remove: * Old and unsecure Flash Plugin: flashplugin-nonfree flashplugin-nonfree-extrasound ##### Post-Configuration * pepperflashplugin-nonfree: Ensure to install the lastest version. #### Office tools for cli ##### Add * cups: Common UNIX Printing System(tm) - PPD/driver support, web interface. * devtodo: Manipulate and display a hierarchical and prioritised list of tasks. * ghostscript: Interpreter for the PostScript language and for PDF. * gocr: Multi-platorm OCR (Optical Character Recognition) program. * Extract text from pbm image files: ```sh for i in *pbm; do gocr $i > $i.txt; done ``` * graphviz: Rich set of graph drawing tools. * imagemagick: ImageMagick is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats. * imagemagick-doc: Document files of ImageMagick. * odt2txt: Simple converter from OpenDocument Text to plain text. * Used with lesspipe for example. * pdftk: PDFtk is a simple tool for doing everyday things with PDF documents. * poppler-utils: PDF utilities for convert, manipulate or get informations of PDF documents. * Extract all images from a PDF file: ```sh pdfimages file01.pdf img_name ``` * taskwarrior : Feature-rich console based todo list manager. * texinfo: Documentation system for on-line information and printed output. * texlive: A decent selection of the TeX Live packages * texlive-latex-extra: A very large collection of add-on packages for LaTeX. * units : Converts between different systems of units. * vim-latexsuite: View, edit and compile LaTeX documents from within Vim. * Activation in vim: ```vim vim-addons install latex-suite ``` * xpdf: Light-weight PDF reader. ##### Remove * avahi-autopid: Avahi IPv4LL network address configuration daemon. * avahi-daemon: Avahi allows programs to publish and discover services and hosts running on a local network with no specific configuration. * cups-browsed: Browses the Bonjour broadcasts of shared remote CUPS printers and makes the printers available locally. * libdaemon0: Need to remove it to be able to also remove avahi-autopid. * libnss-mdns: NSS module for Multicast DNS name resolution. ##### Configuration * Add the standard user to lpadmin group to be able to manage Cups administration via webgui. #### Office tools for X11 #### Add * freeplane: Java program for working with Mind Maps. * gprename: Complete batch renamer for Linux. * key-mon: Utility to show live keyboard and mouse status. * libreoffice: Office productivity suite (metapackage). * libreoffice-l10n-fr: Office productivity suite -- French language package. * libreoffice-help-fr: Office productivity suite -- French help. * libreoffice-pdfimport: PDF Import component for LibreOffice. * fonts-linuxlibertine: Linux Libertine family of fonts. * ttf-ancient-fonts : Unicode font for many symbols. See https://en.wikipedia.org/wiki/Emoji#Blocks * verbiste: French and Italian conjugator. * verbiste-gnome: French and Italian conjugator - GNOME interface. * xournal: Application for note taking, can also add note to PDF/PS files. #### Multimedia tools for cli ##### Add * avinfo: Audio/Video information automatic extractor/file list generator. * eyed3: Display and manipulate id3-tags on the command-line. * ffmpeg: Audio/video encoder, streaming server & audio/video file converter. * mediainfo : Command-line utility for reading information from audio/video files. * mkvtoolnix: Set of command-line tools to work with Matroska files. * moc: Ncurses based console audio player. #### Multimedia tools for X11 ##### Add * audacity: Fast, cross-platform audio editor. * easytag: Viewing, editing and writing ID3 tags. * gimp: The GNU Image Manipulating Program. * gpicview: Lightweight image viewer. * inkscape: Vector-based drawing program. * mirage: Fast and simple GTK+ image viewer. * mkvtoolnix-gui: Set of tools to work with Matroska files - GUI frontend. * smplayer: Complete front-end for MPlayer and MPlayer2. * rhythmbox: Music player and organizer for GNOME. * vlc: Multimedia player and streamer. #### Games ##### Add * teeworlds: Online multi-player platform 2D shooter. * teeworlds-server: Server for Teeworlds. #### Network share ##### Add * nfs-common : NFS client. Useful network protocol for sharing between linux OS. ##### Remove * nfs-kernel-server : NFS server. Useful network protocol for sharing between linux OS. * samba : SMB/CIFS file, print and login server for Unix. One of the only Windows compatible protocole. ##### Configuration * Disable nfs-kernel-server service if still available. * Disable all samba service if still availables. #### Nvidia driver ##### Add * linux-header-amd64: Header files for Linux amd64 configuration (meta-package). * nvidia-kernel-dkms: NVIDIA binary kernel module DKMS source. * nvidia-xconfig: X configuration tool for non-free NVIDIA drivers. ##### Post-Configuration * Backup previous xorg.conf file if exists. * Run the NVIDIA configuration tool. #### Wireless driver for BCM43 ##### Add * broadcom-sta-dkms: DKMS source for the Broadcom STA Wireless driver. * linux-header-amd64: Header files for Linux amd64 configuration (meta-package). ##### Post-Configuration * Unload useless wireless modules and only load the 'wl' module. * Verify if wireless is working with: ```sh iwconfig ``` * For more informations, please see: https://wiki.debian.org/wl #### Wireless tools for cli ##### Add * ifscheme: Scheme control for network interfaces. * wireless-tools: Tools for manipulating Linux Wireless Extensions * wpasupplicant: Client support for WPA and WPA2. #### Wireless tools for X11 ##### Add * wpagui: Graphical user interface for wpa_supplicant. #### Miscellaneous useless packages ##### Add * asr-manpages: alt.sysadmin.recovery manual pages. * List the availables manpages: ```sh dpkg -L asr-manpages ``` * cmatrix: Simulates the display from "The Matrix". * cmatrix-xfont: X11 font for cmatrix. * Used with vlock in tmux to lock and display the matrix: https://git.101010.fr/dotfiles-gardouille/tmux/commit/eae896300eadb3da3fd27fac6b8c37beeac04679 * cowsay: Configurable talking cow. * cowsay-off: Configurable talking cow (offensive cows). * fortunes: Data files containing fortune cookies. * fortunes-bofh-excuses: Bastard Operator From Hell excuses for fortune. * fortunes-debian-hints: Debian Hints for fortune. * fortunes-fr: French fortunes cookies. * fortunes-off: Data files containing offensive fortune cookies. * funny-manpages: More funny manpages. * List the availables manpages: ```sh dpkg -L funny-manpages ``` * linuxlogo: Color ANSI System Logo. ```sh linux_logo -f -d ``` * sl: Correct you if you type 'sl' by mistake. #### Manpages - Documentation ##### Add * aptitude-doc-fr: French manual for aptitude, a terminal-based package manager. * info: Standalone GNU Info documentation browser. * manpages-fr: French version of the manual pages about using GNU/Linux. * manpages-fr-dev: French version of the development manual pages. * manpages-fr-extra: French version of the manual pages.