commit 3571e9aafb872449623e4343753dcd91ce3abd29 Author: Thomas Schwery Date: Fri Aug 9 16:24:04 2019 +0200 Initial import diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..87beb32 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,51 @@ +FROM debian:10 + +# Install deps +RUN apt-get update -q && \ + apt-get install --no-install-recommends --no-upgrade -qqy \ + cmake build-essential g++ \ + libcurl4 libcurl4-gnutls-dev libboost-dev libboost-test-dev \ + libboost-filesystem-dev libboost-regex-dev git autoconf libtool automake \ + flex bison liboce-foundation-dev liboce-ocaf-dev\ + ca-certificates libssl-dev ccache \ + curl wget && \ + apt-get clean && \ + apt-get purge && \ + rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + +# Compile and install libngspice +RUN git clone git://git.code.sf.net/p/ngspice/ngspice && \ + cd ngspice && \ + git checkout 99a20162d5038a328d335d11da69c9eee0549fdc && \ + ./autogen.sh && \ + ./configure --with-ngshared --enable-xspice --enable-cider --enable-openmp && \ + make && \ + make install && \ + cd .. && \ + rm -rf ngspice /tmp/* /var/tmp/* + +# Download and install linuxdeploy tool +RUN curl -O -J -L https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage && \ + chmod +x linuxdeploy-x86_64.AppImage && \ + ./linuxdeploy-x86_64.AppImage --appimage-extract && \ + mv squashfs-root /usr/lib/linuxdeploy && \ + ln -s /usr/lib/linuxdeploy/AppRun /bin/linuxdeploy && \ + chmod -R 775 /usr/lib/linuxdeploy/ && \ + curl -O -J -L https://raw.githubusercontent.com/TheAssassin/linuxdeploy-plugin-conda/master/linuxdeploy-plugin-conda.sh && \ + mkdir -p /usr/lib/linuxdeploy/plugins/linuxdeploy-plugin-conda && \ + mv linuxdeploy-plugin-conda.sh /usr/lib/linuxdeploy/plugins/linuxdeploy-plugin-conda/ && \ + chmod +x /usr/lib/linuxdeploy/plugins/linuxdeploy-plugin-conda/linuxdeploy-plugin-conda.sh && \ + ln -s /usr/lib/linuxdeploy/plugins/linuxdeploy-plugin-conda/linuxdeploy-plugin-conda.sh /usr/lib/linuxdeploy/usr/bin/linuxdeploy-plugin-conda && \ + rm -rf *.AppImage /tmp/* /var/tmp/* + +# Install kicad deps +RUN apt-get update -q && \ + apt-get install --no-upgrade -qqy \ + libglew-dev libglm-dev swig \ + libcairo2-dev doxygen graphviz \ + python3-wxgtk4.0 \ + libwxgtk3.0-dev libwxgtk3.0-gtk3-dev python3 python3-dev \ + curl wget && \ + apt-get clean && \ + apt-get purge && \ + rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* diff --git a/build-docker.sh b/build-docker.sh new file mode 100755 index 0000000..c5b2e13 --- /dev/null +++ b/build-docker.sh @@ -0,0 +1,25 @@ +cd $(dirname $0) + +rm -rf build +mkdir build +cd build +cmake -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/usr -DKICAD_SCRIPTING_PYTHON3=on -DKICAD_SCRIPTING_WXPYTHON_PHOENIX=on ../ +make -j$(nproc) --output-sync + +make install DESTDIR=AppDir + +cp -r /usr/lib/python2.7/dist-packages/wx-3.0-gtk2 AppDir/usr/lib/python2.7/dist-packages/ +cp /usr/lib/python2.7/dist-packages/wxPython_common-3.0.2.0.egg-info AppDir/usr/lib/python2.7/dist-packages/ +mkdir -p AppDir/usr/lib/wx/python/ +cp /usr/lib/wx/python/wx3.0.pth AppDir/usr/lib/wx/python/ +cp -r /usr/share/wx-3.0-gtk/ AppDir/usr/share/ + +mv AppDir/usr/bin/kicad AppDir/usr/bin/kicad_bin + +echo -ne '#!/bin/sh\nHERE="$(dirname "$(readlink -f "${0}")")/../../"\nexport PYTHON_PATH="${HERE}"/usr/lib/python2.7:${PYTHON_PATH}\nexec "${HERE}/usr/bin/kicad_bin" "$@"\n' > AppDir/usr/bin/kicad + +chmod +x AppDir/usr/bin/kicad + +LD_LIBRARY_PATH=$(pwd)/AppDir/usr/lib/x86_64-linux-gnu/ linuxdeploy --appdir AppDir -d $(pwd)/AppDir/usr/share/applications/kicad.desktop --output appimage +mv KiCad*.AppImage ../KiCad-$(git describe).AppImage +mv KiCad*.AppImage.zsync ../KiCad-$(git describe).AppImage.zsync