The fastest way to experiment with iSpec on any platform (Mac, Windows, Linux and Solaris) is to download the ready-to-use virtual machine with iSpec and all its dependencies already included (i.e. python packages and compilers). To run it, the only necessary step is to install the sofware for running virtual machines named VirtualBox (free software):
By default, the virtual machine will show the Xubuntu Desktop with an icon that launches iSpec. Additionally, iSpec can be found in the directory /home/virtual/iSpec/ in the virtual machine.
It is possible to share a folder from your real computer to the virtual one, thus files can be easily accessed from it. To activate that option, go to Settings - Shared folders and add a shared folder by clicking on the plus sign. It is important to mark the Auto-mount option to have an easier access from the virtual machine. It is possible that a virtual machine reboot is needed. The shared folder can be accessed from the virtual machine by double clicking the folder media on the Desktop.
This are the instructions to follow in case the user wants to build his/her own virtual machine obtaining the same result as the machine that can be already downloaded:
sudo bash VBoxLinuxAdditions.run
sudo addgroup virtual vboxsf
[SeatDefaults]
autologin-user=virtual
autologin-user-timeout=0
user-session=xubuntu
sudo apt-get update
sudo apt-get dist-upgrade -y
sudo apt-get install synaptic --no-install-recommends
sudo apt-get install -y --no-install-recommends build-essential gfortran libncurses5-dev libblas-dev liblapack-dev libatlas-base-dev libfreetype6-dev libpng-dev libhdf5-dev
sudo apt-get install -y --no-install-recommends htop git git-gui exuberant-ctags tmux sqlite3 sshfs
# vim 8.0
sudo add-apt-repository -y ppa:jonathonf/vim
sudo apt-get update
sudo apt-get install -y --no-install-recommends vim
sudo apt-get install -y --no-install-recommends python python-dev python-tk python-qt4 python-pip python-pandas python-numpy python-scipy python-matplotlib python-setuptools
sudo pip install --upgrade pip
sudo pip install --upgrade pandas
sudo pip install wheel
sudo pip install jupyter
sudo pip install pudb
sudo pip install astropy
sudo pip install cython
sudo pip install pyflakes
sudo pip install scikit-learn
sudo pip install lockfile
sudo pip install patsy
sudo pip install statsmodels
sudo apt-get install -y --no-install-recommends xfce4-cpugraph-plugin xfce4-xkb-plugin
sudo apt-get install -y --no-install-recommends firefox
cd $HOME
mkdir -p .vim/undodir/
mkdir -p .vim/spell/
mkdir -p .vim/autoload/
cd $HOME/.vim/autoload
wget https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
cd $HOME
git clone https://github.com/marblestation/vim-complex-sensible
cp vim-complex-sensible/vimrc .vim/vimrc
ln -s .vim/vimrc .vimrc
rm -rf vim-complex-sensible/
cd $HOME/.vim/spell/
wget http://ftp.vim.org/vim/runtime/spell/en.utf-8.spl
wget http://ftp.vim.org/vim/runtime/spell/en.utf-8.sug
wget http://ftp.vim.org/vim/runtime/spell/es.utf-8.spl
wget http://ftp.vim.org/vim/runtime/spell/es.utf-8.sug
wget http://ftp.vim.org/vim/runtime/spell/fr.utf-8.spl
wget http://ftp.vim.org/vim/runtime/spell/fr.utf-8.sug
wget http://ftp.vim.org/vim/runtime/spell/ca.utf-8.spl
wget http://ftp.vim.org/vim/runtime/spell/ca.utf-8.sug
cd $HOME
vim +PlugInstall +qall
# Unmap ctrl+s
stty stop undef
# Ignorar comandos duplicados y espacios en blanco delante (default blank)
export HISTCONTROL=ignorespace:ignoredups
# Save history with timestamp (default blank)
export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S "
alias mv='mv -i'
alias cp='cp -i'
alias rm='rm -i'
alias ln='ln -i'
alias vi='vim'
export EDITOR='vim'
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
if [ -f ~/.bash-git-prompt/gitprompt.sh ]; then
# Set config variables first
GIT_PROMPT_ONLY_IN_REPO=1
GIT_PROMPT_FETCH_REMOTE_STATUS=0 # uncomment to avoid fetching remote status
# GIT_PROMPT_SHOW_UPSTREAM=1 # uncomment to show upstream tracking branch
GIT_PROMPT_SHOW_UNTRACKED_FILES=no # can be no, normal or all; determines counting of untracked files
# GIT_PROMPT_STATUS_COMMAND=gitstatus_pre-1.7.10.sh # uncomment to support Git older than 1.7.10
# GIT_PROMPT_START=... # uncomment for custom prompt start sequence
# GIT_PROMPT_END=... # uncomment for custom prompt end sequence
# as last entry source the gitprompt script
# GIT_PROMPT_THEME=Custom # use custom theme specified in file GIT_PROMPT_THEME_FILE (default ~/.git-prompt-colors.sh)
# GIT_PROMPT_THEME_FILE=~/.git-prompt-colors.sh
# GIT_PROMPT_THEME=Solarized # use theme optimized for solarized color scheme
source ~/.bash-git-prompt/gitprompt.sh
fi
# Execute 'tmux update-env' inside tmux to update environment variables in bash
function tmux() {
local tmux=$(type -fp tmux)
case "$1" in
update-environment|update-env|env-update)
local v
while read v; do
if [[ $v == -* ]]; then
unset ${v/#-/}
else
# Add quotes around the argument
v=${v/=/=\"}
v=${v/%/\"}
eval export $v
fi
done < <(tmux show-environment)
;;
*)
$tmux "$@"
;;
esac
}
echo "source \$HOME/.bash_profile" >> $HOME/.bashrc
git clone https://github.com/magicmonty/bash-git-prompt.git /home/${USERNAME}/.bash-git-prompt
# start a non-login shell by default for each new window
#set-option -g default-command "/opt/local/bin/reattach-to-user-namespace bash"
set -g default-command 'bash'
# Update environment variables (they should be manually updated in bash)
set -g update-environment "DISPLAY SSH_ASKPASS SSH_AUTH_SOCK SSH_AGENT_PID SSH_CONNECTION WINDOWID XAUTHORITY"
#
# Copy to .bashrc, so that 'tmux update-env' will update the previous variable in already opened bash
#
#function tmux() {
#local tmux=$(type -fp tmux)
#case "$1" in
#update-environment|update-env|env-update)
#local v
#while read v; do
#if [[ $v == -* ]]; then
#unset ${v/#-/}
#else
## Add quotes around the argument
#v=${v/=/=\"}
#v=${v/%/\"}
#eval export $v
#fi
#done < <(tmux show-environment)
#;;
#*)
#$tmux "$@"
#;;
#esac
#}
# Replace C-b for C-a to be as similar as possible to GNU screen
set -g prefix C-a
unbind C-b
bind C-a send-prefix
bind-key C-a last-window # Conflicts with C-a C-a for going to beginning of line in bash
bind-key | split-window -h
bind-key - split-window -v
bind-key x kill-pane
bind-key X kill-window
bind-key Escape copy-mode -u
# Move between pains and not allow repetition
bind-key Up select-pane -U
bind-key Down select-pane -D
bind-key Left select-pane -L
bind-key Right select-pane -R
# Start numbering at 1
set -g base-index 1
# Allows for faster key repetition
set -s escape-time 0
#set-option -g mouse-select-pane on
set-option -g status-keys vi
set-option -g bell-action any
set-option -g set-titles on
set-option -g set-titles-string '#H:#S.#I.#P #W #T' # window number,program name,active (or not)
set-option -g visual-bell on
setw -g mode-keys vi
#setw -g mode-mouse on
setw -g monitor-activity on
#set-option -g status-utf8 on
# set-option -g status-justify centre
set-option -g status-justify left
set-option -g status-bg black
set-option -g status-fg white
set-option -g status-left-length 60
set-option -g pane-active-border-fg green
set-option -g pane-active-border-bg black
set-option -g pane-border-fg white
set-option -g pane-border-bg black
set-option -g message-fg black
set-option -g message-bg green
#setw -g mode-bg black
setw -g window-status-bg black
setw -g window-status-current-fg green
set -g status-interval 1 # seconds
set -g status-left '#[fg=red]#(whoami)@#H#[fg=green]:#[fg=white]#S #[fg=green]][#[default]'
set -g status-right '#[fg=green]][ #[fg=yellow]#(cut -d " " -f 1-3 /proc/loadavg) #[fg=blue]%Y-%m-%d #[fg=white]%H:%M:%S#[default]'
set -g history-limit 4096
bind r source-file ~/.tmux.conf
# New windows or panels go to the same current directory
bind c new-window -c "#{pane_current_path}"
bind \ split-window -h -c '#{pane_current_path}' # Split panes horizontal
bind - split-window -v -c '#{pane_current_path}' # Split panes vertically
bind -r S-Down resize-pane -D 5
bind -r S-Up resize-pane -U 5
bind -r S-Left resize-pane -L 5
bind -r S-Right resize-pane -R 5
sudo apt-get clean
sudo apt-get --purge autoremove
rm -f $HOME/.gitconfig
rm -rf $HOME/.ssh
export HISTFILE=/dev/null
rm -f $HOME/.bash_history
rm -f $HOME/.vim/undodir/*
rm -rf $HOME/.mozilla/