From e389ffb6f2d70eb18185dd774f5e76a8e4605a1d Mon Sep 17 00:00:00 2001 From: Robert Krajewski Date: Sun, 3 Feb 2019 18:22:22 +0100 Subject: [PATCH] Add scripts to create linux appimage in docker --- linux/Dockerfile | 10 ++++++++++ linux/create_appimage.sh | 12 ++++++++++++ linux/run.bat | 2 ++ linux/run.sh | 2 ++ linux/sync-my-L2P.png | Bin 0 -> 18866 bytes 5 files changed, 26 insertions(+) create mode 100644 linux/Dockerfile create mode 100644 linux/create_appimage.sh create mode 100644 linux/run.bat create mode 100644 linux/run.sh create mode 100644 linux/sync-my-L2P.png diff --git a/linux/Dockerfile b/linux/Dockerfile new file mode 100644 index 0000000..494615c --- /dev/null +++ b/linux/Dockerfile @@ -0,0 +1,10 @@ +FROM ubuntu:16.04 + +RUN apt-get update && apt-get install -y qt5-default qt5-qmake libssl-dev git build-essential qttools5-dev-tools +RUN mkdir /work +WORKDIR /work +COPY . /work +RUN mkdir /res +RUN qmake DESTDIR=/res -o syncmyl2p.mk +RUN make -f syncmyl2p.mk +RUN linux/create_appimage.sh \ No newline at end of file diff --git a/linux/create_appimage.sh b/linux/create_appimage.sh new file mode 100644 index 0000000..9f14cb8 --- /dev/null +++ b/linux/create_appimage.sh @@ -0,0 +1,12 @@ +cd linux +apt-get install -y wget file +wget https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage +wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu52_52.1-3ubuntu0.8_amd64.deb +dpkg -i libicu52_52.1-3ubuntu0.8_amd64.deb +chmod a+x ./linuxdeployqt-continuous-x86_64.AppImage +./linuxdeployqt-continuous-x86_64.AppImage --appimage-extract +export PATH=/work/linux/squashfs-root/usr/bin/:$PATH +mkdir -p usr/bin +cp ../bin/Sync-my-L2P ./usr/bin/Sync-my-L2P +squashfs-root/AppRun ./usr/bin/Sync-my-L2P -verbose=1 -appimage + diff --git a/linux/run.bat b/linux/run.bat new file mode 100644 index 0000000..1785627 --- /dev/null +++ b/linux/run.bat @@ -0,0 +1,2 @@ +docker build -t syncmyl2p -f linux/Dockerfile . +docker run -it --rm -v %cd%:/trans syncmyl2p sh -c "mv /work/linux/Sync*.AppImage /trans/" \ No newline at end of file diff --git a/linux/run.sh b/linux/run.sh new file mode 100644 index 0000000..a0a22f4 --- /dev/null +++ b/linux/run.sh @@ -0,0 +1,2 @@ +docker build -t syncmyl2p -f linux/Dockerfile . +docker run -it --rm -v %cd%:/trans syncmyl2p bash \ No newline at end of file diff --git a/linux/sync-my-L2P.png b/linux/sync-my-L2P.png new file mode 100644 index 0000000000000000000000000000000000000000..a044f605edd0c360955ca85796a38fa5c817a9e9 GIT binary patch literal 18866 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

