Update to CentOS 7, Add AppImage CI
This commit is contained in:
parent
b9f1ebd439
commit
98cd88f12c
|
|
@ -0,0 +1,28 @@
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- "*"
|
||||||
|
|
||||||
|
name: CI
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build_appimage:
|
||||||
|
name: Build AppImage
|
||||||
|
runs-on: ubuntu-20.04
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: Get the version
|
||||||
|
id: get_version
|
||||||
|
run: |
|
||||||
|
export VERSION_NUM=$(ruby -e "print '$GITHUB_REF'.split('/')[2]")
|
||||||
|
echo ::set-output name=value::${VERSION_NUM}
|
||||||
|
- name: Build project
|
||||||
|
run: |
|
||||||
|
cd appimage
|
||||||
|
make
|
||||||
|
cp Magic-x86_64.AppImage /tmp/Magic-${{ steps.get_version.outputs.value }}-x86_64.AppImage
|
||||||
|
- name: Upload Release Asset
|
||||||
|
uses: softprops/action-gh-release@v1
|
||||||
|
with:
|
||||||
|
files: /tmp/Magic-${{ steps.get_version.outputs.value }}-x86_64.AppImage
|
||||||
|
|
@ -1,11 +1,16 @@
|
||||||
FROM donnio/python3:centos6
|
FROM centos/python-38-centos7:20210726-fad62e9
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
# Build Dependencies
|
||||||
|
RUN yum install -y cairo-devel freeglut-devel gcc make tcsh
|
||||||
|
|
||||||
# Tcl/Tk
|
# Tcl/Tk
|
||||||
WORKDIR /tcl
|
WORKDIR /tcl
|
||||||
RUN curl -L https://prdownloads.sourceforge.net/tcl/tcl8.6.12-src.tar.gz | tar --strip-components=1 -xzC . \
|
RUN curl -L https://prdownloads.sourceforge.net/tcl/tcl8.6.12-src.tar.gz | tar --strip-components=1 -xzC . \
|
||||||
&& cd unix \
|
&& cd unix \
|
||||||
&& ./configure --prefix=/prefix \
|
&& ./configure --prefix=/prefix \
|
||||||
&& make -j$(nproc) \
|
&& make \
|
||||||
&& make install
|
&& make install
|
||||||
|
|
||||||
WORKDIR /tk
|
WORKDIR /tk
|
||||||
|
|
@ -19,9 +24,6 @@ WORKDIR /prefix/bin
|
||||||
RUN cp ./wish8.6 ./wish
|
RUN cp ./wish8.6 ./wish
|
||||||
RUN cp ./tclsh8.6 ./tclsh
|
RUN cp ./tclsh8.6 ./tclsh
|
||||||
|
|
||||||
# Cairo
|
|
||||||
RUN yum install -y cairo-devel
|
|
||||||
|
|
||||||
# Magic
|
# Magic
|
||||||
WORKDIR /magic
|
WORKDIR /magic
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
@ -30,6 +32,7 @@ RUN ./configure \
|
||||||
--prefix=/prefix \
|
--prefix=/prefix \
|
||||||
--with-tcl=/prefix/lib \
|
--with-tcl=/prefix/lib \
|
||||||
--with-tk=/prefix/lib \
|
--with-tk=/prefix/lib \
|
||||||
|
--without-opengl \
|
||||||
&& make clean \
|
&& make clean \
|
||||||
&& make database/database.h \
|
&& make database/database.h \
|
||||||
&& make -j$(nproc) \
|
&& make -j$(nproc) \
|
||||||
|
|
|
||||||
|
|
@ -2,13 +2,13 @@ This is an AppImage that runs on all GNU/Linux platforms with:
|
||||||
|
|
||||||
* FUSE
|
* FUSE
|
||||||
* This excludes non-privileged Docker containers unfortunately, unless pre-extracted.
|
* This excludes non-privileged Docker containers unfortunately, unless pre-extracted.
|
||||||
* GLIBC 2.3+
|
* GLIBC 2.17+
|
||||||
* Cairo 1.8+
|
* Cairo 1.8+
|
||||||
|
|
||||||
That's most Linux distributions released in 2012 or later.
|
That's most Linux distributions released in 2016 or later.
|
||||||
|
|
||||||
# Build Info
|
# Build Info
|
||||||
A Dockerfile on CentOS 6 (needed for older glibc) image builds Tcl, Tk and Magic.
|
A Dockerfile on CentOS 7 (needed for older glibc) image builds Tcl, Tk and Magic.
|
||||||
|
|
||||||
The final build is then packaged into an AppImage using AppImageTool on the host machine.
|
The final build is then packaged into an AppImage using AppImageTool on the host machine.
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue