Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
My perfect desktop - Debian 9 (Streach)
My perfect desktop - Debian 9 (Streach)
Installation image:
Download non-free version of debian ISO file from below link. Don't download version 9.0.0 as it contain bug which won't allow you to install on a disk. I choose to download LXDE desktop as it consumens less memory, responsive and perfectly OK for me.
Enable sudo and root user account and password:
If root user account is choosen during install then debian will not include user in to sudoer file. To enable this you need root password. This is again disabled in debian. One possible way is to select advanced option in GRUB boot screen and choose root in the ncurse screen. However, it did not work for me. The workaroung I did was to edit GRUB boot parameter and add 'init=/bin/bash'. This would put the system in root shell. Then type the following:-
# passwd root
(type new password for root and retype again)
# adduser username sudo
(change username with your own username)
Add useful repositories:
Add repositories for obtaining various useful software collections. Yo an either edit '/etc/apt/sources.list' to add repo url or you can add new files under '/etc/apt/sources.list.d/' directory. We will do both.
1. deb-multimedia repo
Append and add 'deb stretch main non-free' in '/etc/apt/sources.list' file.
# apt-get update
# apt-get install deb-multimedia-keyring
if above command fail to solve kerying issue then follow the below procedures
wget && sudo dpkg -i deb-multimedia-keyring_2016.8.1_all.deb
sudo apt-key adv --keyserver --recv-keys 1397BC53640DB551
2. Chrome repo and signing
Append and add 'deb stable main' in '/etc/apt/sources.list' file.
wget -q -O - | sudo apt-key add -
3. Virtualbox repo for latest releases
Append and add 'deb stretch contrib' in '/etc/apt/sources.list' file.
wget -q -O- | sudo apt-key add -
sudo apt-get update
sudo apt-get install virtualbox-5.1
sudo apt-get install dkms
4. GGIS repo as my work involve dealing with weather and gis
Append and add 'deb stretch main' in '/etc/apt/sources.list' file.
wget -O - | gpg --import
gpg --fingerprint 073D307A618E5811
gpg --export --armor 073D307A618E5811 | sudo apt-key add -
sudo apt-get install qgis
(there may be an apt warning which ca be simply ignored)
5. (contain lot of upto date scientific packages). I require only pycharm community edition IDE
# apt install dirmngr # this package is required otherwise will result in error during signing
wget -O- | sudo tee /etc/apt/sources.list.d/neurodebian.sources.list
sudo apt-key adv --recv-keys --keyserver hkp:// 0xA5D32F012649A5A9
sudo apt-get update
sudo apt-get install pycharm-community-sloppy
Auto mount internal drive partitions during boot:-
Debian by default does not allow user to mount drives without providing password. This iritates as user need to enter password every first time accessing disk partitions. Follwoing procedures should mount partitions during boot:-
1. Create directories under /media/username/mount-name for each partitions
2. Use 'sudo blkid' for obtaining UUID informations of all partitions
3. Edit '/etc/fstab' and add UUID and other options. Here is my '/etc/fstab' file content wich contain various filesystem examples (ext4, fat32 and NTFS):-
user@localhost:~$ cat /etc/fstab
# /etc/fstab: static file system information.
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda2 during installation
UUID=d539b457-cd66-454c-9e0c-114a1c0982cd / ext4 errors=remount-ro 0 1
/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0
UUID=93BD-8E52 /media/user/Data vfat defaults,user,exec,uid=1000,gid=100,umask=000 0 0
UUID=F884A22F84A1F074 /media/user/Fun ntfs nls-utf8,umask-0222,uid-1000,gid-1000,rw 0 0
UUID=7C4A4B2A4A4AE08E /media/user/Windows ntfs nls-utf8,umask-0222,uid-1000,gid-1000,rw 0 0
UUID=84288179-1266-4acf-9383-11675a0030df /media/user/Manjaro ext4 defaults 0 2
UUID=e92ef7ab-9be1-4884-834d-ebc4fc0ded56 /media/user/Linux ext4 defaults 0 2
Install compiz for eyecandy and ease of use:
Add repo and install required packages
wget -q -O- | sudo apt-key add - && sudo echo "deb $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/compiz-debian.list && sudo apt-get update
sudo apt-get install compiz-reloaded
sudo apt-get install emerald emerald-themes fusion-icon simple-ccsm-reloaded compiz-reloaded-plugins-extra
after install eveything, start compiz from Accessories --> Compis Fusion Icon (so that you can manage may things)
Use simple compisconfig setting manager for adding animations (recommended for not breaking your system)
window decorater may look wiered and wont match with rest of the themes. The quick workaround is to use Emerald as window decorater and use emerald theme (from emerald theme manager) close to gtk theme.
I use numix gtk and emerald theme
Install themes and icons:
I will leave itto users as it is a personal preference. Use google to find many themes. I use numix
sudo apt-get install git
cd Downloads/
git clone
sudo mv Numix-Circle /usr/share/icons
sudo mv Numix-Circle-Light /usr/share/icons
sudo apt-get install numix-* # for repo package
Beautify desktiop with conky:-
Conky is a lighweight desktiop theme and widget manager. It uses less mamory and make your desktop loo great.
Many themes are available on the net. I prefere and use 'conky-grapes' from Installation
instruction are available on the github page but you may encounter few issues and can be solved using editing rc file.
1. conky widget flotting in a seperate window instead of sticking to desktop.
change followng
own_window_type = 'desktop'
own_window_type = 'override',
2. rings are not displayed in the widget
find the line lua_draw_hook_pre = 'conky_main',
and following line in the next line
lua_draw_hook_pre = 'conky_ring_stats'
3. Autostart the above conky widget during boot
touch .config/autostart/
add following in the above file
sleep 3
conky -q -d -c ~/conky/conky-grapes/conky_gen.conkyrc
Make it as executable
chmod +x .config/autostart/
Edit the file '~/.config/lxsession/LXDE/autostart' and ad following at the end:-
@sh ~/.config/autostart/
Install python2 scientific packages:-
sudo apt-get install python-netcdf4 python-grib python-numpy python-scipy python-matplotlib python-mpltoolkits.basemap zygrib
Enable and install sublimetext package using official repo:
sudo apt-get install apt-transport-https
wget -qO - | sudo apt-key add -
echo "deb apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
sudo apt-get update
sudo apt-get install sublime-text
after installing sublimetext, install anaconda package to make it as efficient python ide -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment