Skip to content

Commit

Permalink
Merge pull request #1 from sidliu2000/initial
Browse files Browse the repository at this point in the history
Initial
  • Loading branch information
sidliu2000 authored Nov 12, 2020
2 parents d8cbb9d + e0cd419 commit efe3d4b
Show file tree
Hide file tree
Showing 6 changed files with 350 additions and 1 deletion.
4 changes: 4 additions & 0 deletions 99_norecommends
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
APT::Install-Recommends "false";
APT::AutoRemove::RecommendsImportant "false";
APT::AutoRemove::SuggestsImportant "false";

127 changes: 126 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,126 @@
# debian-barebone
# debian-barebone

A simple page to keep track of the changes to install Debian as minimal and barebone as possible.

My preference of a linux desktop is to be as barebone as possible, easy to extend if needed, and know what I install, and be able to serve ALL of my daily needs, which are mostly programming and office documents related activities. I have been a linux user for many years and gone through quite a few distros including red hat, fedora, ubuntu, lubuntu, xubuntu, debian, slax, dsl, tiny core, etc, just to name a few. In recent years, I found myself using debian-based distro more and more. It is small and fast, but not so small and different to a point where it is hard to add things if I need to, like some of the really lightweight distro.

It documents how I install minimum packages. Many of these are taken from various google sources but I need a single place to track end to end steps and packages.

1) BASE

For debian base (buster) installation, I use debian-10.6.0-amd64-netinst-firmware.iso. Using text based installer to go through the whole installation process, without selecting any meta packages, yea, NONE.

Install some handy optional packages, install os-prober if you dual boot Windows, add yourself to the sudoer list:

apt install sudo lshw ssh os-prober
usermod -aG sudo [your username]

Check linux kernel and keep the latest version (in this case, it is 4.19.0-12-amd64):

uname -a
apt list linux-image* --installed
apt-get purge linux-image-4.19.0-11-amd64

After installation, add contrib non-free to /etc/apt/sources.list file. Generally I prefer vendor supplied drivers such as nvidia's. Disable recommended packages for apt by creating /etc/apt/apt.conf.d/99_norecommends file:

APT::Install-Recommends "false";
APT::AutoRemove::RecommendsImportant "false";
APT::AutoRemove::SuggestsImportant "false";

After this, run the following to update and remove even more package. At this point, there are 208 packages installed, about 800MB in disk size, see apt-base.txt.

apt update; apt upgrade; apt autoremove

2) NETWORK

If network card is recognize, to connect to wifi:

ip a
iw dev
ip link set wlp2s0 up
iwlist scan

Add wifi to /etc/network/interfaces. This will work for most commonly WPA/WPA2 networks:

allow-hotplug wlp3s0
iface wlp3s0 inet dhcp
wpa-ssid ESSID
wpa-psk PASSWORD

Bring up your interface and verify the connection:

ifup wlp3s0
iw wlp3s0 link
ip a

If network card is not recognize, you will need to go through more steps. I will not cover here.

3) XORG

I use debian as my desktop, X11 is needed.

Xorg core -- Installing the void input driver and dummy video driver prevents APT installing all available drivers soyou can install only the drivers you need.

apt install xserver-xorg-core xserver-xorg-video-dummy xserver-xorg-input-void xinit x11-xserver-utils

Video drivers -- Install your video driver. Install vesa for fallback, qxl if you use qemu virtual machine.

apt install xserver-xorg-video-intel xserver-xorg-video-vesa xserver-xorg-video-qxl

Input drivers -- keyboard, mouse, touchpad, etc.

apt install xserver-xorg-input-evdev xserver-xorg-input-libinput xserver-xorg-input-mouse xserver-xorg-input-kbd xserver-xorg-input-synaptics

Install fonts --

apt-get install xfonts-100dpi xfonts-75dpi xfonts-base xfonts-scalable

4) DESKTOP

Desktop environment is obviously very personal. I use many over the years, gnome, xfce4, icewm, openbox, fluxbox, lxde. The current lxde based on openbox is actually quite small and fast, consume very little resources. Apps are modular, meaning you can add/delete/change if you don't like any of it. With the right theme (Arc-Theme), lxde can look quite modern. And did I mention it is lightning fast?

apt install lxde

Because of "No Recommended" packages, meta package lxde only installs the dependencies which include a terminal, file manager, an 4 very lightweight accessories calculator, image viewer, text editor, xarchiver. Reboot into a full desktop environment. If you need other apps, such as volume and power controls, themes, network manager, install them manually.

