Git Product home page Git Product logo

setup's Introduction

Setup a New Machine without sudo!

Download, compile and install commonly used software to a custom path.

Term of Usage

  • Star the repo before clone
  • File issue if it does not work
  • Unstar if you feel it is unmaintained

Usage

# configure setup path, you can put them into your `.bashrc` or `.zshrc`
export ZZROOT=$HOME/app
export PATH=$ZZROOT/bin:$PATH
export LD_LIBRARY_PATH=$ZZROOT/lib:$ZZROOT/lib64:$LD_LIBRARY_PATH

# e.g. install git
sh zzgit.sh

NOTE: If the download speed of the machine is too slow, you can put the git.tar.gz (using git as an example) into $ZZROOT/downloads before running the script. For the download link, check the DOWNLOADURL variable in its script; for the exact name of the software, check the NAME variable.

NOTE2: If you compile from source, please make sure that they are compiled using the same gcc version!

NOTE3: If you DO have root privilate on your machine/server, then basic tools such as libtool, ccache, git, etc. might be better installed by OS's package manager. Such as apt in Ubuntu. Only install software that are not available on the OS's packaging system.

Supported Softwares

Verified on Ubuntu 18.04

Updated: July 8, 2020

libs

tools

zz scripts & customized tools

zz configures

misc

faq

  • Q: My boost segfaluts :(
    A: Make sure they the boost are comipiled and linked using the same gcc/g++ version

  • Q: Cert verify failed: BADCERT_NOT_TRUSTED :(
    A: Try export SSL_CERT_DIR=/etc/ssl/certs

  • Q: warning: templates not found in /workspace/destdir/share/git-core/templates :(
    A: Add the following to $HOME/.gitconfig

[init]
        templatedir = $HOME/app/share/git-core/templates
  • Q: fatal: unable to find remote helper for 'https' :(
    A: Add the following to $HOME/.zshrc (or .bashrc of course)
export GIT_EXEC_PATH=$ZZROOT/libexec/git-core
export GIT_SSL_CAINFO=/etc/ssl/certs/ca-bundle.crt
  • Q: Using the 'memory' GSettings backend. Your settings will not be saved or shared with other applications. :(
    A: Add the following to $HOME/.zshrc (or .bashrc of course)
export GIO_EXTRA_MODULES=/usr/lib/x86_64-linux-gnu/gio/modules/
  • Q: import pyvips segfault :(
    A: Make sure gstreamer-orc <0.4.30, imagemagick <7.0.9.
conda install -c conda-forge imagemagick=7.0.8
conda install -c conda-forge gstreamer-orc=0.4.29
  • Q: GitError(Code:ECERTIFICATE, Class:SSL, the SSL certificate is invalid: 0x08 - The certificate is not correctly signed by the trusted CA) :(
    A: Run the following
julia> import LibGit2
julia> LibGit2.set_ssl_cert_locations("/etc/ssl/certs/ca-certificates.crt")
  • Q: dotnet error :(
    A: Add the following to $HOME/.zshrc (or .bashrc of course)
export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true
export MSBuildSDKsPath=$DOTNET_ROOT/sdk/3.1.102/Sdks
  • Q: Install OpenCV: CUDA Version wrong:(
    A: Add the path of the correct version CUDA to zzopencv.sh when runing cmake
cmake   ......
        -DCUDA_TOOLKIT_ROOT_DIR=/mnt/lustre/share/cuda-9.0/ \
        ......
  • Q: Install Denseflow: OpenCV Version wrong, can't find customized path for opencv:(
    A: Add the path of the correct version opencv and corresponding cuda version to zzdenseflow.sh when runing cmake
cmake -DCMAKE_INSTALL_PREFIX=$ROOTDIR \
      -DOpenCV_DIR=$ROOT_DIR/lib64/cmake/opencv4 \
      -gencode=arch=compute_61,code=sm_61 \
      -DCUDA_TOOLKIT_ROOT_DIR=/mnt/lustre/share/cuda-9.0/ ..
  • Q: Unzip filenames looks messy when there are unicodes :(
    A: Specify the encoding of filenames.
$ unzip -h
UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.
  ...
  -O CHARSET  specify a character encoding for DOS, Windows and OS/2 archives
  -I CHARSET  specify a character encoding for UNIX and other archives
  ...

unzip -O GB18030 gb18030.zip -d target_dir
  • Q: Get locale warnings :(
    A: Run
export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
locale-gen en_US.UTF-8
sudo dpkg-reconfigure locales

jlinstall

jlinstall is another way to install softwares. It uses pre-built binaries so that no compilation is needed. The default install path of jlinstall is JLROOT=$ZZROOT/jl.

export ZZROOT=$HOME/app
export JLROOT=$ZZROOT/jl
export PATH=$ZZROOT/bin:$JLROOT/bin:$PATH
export LD_LIBRARY_PATH=$ZZROOT/lib:$ZZROOT/lib64:$JLROOT/lib:$JLROOT/lib64:$LD_LIBRARY_PATH

setup's People

Contributors

congee524 avatar dreamerlin avatar innerlee avatar joannalxy avatar shoufachen avatar sunnyxiaohu avatar wenduzk avatar wwdok avatar xenonpdash avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.