These are dotfiles, i.e. configurations of shell and other programs, to set up a basic data science working environment. The setup and workflow is covered in detail in this blog post.
Tested on Linux Mint 17.3 Cinnamon 64-bit and Ubuntu 14.04 (Trusty Tahr) 32-bit.
Please be careful and read through the repo (and the associated Emacs
repo cloned by
install/install-emacs.sh) before cloning it and running the
install.sh will replace your old dotfiles
without making backups.
Some packages are hefty downloads, like the
auctex package installed
apt-get that's needed for the LaTeX Emacs plugin. If you don't
need it, comment it out before running the script (and the plugin in
the Emacs repo).
install.sh loads the scripts in the
install directory to install
- tree - visualize directories as trees
- imagemagick - bitmap image editor
- build-essential - for building Debian packages
- pandoc - markup language parser/converter
- automake - tool for generating Makefile.in files (required by auctex, Emacs plugin)
- texlive-full - LaTeX (required by auctex, Emacs plugin)
- python numeric/scientific computing/plotting libraries: matplotlib, ggplot, numpy, pandas, scipy, scikit-learn, jupyter, ipython, ipython-notebook, statsmodels
- python webscraping - beautifulsoup4
- r language and libarires - r, r-essentials
- jedi - autocompletion and static analysis library for python (required by elpy, Emacs plugin)
- flake8 - python PEP8 style and error checker (required by elpy, Emacs plugin)
- autoenv - directory-based environments
- Emacs configuration files - cloned from my Emacs repo
- install emacs 24.4 (if not available in system repo, then build from source)
- install miniconda3
On a fresh installation of Ubuntu, first install git:
sudo apt-get install git
Then clone this repo with Git
git clone https://github.com/efavdb/dotfiles.git
Then run the installation script:
conda listin your shell to check if the miniconda path has been prepended to the PATH variable. If the command is not recognized, try logging out and back into your system in order for the changes to .profile to take effect.
conda listto check that all the packages were successfully installed by
conda.sh. If they weren't (e.g. due to a failed internet connection), you can run
install.shagain. Note, the list output by
conda listshould look a lot longer than that in
conda.shbecause of automatically installed dependencies.
- Dotfiles for peace of mind -- step-by-step guide through this repo
- Getting started with dotfiles -- dotfiles how-to
- https://github.com/webpro/dotfiles -- inspiration for structuring dotfiles and automating installation
- My Python Environment Workflow with Conda -- Tim Hopper's workflow, implemented in this repo
- Emacs repo cloned by this setup