Add post-install script

Signed-off-by: Severin Kaderli <severin.kaderli@gmail.com>
This commit is contained in:
Severin Kaderli 2018-12-13 00:18:28 +01:00
parent cd781c174e
commit 006fddf028
5 changed files with 136 additions and 100 deletions

View file

@ -2,6 +2,7 @@
# #
# Author: Severin Kaderli <severin.kaderli@gmail.com> # Author: Severin Kaderli <severin.kaderli@gmail.com>
# Usage: ./install.sh # Usage: ./install.sh
. utils.sh
####################################### #######################################
# Configuration variables # Configuration variables
@ -29,6 +30,7 @@ LINKED_FILES_HOME=(
".config/termite" ".config/termite"
".crontab" ".crontab"
".dircolors" ".dircolors"
".env"
".gitconfig" ".gitconfig"
".gtkrc-2.0.mine" ".gtkrc-2.0.mine"
".gtkrc-2.0" ".gtkrc-2.0"
@ -46,37 +48,6 @@ SYSTEMD_SERVICES=(
"bumblebeed" "bumblebeed"
) )
#######################################
# Directory variables
#######################################
DIR="$( cd "$(dirname "${BASH_SOURCE[0]}" )" && pwd)"
SYSTEM_DIR="$DIR/system"
PACKAGES_DIR="$DIR/packages"
#######################################
# Helper functions
#######################################
# Function to display fancy headers
function print_header() {
echo -e "\n\e[32m########################################"
echo -e "# $1"
echo -e "########################################\e[39m"
}
# Function to set owner and permission of a file
function set_permission() {
echo -e "- Changing permission of $3 to $1"
sudo chown -R "$1" "$3"
echo -e "- Changing permission of $3 to $2"
sudo chmod -R "$2" "$3"
}
# Function to enable a service
function enable_service() {
echo -e "- Enabling service $1"
sudo systemctl enable "$1"
}
####################################### #######################################
# Main code # Main code
####################################### #######################################

28
post-install.sh Executable file
View file

@ -0,0 +1,28 @@
#!/bin/bash
#
# This is the post installation script. This should be executed only after
# install.sh has been executed completly and the system has been rebooted
# after that.
#
# This script installs npm packages.
#
# Author: Severin Kaderli <severin.kaderli@gmail.com>
# Usage: ./post-install.sh
. utils.sh
#######################################
# Configuration variables
#######################################
# Array of npm packages which should be installed globally
NPM_PACKAGES=(
"@vue/cli"
"gatsby-cli"
"npm-check-updates"
)
#######################################
# Main code
#######################################
# Install global npm packages
print_header "Installing global npm packages"
npm i -g "${NPM_PACKAGES[@]}"

View file

@ -1,29 +1,11 @@
#!/bin/bash #!/bin/bash
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
# append to the history file, don't overwrite it # Bash configuration
shopt -s histappend shopt -s histappend
# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize shopt -s checkwinsize
# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
shopt -s globstar shopt -s globstar
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, unless we know we "want" color) # set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in case "$TERM" in
xterm|xterm-color|*-256color) color_prompt=yes;; xterm|xterm-color|*-256color) color_prompt=yes;;
@ -41,6 +23,7 @@ if [ -f $HOME/.aliases ]; then
. $HOME/.aliases . $HOME/.aliases
fi fi
# Source git-prompt script
if [ -f /usr/share/git/completion/git-prompt.sh ]; then if [ -f /usr/share/git/completion/git-prompt.sh ]; then
. /usr/share/git/completion/git-prompt.sh . /usr/share/git/completion/git-prompt.sh
fi fi
@ -51,53 +34,7 @@ if [ -f /etc/bash_completion ]; then
fi fi
complete -cf sudo complete -cf sudo
# Setting default editor and terminal # Sourcing alias definitions
export VISUAL=vim if [ -f $HOME/.env ]; then
export EDITOR="$VISUAL" . $HOME/.env
export TERMINAL=termite
export QT_QPA_PLATFORMTHEME=qt5ct
# ibus
export GTK_IM_MODULE=xim
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=xim
# wine
export WINEDEBUG=-all
export __GL_FSAA_MODE=0
export __GL_DEFAULT_LOG_ANISO=0
export __GL_LOG_MAX_ANISO=0
export STAGING_SHARED_MEMORY=1
export STAGING_RT_PRIORITY_SERVER=90
export WINEESYNC=1
export PBA_ENABLE=1
#export LD_PRELOAD="libpthread.so.0 libGL.so.1"
export __GL_THREADED_OPTIMIZATIONS=1
export __GL_SYNC_TO_VBLANK=0
export __GL_YIELD=NOTHING
# Path
if [ -d "$HOME/bin" ]; then
export PATH="$PATH:$HOME/bin"
fi fi
export PATH="$PATH:$GEM_HOME/bin"
# Color codes for bash prompt
Reset='\033[0m'
Green='\033[32m'
Red='\033[31m'
Blue='\033[34m'
Yellow='\033[33m'
# Set bash prompt
set_bash_prompt() {
PS1="${Reset}┌─"
PS1="${PS1}${Red}[\t]"
PS1="${PS1}${Blue}[\h]"
PS1="${PS1}${Yellow}[\w]"
PS1="${PS1}${Blue}$(__git_ps1 "[%s]")"
PS1="${PS1}${Reset}\n└─╼ "
export MSYS2_PS1="$PS1"
}
export PROMPT_COMMAND=set_bash_prompt