9pFEo^=Tli)>^0qf zzsifEN{np`al=5vjD{ICB5^89C<&+xqqGsar=*yYVnQaa@WjMn5zmogLM_wSC`L+Z z=VG9OqGm?TylX-_OWdTXX^L*Qo}cU0*B&oJ2lu(oeOf6$d22*P= zO4 z)K;TTpg=7V6-tVV+*Hs$w&T)sq$n9ErM;K5or|O2z_ifczNaICGh|$v*rv$yX1>>H z7JETXp53vX6qXdxCIBcVEktW@R~Kl-U=Wt6gOmZXZ!W>Uo?XC&&Et6acO;iL17!PF z^CDU1++tX%l3^i`wpOz4X4>vKPhug40d*6Yeg=Dbea9?zM2kH4d7is8OPw+7H9BiN z#jmW_aeZz z?;V&BthGMPGMD6?X8)oMXV(WDDsP#E%q2k~BHk5uGv-$Xf{Hpts64cvFb;K@Fxotf zp3Pp&dca@80CyQ|O%5z{Ob-cb;{>gKr>$dLXR85wD*^-{VQ|;Ns26*2Yee&17L#T! z%QBbR#1nBKAP^7$c#gzy#BdtmETdtKt5sXipVf#4K~RaHN(5yhC`C{OK_%^KXP|EH zX;{%%Mx!ClO@L$FWrD!7N1|Yp)F)}`m-~qyj>j|_mx*PjO9O+m0+dUByj@GE@uIbe zWQozWE-7HwaQio>moEa`xtd@ySzhcIZiv*&p7{rSk{D1X)=Ph>%z`?pu&bR3^$>F% zk|a%nwKiD8o+%Qac=yp$iw4XQ4cNdL1ILQSDjHEViK0#fbqJ`uN9jGv5Ktw8I*AO@ zSdD}?298Z!^~`Z@Qh18b199{ia*G0qF+NF?&?}N4!C_~oHim?CR$I~*o3vHPdpX1e zC53vhxWK}OvDh^P_bf6?_o!#*MI*s4 z9YCCub&u#VtRHRp80uvuA~nW}wN^li!Pv85ZXJPpKrXG=!^~Yg(*raXwGvo6xdKVj z$Dv!y<%<9ZPZ-#w=oo@1t19C9k4aOPaLOK2%sO@$1Ii3|S~*r9C`+x_Bnj3efhh)D zs0|+j(AK>wGnXnWPn$N4*_nvfMy$UOc&6E0H+GyUK0QWqX-6ZE^gho zEu%>b-9jxBL_Y=zGpVsgL{-bulbNLmaH|3kl!#+=piLy%jTI@>0}3#*gn&HH&{UT( z1Kjvcgsh*W>Jenu<)<`rgv<&u!MLPnQ!K{@C^sO9g_vN&YK+lcWvZ>qYp|J0V0!s*t zn0HSAD0-AYBzpu6011IZ{F{m5bVM-Bu*Sd^1?<_gNY9={S`_gdGb~YT1u(nkQ|5{v zQ{sEdCG7-ek19$kO2ULBYt6^4Z%k&s5ZRwr} z7#eE?2rxu2USXMF8^9)n#29Fr0!b1JJ&3@@ASFW5P`uV-ml+HIBLV{gOIr*C29v~y z-^|r3svIP+1kWI*rEa20i~+#SI+D#qVXFXM0vav13IR%01E6e549DSeWdOw-0*ZxE z*$8E%$SiBs=q_~VrQiIMmBLtQtI(w)Q`nwP>TPNoXM6}INH7U3aZI~r6&NKL2y9?j zYhsaa?D_^9fW#6K0OA;$wBAP5Jq92`;ut9tQYIu0NH~5!OMoE*;{{d)RtZL1hJZ$f zP=G@a6GGs+5f(LAolj)u;9`Qx%=x7ZK!_B2X^NO3AR&+j#c-lPkZp`k`pZ`YeCUEh zzq`3T38F#Cv>p&qCAp;DewXmNCj&)e^M|=^B6IyY>`cW3SKG!lHi#G%v5H8D_O~-i zk>DDT2#|;%X#!Frq#j5EA!9=B7&$WvW8z>&;TSm+@<7Nu;yq13DiY_?fP?_szDImN zfl`CQz0TWKVv7sv@<=1c>%CU2C3RJ$bva4TY>B<*;2bhzgCd%jGHWCu|0OkvViY7HaMy?#mYz;e zLWz|F&*DSxsxMy=003t`w(elg?hK|pSHv8tpz^6jGf>_0iHkrT5UKz_bO^`RdXnYy zII~&Xax%`!s?2KVQYRrrg!)uk*cL&iK&FH&0J#TpCFB}V_<)WJ=nA2ugzlw7D8A+c zIvP+Y#d|}%KT{wRK}HncO9b(~fh33~jdw{^mg(l8OviOXHym5=69=yn)4qaU(r}7+ z4+Hje0LqP+js>6IXmn>(or6FB+~pn)R(#~Q*DKq3{_JLrUdm)l6a#?nhDlqgNKrr7 z?Z72t2S4@fJB5{NuUOTm&%sP4lXNl}=XG7@;x!eOR0%0AA--1>A}9i(5J4wMT;Vz! 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%0AM!i*2z3r&puBqN}RBgv|)x`?c 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 literal 0 HcmV?d00001