/deb9-dev-machine

Quickly install common Developer tools, IDE's & Services on Debian 9

Primary LanguageShellGNU General Public License v3.0GPL-3.0

Debian 9 Developer Machine

Quickly install common Developer tools, IDEs & services on Debian 9. In order to use the installer run the following:

Note: Please do NOT run the script with sudo, run it as your own user!

cd ~/
sudo apt install -y wget && bash <(wget -qO- https://raw.githubusercontent.com/andrewbrg/deb9-dev-machine/master/setup.sh);

This script can be run via the terminal and will get a fresh debian installation up and running with most (if not all) of the dev tools you would require.

Tested on Debian 9 stretch installations as well as the ChromeOS linux Debian containers. Total installation size including the OS itself is ~7GB

You can expect the following to be automatically installed and readily accessible:

Utilities

  • ca-certificates
  • apt-transport-https
  • software-properties-common
  • wget
  • htop
  • mlocate
  • gnupg2
  • cmake
  • libssh2-1-dev
  • libssl-dev
  • curl
  • nano
  • vim
  • gksu
  • preload
  • wine (with Royale2007 theme & Smooth fonts)
  • mono
  • gnome-software
  • gnome-packagekit
  • snapd (may not work on chromebook devices)
  • Zsh
  • Oh my Zsh

Services

  • Git
  • PHP
  • MySQL Community Server
  • Composer
  • Ruby
  • Python
  • GoLang
  • Pip
  • Dapp
  • Memcached
  • Redis
  • Node & npm
  • Yarn
  • Docker
  • Docker Compose
  • Kubernetes
  • Helm
  • Sops

Libraries

  • Apache Cordova
  • Phone Gap
  • React Native
  • Laravel Installer
  • Google Cloud SDK

Software

  • Postman
  • DBeaver
  • SQLite Browser
  • Redis Desktop Manager
  • Software center
  • Package updater
  • Sublime Text IDE (with material theme and dev plugins)
  • PHPStorm IDE
  • Atom IDE
  • VS Code IDE
  • Remmina Remote Desktop Client

Issues with Docker in ChromeOS?

If docker gives the following error when starting (check sudo journalctl -xe):

modprobe: ERROR: ../libkmod/libkmod.c:586 kmod_search_moddep() could not open moddep file '/lib/modules/4.14.74-0777

Then do the following:

  1. Hash out (comment out) the ExecSartPre line from: /lib/systemd/system/containerd.service
sudo vim /lib/systemd/system/containerd.service;
  1. Install separate runc environment
sudo apt install libseccomp-dev -y;
go get -v github.com/opencontainers/runc;

cd $GOPATH/src/github.com/opencontainers/runc;
make BUILDTAGS='seccomp apparmor';

sudo ln -s $(realpath ./runc) /usr/local/bin/runc-master;
  1. Point docker runc to the new environment
sudo mkdir /etc/docker;
sudo touch /etc/docker/daemon.json;
sudo vim /etc/docker/daemon.json;
{
  "runtimes": {
    "runc-master": {
      "path": "/usr/local/bin/runc-master"
    }
  },
  "default-runtime": "runc-master"
}
  1. Restart the docker services
sudo systemctl daemon-reload;
sudo systemctl restart containerd.service;
sudo systemctl restart docker;
  1. Test the installation
docker run hello-world;