57
system/.env Normal file
View file

@ -0,0 +1,57 @@
#!/bin/bash
# Bash
export HISTCONTROL=ignoreboth
export HISTSIZE=1000
export HISTFILESIZE=2000
# Setting default editor and terminal
export VISUAL=vim
export EDITOR="$VISUAL"
export TERMINAL=termite
export QT_QPA_PLATFORMTHEME=qt5ct
# Ibus
export GTK_IM_MODULE=xim
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=xim
# Wine
export WINEDEBUG=-all
export __GL_FSAA_MODE=0
export __GL_DEFAULT_LOG_ANISO=0
export __GL_LOG_MAX_ANISO=0
export STAGING_SHARED_MEMORY=1
export STAGING_RT_PRIORITY_SERVER=90
export WINEESYNC=1
export PBA_ENABLE=1
#export LD_PRELOAD="libpthread.so.0 libGL.so.1"
export __GL_THREADED_OPTIMIZATIONS=1
export __GL_SYNC_TO_VBLANK=0
export __GL_YIELD=NOTHING
# npm
export npm_config_prefix="$HOME/.node_modules"
# Adding folders to the PATH variable
export PATH="$PATH:$HOME/bin:$HOME/.node_modules/bin"
# Color codes for bash prompt
RESET='\033[0m'
GREEN='\033[32m'
RED='\033[31m'
BLUE='\033[34m'
YELLOW='\033[33m'
# Set bash prompt
set_bash_prompt() {
PS1="${Reset}┌─"
PS1="${PS1}${RED}[\t]"
PS1="${PS1}${BLUE}[\h]"
PS1="${PS1}${YELLOW}[\w]"
PS1="${PS1}${BLUE}$(__git_ps1 "[%s]")"
PS1="${PS1}${RESET}\n└─╼ "
export MSYS2_PS1="$PS1"
}
export PROMPT_COMMAND=set_bash_prompt

43
utils.sh Normal file
View file

@ -0,0 +1,43 @@
#!/bin/bash
#
# Author: Severin Kaderli <severin.kaderli@gmail.com>
#######################################
# Directory variables
#######################################
DIR="$( cd "$(dirname "${BASH_SOURCE[0]}" )" && pwd)"
SYSTEM_DIR="$DIR/system"
PACKAGES_DIR="$DIR/packages"
#######################################
# Bash color code variables
#######################################
RESET='\033[0m'
GREEN='\033[32m'
RED='\033[31m'
BLUE='\033[34m'
YELLOW='\033[33m'
#######################################
# Helper functions
#######################################
# Function to display fancy headers
function print_header() {
echo -e "$GREEN########################################"
echo -e "# $1"
echo -e "########################################$RESET"
}
# Function to set owner and permission of a file
function set_permission() {
echo -e "- Changing permission of $3 to $1"
sudo chown -R "$1" "$3"
echo -e "- Changing permission of $3 to $2"
sudo chmod -R "$2" "$3"
}
# Function to enable a service
function enable_service() {
echo -e "- Enabling service $1"
sudo systemctl enable "$1"
}