diff --git a/010_alsa.sh b/010_alsa.sh index be92d38..e0bbffc 100755 --- a/010_alsa.sh +++ b/010_alsa.sh @@ -1,6 +1,8 @@ #!/usr/bin/env bash apt-get -y remove --purge pulseaudio pulseaudio-module-x11 pulseaudio-utils pavucontrol gstreamer1.0-pulseaudio pacman pavumeter pavucontrol +DEST=/etc/skel + kill -9 `ps aux | grep -v grep | grep start-pulseaudio | awk {'print $2'}` kill -9 `ps aux | grep -v grep | grep pulseaudio | awk {'print $2'}` @@ -14,9 +16,9 @@ apt-get -y install pnmixer /etc/init.d/alsa-utils restart -kill -HUP `ps aux | grep -v grep | grep pnmixer | awk {'print $2'}` -sed -i 's,^\(VolumeControlCommand=\).*,\1'xfce4-mixer',' $HOME/.config/pnmixer/config -pnmixer & +#kill -HUP `ps aux | grep -v grep | grep pnmixer | awk {'print $2'}` +#sed -i 's,^\(VolumeControlCommand=\).*,\1'xfce4-mixer',' $HOME/.config/pnmixer/config +#pnmixer & cat > /etc/udev/rules.d/00_alsa-usb.rules << 'EOF' # Default to using additional (USB) sound cards when they are available. diff --git a/010_saltstack.sh b/010_saltstack.sh index e5a2d4b..e6d59e7 100755 --- a/010_saltstack.sh +++ b/010_saltstack.sh @@ -57,7 +57,7 @@ echo "deb http://repo.saltstack.com/apt/debian/${DEBIAN_VERSION}/amd64/${SALT_VE #ln -s /etc/apt/sources.list-available/saltstack-${DEBIAN_RELEASE}.list /etc/apt/sources.list.d/saltstack-${DEBIAN_RELEASE}.list # Upgrade The System -apt-get update && apt-get upgrade -y -o DPkg::Options::=--force-confold +apt-get update && apt-get upgrade -y -o "DPkg::Options::=--force-confold" # salt-api - Generic, modular network access system # salt-cloud - public cloud VM management system diff --git a/020_brave_browser-beta.sh b/020_brave_browser-beta.sh index 57a3206..c1e19aa 100755 --- a/020_brave_browser-beta.sh +++ b/020_brave_browser-beta.sh @@ -1,10 +1,12 @@ #!/usr/bin/env bash -curl -s https://brave-browser-apt-beta.s3.brave.com/brave-core-nightly.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-beta.gpg add - -#source /etc/os-release UBUNTU_CODENAME=bionic +URL="brave-browser-apt-beta.s3.brave.com" -echo "deb [arch=amd64] https://brave-browser-apt-beta.s3.brave.com/ ${UBUNTU_CODENAME} main" | sudo tee /etc/apt/sources.list-available/brave-browser-beta-${UBUNTU_CODENAME}.list +curl -s https://${URL}/brave-core-nightly.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-beta.gpg add - + + +echo "deb [arch=amd64] https://${URL}/ ${UBUNTU_CODENAME} main" | sudo tee /etc/apt/sources.list-available/brave-browser-beta-${UBUNTU_CODENAME}.list sudo ln -sf /etc/apt/sources.list-available/brave-browser-beta-${UBUNTU_CODENAME}.list /etc/apt/sources.list.d/brave-browser-beta-${UBUNTU_CODENAME}.list sudo apt update @@ -14,4 +16,10 @@ sudo apt install brave-browser-beta echo 'kernel.unprivileged_userns_clone=1' > /etc/sysctl.d/00-local-userns.conf service procps restart - +# Bypass apt-proxy for brave packages +if [ ! -f /etc/apt/apt.conf.d/02proxy ]; then + mkdir /etc/apt/apt.conf.d/02proxy + if [ ! -z $(grep ${URL}) ]; then + echo "Acquire::http::Proxy { ${URL} DIRECT; };" >> /etc/apt/apt.conf.d/02proxy + fi +fi diff --git a/020_brave_browser-dev.sh b/020_brave_browser-dev.sh index 44f2136..a15842c 100755 --- a/020_brave_browser-dev.sh +++ b/020_brave_browser-dev.sh @@ -1,10 +1,12 @@ #!/usr/bin/env bash -curl -s https://brave-browser-apt-dev.s3.brave.com/brave-core-nightly.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-dev.gpg add - -#source /etc/os-release UBUNTU_CODENAME=bionic +URL=brave-browser-apt-dev.s3.brave.com -echo "deb [arch=amd64] https://brave-browser-apt-dev.s3.brave.com/ $UBUNTU_CODENAME main" | sudo tee /etc/apt/sources.list-available/brave-browser-dev-${UBUNTU_CODENAME}.list +curl -s https://${URL}/brave-core-nightly.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-dev.gpg add - + + +echo "deb [arch=amd64] https://${URL}/ $UBUNTU_CODENAME main" | sudo tee /etc/apt/sources.list-available/brave-browser-dev-${UBUNTU_CODENAME}.list sudo ln -s /etc/apt/sources.list-available/brave-browser-dev-${UBUNTU_CODENAME}.list /etc/apt/sources.list.d/brave-browser-dev-${UBUNTU_CODENAME}.list @@ -15,3 +17,10 @@ sudo apt install brave-browser-dev echo 'kernel.unprivileged_userns_clone=1' > /etc/sysctl.d/00-local-userns.conf service procps restart +# Bypass apt-proxy for brave packages +if [ ! -d /etc/apt/apt.conf.d/02proxy ]; then + mkdir /etc/apt/apt.conf.d/02proxy + if [ ! -z $(grep ${URL}) ]; then + echo "Acquire::http::Proxy { ${URL} DIRECT; };" >> /etc/apt/apt.conf.d/02proxy + fi +fi diff --git a/020_brave_browser-nightly.sh b/020_brave_browser-nightly.sh index 05dccef..01bfcab 100755 --- a/020_brave_browser-nightly.sh +++ b/020_brave_browser-nightly.sh @@ -1,10 +1,12 @@ #!/usr/bin/env bash -curl -s https://brave-browser-apt-nightly.s3.brave.com/brave-core-nightly.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-nightly.gpg add - -#source /etc/os-release UBUNTU_CODENAME=bionic +URL="brave-browser-apt-nightly.s3.brave.com" -echo "deb [arch=amd64] https://brave-browser-apt-nightly.s3.brave.com/ $UBUNTU_CODENAME main" | sudo tee /etc/apt/sources.list-available/brave-browser-nightly-${UBUNTU_CODENAME}.list +curl -s https://${URL}/brave-core-nightly.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-nightly.gpg add - + + +echo "deb [arch=amd64] https://${URL}/ $UBUNTU_CODENAME main" | sudo tee /etc/apt/sources.list-available/brave-browser-nightly-${UBUNTU_CODENAME}.list sudo ln -s /etc/apt/sources.list-available/brave-browser-nightly-${UBUNTU_CODENAME}.list /etc/apt/sources.list.d/brave-browser-nightly-${UBUNTU_CODENAME}.list @@ -15,3 +17,10 @@ sudo apt install brave-browser-nightly echo 'kernel.unprivileged_userns_clone=1' > /etc/sysctl.d/00-local-userns.conf service procps restart +# Bypass apt-proxy for brave packages +if [ ! -f /etc/apt/apt.conf.d/02proxy ]; then + mkdir /etc/apt/apt.conf.d/02proxy + if [ ! -z $(grep ${URL}) ]; then + echo "Acquire::http::Proxy { ${URL} DIRECT; };" >> /etc/apt/apt.conf.d/02proxy + fi +fi diff --git a/020_brave_browser.sh b/020_brave_browser.sh index 0fee67b..7b3ed8f 100755 --- a/020_brave_browser.sh +++ b/020_brave_browser.sh @@ -1,9 +1,11 @@ #!/usr/bin/env bash -UBUNTU_CODENAME=bionic -echo ${RELEASE} -curl -s https://brave-browser-apt-release.s3.brave.com/brave-core.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-release.gpg add - -echo "deb [arch=amd64] https://brave-browser-apt-release.s3.brave.com ${UBUNTU_CODENAME} main" >> /etc/apt/sources.list-available/brave-browser.list +UBUNTU_CODENAME=bionic +URL="brave-browser-apt-release.s3.brave.com" + +curl -s https://${URL}/brave-core.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-release.gpg add - + +echo "deb [arch=amd64] ${URL} ${UBUNTU_CODENAME} main" >> /etc/apt/sources.list-available/brave-browser.list sudo ln -sf /etc/apt/sources.list-available/brave-browser.list /etc/apt/sources.list.d/brave-browser.list @@ -14,3 +16,10 @@ sudo apt install -y brave-browser brave-keyring echo 'kernel.unprivileged_userns_clone=1' > /etc/sysctl.d/00-local-userns.conf service procps restart +# Bypass apt-proxy for brave packages +if [ ! -f /etc/apt/apt.conf.d/02proxy ]; then + mkdir /etc/apt/apt.conf.d/02proxy + if [ ! -z $(grep ${URL}) ]; then + echo "Acquire::http::Proxy { ${URL} DIRECT; };" >> /etc/apt/apt.conf.d/02proxy + fi +fi diff --git a/020_docker.sh b/020_docker.sh index c79ed78..1c907c1 100755 --- a/020_docker.sh +++ b/020_docker.sh @@ -1,18 +1,26 @@ #!/usr/bin/env bash -#!/usr/bin/env bash + +URL="download.docker.com" # Install docker set -x #echo '#bash -c "apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D"' > /etc/apt/sources.list.d/docker.list #echo "deb http://apt.dockerproject.org/repo debian-stretch main" >> /etc/apt/sources.list.d/docker.list -echo '#bash -c "curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -"' > /etc/apt/sources.list-available/docker.list -echo "deb [arch=amd64] https://download.docker.com/linux/debian buster stable" >> /etc/apt/sources.list-available/docker.list +echo '#bash -c "curl -fsSL https://${URL}/linux/debian/gpg | apt-key add -"' > /etc/apt/sources.list-available/docker.list +echo "deb [arch=amd64] https://${URL}/linux/debian buster stable" >> /etc/apt/sources.list-available/docker.list ln -sf /etc/apt/sources.list-available/docker.list /etc/apt/sources.list.d/docker.list #bash -c "apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D" -bash -c "curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -" +bash -c "curl -fsSL https://${url}/linux/debian/gpg | apt-key add -" +# Bypass apt-proxy for brave packages +if [ ! -f /etc/apt/apt.conf.d/02proxy ]; then + mkdir /etc/apt/apt.conf.d/02proxy + if [ ! -z $(grep ${URL}) ]; then + echo "Acquire::http::Proxy { ${URL} DIRECT; };" >> /etc/apt/apt.conf.d/02proxy + fi +fi apt-get update apt-get -y install -q --no-install-recommends curl ca-certificates diff --git a/020_git-lfs.sh b/020_git-lfs.sh index a7d9e54..f083841 100755 --- a/020_git-lfs.sh +++ b/020_git-lfs.sh @@ -7,21 +7,19 @@ set -x #dist=$(lsb_release -c | cut -f2) dist=$(cat /etc/devuan_version | awk -F '/' {'print $1'}) -if [ "$dist" == 'jessie' ] -then +if [ "$dist" == 'jessie' ]; then DIST='jessie' -elif [ "$dist" == 'ascii' ] -then +elif [ "$dist" == 'ascii' ]; then DIST='stretch' -elif [ "$dist" == 'beowulf' ] -then +elif [ "$dist" == 'beowulf' ]; then DIST='buster' +elif [ "$dist" == 'chimaera' ]; then + DIST= 'bullseye' else [ "$dist" == 'ceres' ] DIST='sid' fi -# FIXME: buster version no yet available -DIST='stretch' +#DIST='stretch' OS=debian DEST=/etc/apt/sources.list-available @@ -51,32 +49,3 @@ apt-get -f install -y echo "See: http://github.com/git-lfs/git-lfs/wiki/Tutorial" -echo "Per user: - git lfs install" -echo "Per repo: - git lfs install --local" -echo "Use --skip-smudge to prevent automatic download on clone/pull" -echo "Add pattern to track with:" -echo " git lfs track '*.tar.xz'" -echo "and add the resulting .gitattribute to the repo with:" -echo " git add .gitattrubute" -echo "To see the LFS url:" -echo " git lfs env | grep 'Endpoint='" -echo "To set it:" -echo " git config -f .lfsconfig lfs.url https://my_other_server.example.com/foo/bar/info/lfs'" -echo " git add .lfsconfig" -echo "For servers see:" -echo " https://docs.gitlab.com/ce/workflow/lfs/manage_large_binaries_with_git_lfs.html" -echo " https://about.gitlab.com/2017/01/30/getting-started-with-git-lfs-tutorial/" -echo "Migration:" -echo "Rewrite e.g. all *.mp4 video files on the current branch that are not present on a remote:" -echo ' git lfs migrate import --include="*.tar.xz"' -echo "rewrite all *.mp4 video files on a given branch(es) regardless of whether they are present on a remote (may require a force-push):" -echo " "git lfs migrate import --include="*.mp4" --include-ref=refs/heads/master --include-ref=refs/heads/my-feature" -echo "Fast checkout procedure:" -echo "Checkout without tracked file downloads" -echo " GIT_LFS_SKIP_SMUDGE=1 git clone https://github.com/username/my_lfs_repo.git destination_dir" -echo " #git lfs ls-files # optionally see all the - showing the lfs files are not checked out" -echo "Pull to download the track files:." -echo " git lfs pull" -echo " #git lfs ls-files # optionally see all the * showing the lfs files are checked out" diff --git a/020_mutt-khard.sh b/020_mutt-khard.sh index b0e6ea7..eac6329 100755 --- a/020_mutt-khard.sh +++ b/020_mutt-khard.sh @@ -37,7 +37,7 @@ mkdir -p /etc/skel/.contacts/friends/ mkdir -/etc/skel/.contacts/business/ # /usr/share/doc/khard/examples/khard/khard.conf.example -/etc/skel/.config/khard/khard.conf <<'EOF' +cat >/etc/skel/.config/khard/khard.conf <<'EOF' [addressbooks] [[family]] path = ~/.contacts/family/ diff --git a/020_nanorc.sh b/020_nanorc.sh index 8d0d709..a7da37e 100755 --- a/020_nanorc.sh +++ b/020_nanorc.sh @@ -3,7 +3,7 @@ apt-get install -y nano #apt-get install -y checkinstall -LATEST_URL=http://github.com/scopatz/nanorc.git +LATEST_URL=https://github.com/scopatz/nanorc.git DIR_NAME=nano-syntax-highlighting/ install_path=/usr/share/${DIR_NAME} mkdir -p $install_path diff --git a/020_neovim-coc.sh b/020_neovim-coc.sh new file mode 100644 index 0000000..73612ee --- /dev/null +++ b/020_neovim-coc.sh @@ -0,0 +1,123 @@ +# Coc is an intellisense engine for Vim/Neovim. + +https://github.com/neoclide/coc.nvim +https://github.com/neoclide/coc-snippets +https://github.com/neoclide/coc-python +https://github.com/neoclide/coc-rls + +https://github.com/rcjsuen/dockerfile-language-server-nodejs +https://github.com/mads-hartmann/bash-language-server +https://github.com/palantir/python-language-server + +# https://github.com/golang/tools/tree/master/gopls + +cat > ${LANGSERVER_CONF} < ${LANGSERVER_CONF} < ${LANGSERVER_CONF} < ${LANGSERVER_CONF} < ${DEST}/.config/tmux/default.sh << 'EOF' # Default Theme TMUX_POWERLINE_SEPARATOR_LEFT_BOLD="" diff --git a/020_vim.sh b/020_vim.sh index 66fc8fb..6ab5c22 100755 --- a/020_vim.sh +++ b/020_vim.sh @@ -84,7 +84,7 @@ endif EOF # Xresources-hybrid-reduced-contrast -cat > $HOME/.Xresources << 'EOF' +cat > ${DEST}/.Xresources << 'EOF' ! Hybrid Terminal Colours. Uses the palette from Tomorrow-Night: ! https://github.com/chriskempson/tomorrow-theme/blob/master/vim/colors/Tomorrow-Night.vim ! and the reduced contrast background color from Codecademy's online editor: @@ -119,16 +119,16 @@ cat > $HOME/.Xresources << 'EOF' *color15: #C5C8C6 EOF -cd $HOME || exit +cd ${DEST} || exit apt-get install -y git -git clone https://github.com/VundleVim/Vundle.vim.git $HOME/.vim/bundle/Vundle.vim +git clone https://github.com/VundleVim/Vundle.vim.git ${DEST}/.vim/bundle/Vundle.vim # Prepend to the .vimrc -rm $HOME/.vimrc_pending -touch $HOME/.vimrc_pending +rm ${DEST}/.vimrc_pending +touch ${DEST}/.vimrc_pending -cat > $HOME/.vimrc_pending << 'EOF' +cat > $DEST/.vimrc_pending << 'EOF' set nocompatible " be iMproved, required filetype off " required @@ -350,8 +350,9 @@ au BufRead,BufNewFile *.py,*.pyw,*.c,*.h match BadWhitespace /\s\+$/lib " toggle between all lines folded and no lines folded. :nnoremap &foldlevel ? 'zM' :'zR' - EOF + + cat ${DEST}/.vimrc_pending # append the existing vimrc to the plugin additions @@ -359,7 +360,7 @@ cat ${DEST}/.vimrc >> ${DEST}/.vimrc_pending # copy it back to the vimrc cp ${DEST}/.vimrc_pending ${DEST}/.vimrc -#mv $HOME/.vimrc_pending $HOME/.vimrc +#mv ${DEST}/.vimrc_pending ${DEST}/.vimrc cat ${DEST}/.vimrc vim +PluginInstall +qall diff --git a/020_zsh_quickstart.sh b/020_zsh_quickstart.sh index a3958f6..ad63704 100755 --- a/020_zsh_quickstart.sh +++ b/020_zsh_quickstart.sh @@ -23,13 +23,13 @@ chmod g-w /usr/local/share/zsh/site-functions cd ~ || exit chsh -s "$(which zsh)" "${USER}" -DEST=$HOME +#DEST=$HOME DEST=/etc/skel apt-get install -y git # Install zgen plugin manager and zsh quicktart to get a default setup for zsh -git clone http://github.com/tarjoilija/zgen # available with apt-get install zgen which installs to /usr/share/zgen -git clone http://github.com/unixorn/zsh-quickstart-kit +git clone https://github.com/tarjoilija/zgen ${DEST}/zgen # available with apt-get install zgen which installs to /usr/share/zgen +git clone https://github.com/unixorn/zsh-quickstart-kit ${DEST}/zsh-quickstart-kit mkdir -p ${DEST}/.zgen/robbyrussell/ git clone http://github.com/ohmyzsh/ohmyzsh ${DEST}/.zgen/robbyrussell/ohmyzsh @@ -39,6 +39,8 @@ ln -rsf ${DEST}/zsh-quickstart-kit/zsh/.zsh_aliases ${DEST}/.zsh_aliases ln -rsf ${DEST}/zsh-quickstart-kit/zsh/.zgen-setup ${DEST}/.zgen-setup #ln -rsf ~/zsh-quickstart-kit/zsh/.zsh_completions ~/.zsh_completions mkdir -p ${DEST}/.zshrc.d + +touch ${DEST}/.zshrc echo "setopt PROMPT_SUBST" >> ${DEST}/.zshrc