My personal setup and config files, and scripts I use to quickly reinstall. Options for both a quick install and full install are present, differing only in the number of packages installed.
Obviously on a new system git probably won't be installed, and ssh won't be set up. You'll have to set up one or both. Grab the initial setup file from the below public repo:
wget RyanAC23.github.io/compute/files/dclip-setup.sh
Run this script (you may need to change permissions) and you should have this full repository on your machine. Run the two scripts
sudo ./packageinstall.sh
./dotfiles_util.sh
After this, restart your computer. This should be it.
Packages are divided into two sets, called core and full. The core list contains lighter and more essential packages, and the full list contains more intensive ones (including resource hog texlive-full) so that I can choose to skip them until later. Both tables are combined into one below.
Packages | Description | Notes |
---|---|---|
emacs | Extensible, customizable text editor | .emacs.d symlinked to $HOME |
git | Fast distributed version control system | |
ranger | Simple console file manager | |
urxvt | Unicode enabled rxvt-clone terminal emulator (urxvt) | .urxvt symlinked to $HOME |
w3m | text-based web browser | Installed as a dependency for urxvt and ranger |
xclip | Command line interface to the X11 clipboard | |
mercurial | Distributed source control management tool | |
libx11-dev | Dependencies | |
libxft-dev | Dependencies | |
ffmpeg | Cross platform audio and video editor | |
pavucontrol | Volume mixer | |
gfortran | GNU Fortran compiler | |
gcc | GNU Compiler Collection, C/C++ | |
tmux | Terminal multiplexer | |
rxvt-unicode | Terminal emulator with unicode support | Perl extensions in .urxvt semi-essential |
RANGER | Console file manager with vi-like bindings | |
neofetch | System information tool | |
tree | List contents of directories in tree format | |
ncdu | NCurses Disk Usage disk analyzer | |
vim | Lightweight text editor. | For occasional use with programs |
numlockx | Control the state of numlock | For startup numlock option on desktop with numpad |
nomacs | Image viewer | eom is awful |
guayadeque | Audio player | |
mpv | Cross platform media player | |
texlive-full | TeX document production system | THE killer of a quick install |
stellarium | Open source planetarium software | |
screenkey | Key screencast tool | |
virtualbox | Cross platform virtualization | |
asunder | CD ripper | For trips to the thrift store |
krita | Painting/image editor | |
gparted | GUI partition manager | |
Chrome | Web Browser | I know... |
gstreamer1.0-plugins-bad | Audio codecs | For straggling .m4a files |
Transmission | Torrent client |
file / directory name | Description |
---|---|
/bin | Contains dumb scripts |
/conda-envs | Conda environments to install |
/etc/lightdm/slick-greeter.conf | For setting the login background and numlock |
/packages | .csv lists of packages used by install scripts |
/setup_docs | The scripts for installing a new setup |
/.emacs.d | emacs config folder to be symlinked to $HOME. Main file is racinit.org |
/.urxvt | rxvt-unicode functionality scripts |
/.vim | vim configurations. This could be vetted. |
/.guayadeque | guayadeque music player config. .gitignore passes its (massive) database |
.bashrc | executed on login to a new shell |
.bash_aliases | Contains useful aliases; sourced by .bashrc |
.tmux.conf | Key bindings and behavior for tmux. Made to be sort of emacs-like |
.Xresources | .urxvt display settings and bindings. Source with xrdb |
/.config | Folder with config for nicer packages that didn't want to clutter $HOME |
/.config/autostart | Turns off blueman by default. When do you use bluetooth? |
/.config/dconf | Main display and toolbar settings for Ubuntu-Mate. |
/.config/neofetch | My settings for what info neofetch displays, plus a custom ascii logo. |
/.config/ranger | Minor settings telling ranger to preview images and use emacs. |
/.config/.environment_site | Command for quickly running a jupyter server. Could be merged with .bash_aliases. |
Most of these are things I've played with in the past but no longer use.
- Wireshark
- Lynx
- MC
- Terminator
- Chirp
- vscode
- xscreensaver, xscreensaver-data-extra, xscreensaver-gl-extra
Since a version update, tmux can now store its config file in .config
. I'm all about keeping the root directory clean.
- Started a Makefile for Miniconda setup. Expand to other things eventually.
- Fixed .environment_site conda location
- Updated emacs with ppa repository
sudo add-apt-repository -y ppa:ubuntu-elisp
sudo apt update
sudo apt install emacs-snapshot
- New quotes.
- Added libreoffice and gnuplot to installer.
- Dropbox will hang if run from the script. Move this to the end or find a way to close the Dropbox session after installing that won't kill the install script.
- Chrome reinstalls every time you run the full script, even if already present.
- .config/dconf does not copy properly. Change
rsynctocp -rcommand.
- possible bug with dconf file not copying with rsync command. Try on VM and see if this is reproducible on another machine.
- Should create a small new script to check for changes between config files, and to sync them
- .csv files must end with newline or the installer will miss the last package.
- Add wallpaper copy/set from Dropbox public link
sudo cp [dropbox]/login.png /usr/share/backgrounds/ubuntu-mate-common/
- Add config file explanations
- Add Dropbox setup
- Add Conda setup
- Add Conda environment install
- Make one config folder symlink routine
- Turn off bluetooth controller by default
- Add numlockx to package list