apt install arc-theme wicd lxtask lightdm-gtk-greeter-settings xfce4-power-manager alsa-utils

Now I got a fully functional, themed desktop environment, with 180MB memory and 1.2GB disk size, yay!

5) OFFICE - optional

For pdf and doc:

apt install evince libreoffice

6) LOCALE - optional

For additional languages you might use, install them. I use simplified chinese fcitx input method, with google pinyin.

Reconfigure the locales to include zh_CN.UTF-8 UTF-8:

dpkg-reconfigure locales

Install fcitx:

apt install im-config fcitx fcitx-config-gtk fcitx-googlepinyin fcitx-modules fcitx-module-dbus fcitx-module-x11 fcitx-ui-classic

Run im-config to select fcitx, then reboot or logout for it to become effective:

im-config

Run fcitx configuration from Preferences, then add Google Pinyin. You will have a keyboard icon now on the panel to switch between English and Chinese input.

7) PROGRAMMING - optional

For basic build environment:

apt install build-essential git maven nodejs npm

8) BROWSERS - optional

For browsers, install firefox or chromium. If you prefer, download chrome browser directly from Google website:

apt install firefox-esr chromium

Why the trouble? You have the control and can decide what you want and don't want.
209 changes: 209 additions & 0 deletions apt-base.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,209 @@
Listing...
adduser/stable,now 3.118 all [installed]
apt-utils/stable,stable,now 1.8.2.1 amd64 [installed]
apt/stable,stable,now 1.8.2.1 amd64 [installed]
base-files/stable,now 10.3+deb10u6 amd64 [installed]
base-passwd/stable,now 3.5.46 amd64 [installed]
bash/stable,now 5.0-4 amd64 [installed]
bsdmainutils/stable,now 11.1.2+b1 amd64 [installed]
bsdutils/stable,now 1:2.33.1-0.1 amd64 [installed]
busybox/stable,now 1:1.30.1-4 amd64 [installed]
console-setup-linux/stable,now 1.193~deb10u1 all [installed,automatic]
console-setup/stable,now 1.193~deb10u1 all [installed]
coreutils/stable,now 8.30-3 amd64 [installed]
cpio/stable,now 2.12+dfsg-9 amd64 [installed]
cron/stable,now 3.0pl1-134+deb10u1 amd64 [installed]
dash/stable,now 0.5.10.2-5 amd64 [installed]
debconf-i18n/stable,now 1.5.71 all [installed]
debconf/stable,now 1.5.71 all [installed]
debian-archive-keyring/stable,now 2019.1 all [installed]
debianutils/stable,now 4.8.6.1 amd64 [installed]
diffutils/stable,now 1:3.7-3 amd64 [installed]
discover-data/stable,now 2.2013.01.11 all [installed,automatic]
discover/stable,now 2.1.2-8 amd64 [installed]
dmidecode/stable,now 3.2-1 amd64 [installed]
dmsetup/stable,now 2:1.02.155-3 amd64 [installed]
dpkg/stable,now 1.19.7 amd64 [installed]
e2fsprogs/stable,now 1.44.5-1+deb10u3 amd64 [installed]
eject/stable,now 2.1.5+deb1+cvs20081104-13.2 amd64 [installed]
fdisk/stable,now 2.33.1-0.1 amd64 [installed]
findutils/stable,now 4.6.0+git+20190209-2 amd64 [installed]
firmware-linux-free/stable,now 3.4 all [installed,automatic]
gcc-8-base/stable,now 8.3.0-6 amd64 [installed]
gdbm-l10n/stable,now 1.18.1-4 all [installed]
gettext-base/stable,now 0.19.8.1-9 amd64 [installed,automatic]
gpgv/stable,now 2.2.12-1+deb10u1 amd64 [installed]
grep/stable,now 3.3-1 amd64 [installed]
grub-common/stable,stable,now 2.02+dfsg1-20+deb10u2 amd64 [installed]
grub-pc-bin/stable,stable,now 2.02+dfsg1-20+deb10u2 amd64 [installed,automatic]
grub-pc/stable,stable,now 2.02+dfsg1-20+deb10u2 amd64 [installed]
grub2-common/stable,stable,now 2.02+dfsg1-20+deb10u2 amd64 [installed,automatic]
gzip/stable,now 1.9-3 amd64 [installed]
hostname/stable,now 3.21 amd64 [installed]
ifupdown/stable,now 0.8.35 amd64 [installed]
init-system-helpers/stable,now 1.56+nmu1 all [installed]
init/stable,now 1.56+nmu1 amd64 [installed]
initramfs-tools-core/stable,now 0.133+deb10u1 all [installed,automatic]
initramfs-tools/stable,now 0.133+deb10u1 all [installed]
installation-report/stable,now 2.71 all [installed]
iproute2/stable,now 4.20.0-2 amd64 [installed]
iptables/stable,now 1.8.2-4 amd64 [installed]
iputils-ping/stable,now 3:20180629-2+deb10u1 amd64 [installed]
isc-dhcp-client/stable,now 4.4.1-2 amd64 [installed]
isc-dhcp-common/stable,now 4.4.1-2 amd64 [installed]
kbd/stable,now 2.0.4-4 amd64 [installed,automatic]
keyboard-configuration/stable,now 1.193~deb10u1 all [installed]
klibc-utils/stable,now 2.0.6-1 amd64 [installed,automatic]
kmod/stable,now 26-1 amd64 [installed]
laptop-detect/stable,now 0.16 all [installed]
less/stable,now 487-0.1+b1 amd64 [installed]
libacl1/stable,now 2.2.53-4 amd64 [installed]
libapparmor1/stable,now 2.13.2-10 amd64 [installed]
libapt-inst2.0/stable,stable,now 1.8.2.1 amd64 [installed]
libapt-pkg5.0/stable,stable,now 1.8.2.1 amd64 [installed]
libargon2-1/stable,now 0~20171227-0.2 amd64 [installed]
libattr1/stable,now 1:2.4.48-4 amd64 [installed]
libaudit-common/stable,now 1:2.8.4-3 all [installed]
libaudit1/stable,now 1:2.8.4-3 amd64 [installed]
libblkid1/stable,now 2.33.1-0.1 amd64 [installed]
libbsd0/stable,now 0.9.1-2 amd64 [installed]
libbz2-1.0/stable,now 1.0.6-9.2~deb10u1 amd64 [installed]
libc-bin/stable,now 2.28-10 amd64 [installed]
libc-l10n/stable,now 2.28-10 all [installed,automatic]
libc6/stable,now 2.28-10 amd64 [installed]
libcap-ng0/stable,now 0.7.9-2 amd64 [installed]
libcap2-bin/stable,now 1:2.25-2 amd64 [installed]
libcap2/stable,now 1:2.25-2 amd64 [installed]
libcom-err2/stable,now 1.44.5-1+deb10u3 amd64 [installed]
libcryptsetup12/stable,now 2:2.1.0-5+deb10u2 amd64 [installed]
libdb5.3/stable,now 5.3.28+dfsg1-0.5 amd64 [installed]
libdebconfclient0/stable,now 0.249 amd64 [installed]
libdevmapper1.02.1/stable,now 2:1.02.155-3 amd64 [installed]
libdiscover2/stable,now 2.1.2-8 amd64 [installed,automatic]
libdns-export1104/stable,stable,now 1:9.11.5.P4+dfsg-5.1+deb10u2 amd64 [installed]
libedit2/stable,now 3.1-20181209-1 amd64 [installed,automatic]
libefiboot1/stable,now 37-2 amd64 [installed,automatic]
libefivar1/stable,now 37-2 amd64 [installed,automatic]
libelf1/stable,now 0.176-1.1 amd64 [installed]
libestr0/stable,now 0.1.10-2.1 amd64 [installed]
libexpat1/stable,stable,now 2.2.6-2+deb10u1 amd64 [installed,automatic]
libext2fs2/stable,now 1.44.5-1+deb10u3 amd64 [installed]
libfastjson4/stable,now 0.99.8-2 amd64 [installed]
libfdisk1/stable,now 2.33.1-0.1 amd64 [installed]
libffi6/stable,now 3.2.1-9 amd64 [installed]
libfreetype6/stable,now 2.9.1-3+deb10u2 amd64 [installed,automatic]
libfuse2/stable,now 2.9.9-1+deb10u1 amd64 [installed,automatic]
libgcc1/stable,now 1:8.3.0-6 amd64 [installed]
libgcrypt20/stable,now 1.8.4-5 amd64 [installed]
libgmp10/stable,now 2:6.1.2+dfsg-4 amd64 [installed]
libgnutls30/stable,now 3.6.7-4+deb10u5 amd64 [installed]
libgpg-error0/stable,now 1.35-1 amd64 [installed]
libgssapi-krb5-2/stable,now 1.17-3 amd64 [installed,automatic]
libhogweed4/stable,now 3.4.1-1 amd64 [installed]
libidn11/stable,now 1.33-2.2 amd64 [installed]
libidn2-0/stable,stable,now 2.0.5-1+deb10u1 amd64 [installed]
libip4tc0/stable,now 1.8.2-4 amd64 [installed]
libip6tc0/stable,now 1.8.2-4 amd64 [installed]
libiptc0/stable,now 1.8.2-4 amd64 [installed]
libisc-export1100/stable,stable,now 1:9.11.5.P4+dfsg-5.1+deb10u2 amd64 [installed]
libjson-c3/stable,stable,now 0.12.1+ds-2+deb10u1 amd64 [installed]
libk5crypto3/stable,now 1.17-3 amd64 [installed,automatic]
libkeyutils1/stable,now 1.6-6 amd64 [installed,automatic]
libklibc/stable,now 2.0.6-1 amd64 [installed,automatic]
libkmod2/stable,now 26-1 amd64 [installed]
libkrb5-3/stable,now 1.17-3 amd64 [installed,automatic]
libkrb5support0/stable,now 1.17-3 amd64 [installed,automatic]
liblocale-gettext-perl/stable,now 1.07-3+b4 amd64 [installed]
liblognorm5/stable,now 2.0.5-1 amd64 [installed]
liblz4-1/stable,now 1.8.3-1 amd64 [installed]
liblzma5/stable,now 5.2.4-1 amd64 [installed]
libmnl0/stable,now 1.0.4-2 amd64 [installed]
libmount1/stable,now 2.33.1-0.1 amd64 [installed]
libncurses6/stable,now 6.1+20181013-2+deb10u2 amd64 [installed]
libncursesw6/stable,now 6.1+20181013-2+deb10u2 amd64 [installed]
libnetfilter-conntrack3/stable,now 1.0.7-1 amd64 [installed]
libnettle6/stable,now 3.4.1-1 amd64 [installed]
libnewt0.52/stable,now 0.52.20-8 amd64 [installed]
libnfnetlink0/stable,now 1.0.1-3+b1 amd64 [installed]
libnftnl11/stable,now 1.1.2-2 amd64 [installed]
libp11-kit0/stable,now 0.23.15-2 amd64 [installed]
libpam-modules-bin/stable,now 1.3.1-5 amd64 [installed]
libpam-modules/stable,now 1.3.1-5 amd64 [installed]
libpam-runtime/stable,now 1.3.1-5 all [installed]
libpam0g/stable,now 1.3.1-5 amd64 [installed]
libpci3/stable,now 1:3.5.2-1 amd64 [installed,automatic]
libpcre3/stable,now 2:8.39-12 amd64 [installed]
libpng16-16/stable,now 1.6.36-6 amd64 [installed,automatic]
libpopt0/stable,now 1.16-12 amd64 [installed]
libprocps7/stable,now 2:3.3.15-2 amd64 [installed]
libseccomp2/stable,now 2.3.3-4 amd64 [installed]
libselinux1/stable,now 2.8-1+b1 amd64 [installed]
libsemanage-common/stable,now 2.8-2 all [installed]
libsemanage1/stable,now 2.8-2 amd64 [installed]
libsepol1/stable,now 2.8-1 amd64 [installed]
libslang2/stable,now 2.3.2-2 amd64 [installed]
libsmartcols1/stable,now 2.33.1-0.1 amd64 [installed]
libss2/stable,now 1.44.5-1+deb10u3 amd64 [installed]
libssl1.1/stable,stable,now 1.1.1d-0+deb10u3 amd64 [installed]
libstdc++6/stable,now 8.3.0-6 amd64 [installed]
libsystemd0/stable,now 241-7~deb10u4 amd64 [installed]
libtasn1-6/stable,now 4.13-3 amd64 [installed]
libtext-charwidth-perl/stable,now 0.04-7.1+b1 amd64 [installed]
libtext-iconv-perl/stable,now 1.7-5+b7 amd64 [installed]
libtext-wrapi18n-perl/stable,now 0.06-7.1 all [installed]
libtinfo6/stable,now 6.1+20181013-2+deb10u2 amd64 [installed]
libudev1/stable,now 241-7~deb10u4 amd64 [installed]
libunistring2/stable,now 0.9.10-1 amd64 [installed]
libusb-0.1-4/stable,now 2:0.1.12-32 amd64 [installed,automatic]
libusb-1.0-0/stable,now 2:1.0.22-2 amd64 [installed,automatic]
libuuid1/stable,now 2.33.1-0.1 amd64 [installed]
libwrap0/stable,now 7.6.q-28 amd64 [installed,automatic]
libxtables12/stable,now 1.8.2-4 amd64 [installed]
libzstd1/stable,now 1.3.8+dfsg-3 amd64 [installed]
linux-base/stable,now 4.6 all [installed,automatic]
linux-image-4.19.0-12-amd64/stable,now 4.19.152-1 amd64 [installed,automatic]
linux-image-amd64/stable,now 4.19+105+deb10u7 amd64 [installed]
locales/stable,now 2.28-10 all [installed]
login/stable,now 1:4.5-1.1 amd64 [installed]
logrotate/stable,now 3.14.0-4 amd64 [installed]
lsb-base/stable,now 10.2019051400 all [installed]
lshw/stable,now 02.18.85-0.1 amd64 [installed]
mawk/stable,now 1.3.3-17+b3 amd64 [installed]
mount/stable,now 2.33.1-0.1 amd64 [installed]
nano/stable,now 3.2-3 amd64 [installed]
ncurses-base/stable,now 6.1+20181013-2+deb10u2 all [installed]
ncurses-bin/stable,now 6.1+20181013-2+deb10u2 amd64 [installed]
netbase/stable,now 5.6 all [installed]
openssh-client/stable,now 1:7.9p1-10+deb10u2 amd64 [installed,automatic]
openssh-server/stable,now 1:7.9p1-10+deb10u2 amd64 [installed,automatic]
openssh-sftp-server/stable,now 1:7.9p1-10+deb10u2 amd64 [installed,automatic]
os-prober/stable,now 1.77 amd64 [installed]
passwd/stable,now 1:4.5-1.1 amd64 [installed]
pciutils/stable,now 1:3.5.2-1 amd64 [installed]
perl-base/stable,now 5.28.1-6+deb10u1 amd64 [installed]
procps/stable,now 2:3.3.15-2 amd64 [installed]
readline-common/stable,now 7.0-5 all [installed]
rsyslog/stable,now 8.1901.0-1 amd64 [installed]
sed/stable,now 4.7-1 amd64 [installed]
sensible-utils/stable,now 0.0.12 all [installed]
ssh/stable,now 1:7.9p1-10+deb10u2 all [installed]
sudo/stable,now 1.8.27-1+deb10u2 amd64 [installed]
systemd-sysv/stable,now 241-7~deb10u4 amd64 [installed]
systemd/stable,now 241-7~deb10u4 amd64 [installed]
sysvinit-utils/stable,now 2.93-8 amd64 [installed]
tar/stable,now 1.30+dfsg-6 amd64 [installed]
task-english/stable,now 3.53 all [installed]
tasksel-data/stable,now 3.53 all [installed]
tasksel/stable,now 3.53 all [installed]
tzdata/stable-updates,now 2020d-0+deb10u1 all [installed]
ucf/stable,now 3.0038+nmu1 all [installed,automatic]
udev/stable,now 241-7~deb10u4 amd64 [installed]
usb.ids/stable,now 2019.07.27-0+deb10u1 all [installed,automatic]
usbutils/stable,now 1:010-3 amd64 [installed]
util-linux/stable,now 2.33.1-0.1 amd64 [installed]
vim-common/stable,now 2:8.1.0875-5 all [installed]
vim-tiny/stable,now 2:8.1.0875-5 amd64 [installed]
whiptail/stable,now 0.52.20-8 amd64 [installed]
xkb-data/stable,now 2.26-2 all [installed,automatic]
xxd/stable,now 2:8.1.0875-5 amd64 [installed]
zlib1g/stable,now 1:1.2.11.dfsg-1 amd64 [installed]
1 change: 1 addition & 0 deletions apt-install-fcitx.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
apt install im-config fcitx fcitx-config-gtk fcitx-googlepinyin fcitx-modules fcitx-module-dbus fcitx-module-x11 fcitx-ui-classic
2 changes: 2 additions & 0 deletions apt-install-lxde.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
apt install lxde
apt install arc-theme wicd lxtask lightdm-gtk-greeter-settings xfce4-power-manager alsa-utils
8 changes: 8 additions & 0 deletions apt-install-xorg.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
echo Install Xorg
apt install xserver-xorg-core xserver-xorg-video-dummy xserver-xorg-input-void xinit x11-xserver-utils
echo Install Video Drivers
apt install xserver-xorg-video-intel xserver-xorg-video-vesa xserver-xorg-video-qxl
echo Install Input Drivers
apt install xserver-xorg-input-evdev xserver-xorg-input-libinput xserver-xorg-input-mouse xserver-xorg-input-kbd xserver-xorg-input-synaptics
echo Install Fonts
apt-get install xfonts-100dpi xfonts-75dpi xfonts-base xfonts-scalable

0 comments on commit efe3d4b

Please sign in to comment.