kopia lustrzana https://gitlab.com/gridtracker.org/gridtracker
Merge branch 'fix-rpmbuild' into 'master'
Fixes some issues with CICD builds See merge request gridtracker.org/gridtracker!67merge-requests/69/head
commit
2ea7cc393a
170
.gitlab-ci.yml
170
.gitlab-ci.yml
|
@ -18,6 +18,8 @@ variables:
|
||||||
AWS_DEFAULT_REGION: ""
|
AWS_DEFAULT_REGION: ""
|
||||||
AWS_RELEASE_DEPLOY_PATH: s3://download.gridtracker.org/release/$CI_COMMIT_TAG
|
AWS_RELEASE_DEPLOY_PATH: s3://download.gridtracker.org/release/$CI_COMMIT_TAG
|
||||||
AWS_TESTING_DEPLOY_PATH: s3://download.gridtracker.org/testing/$CI_COMMIT_TAG
|
AWS_TESTING_DEPLOY_PATH: s3://download.gridtracker.org/testing/$CI_COMMIT_TAG
|
||||||
|
NR0Q_SERVER_ADDRESS: ""
|
||||||
|
NR0Q_SERVER_PASSWORD: ""
|
||||||
|
|
||||||
# nothing in this file ill be allowed to run automatically except for:
|
# nothing in this file ill be allowed to run automatically except for:
|
||||||
# 1. merge requests
|
# 1. merge requests
|
||||||
|
@ -53,8 +55,7 @@ npm_test:
|
||||||
|
|
||||||
|
|
||||||
# package binaries and create build artifacts that may be used in later stages
|
# package binaries and create build artifacts that may be used in later stages
|
||||||
|
intel-packaging:
|
||||||
packaging:
|
|
||||||
stage: package
|
stage: package
|
||||||
rules:
|
rules:
|
||||||
# only do this with a manual tag starting with v or test_
|
# only do this with a manual tag starting with v or test_
|
||||||
|
@ -74,38 +75,173 @@ packaging:
|
||||||
script:
|
script:
|
||||||
- |
|
- |
|
||||||
mkdir -p $APT_CACHE_DIR $NPM_CONFIG_CACHE
|
mkdir -p $APT_CACHE_DIR $NPM_CONFIG_CACHE
|
||||||
mkdir -p artifacts/{debian,rpm}
|
mkdir -p artifacts/rpm
|
||||||
dpkg --add-architecture i386
|
dpkg --add-architecture i386
|
||||||
- |
|
- |
|
||||||
echo -e "\e[0Ksection_start:`date +%s`:apt_get[collapsed=true]\r\e[0KGetting Build Dependencies"
|
echo -e "\e[0Ksection_start:`date +%s`:apt_get[collapsed=true]\r\e[0KGetting Build Dependencies"
|
||||||
apt-get -qq update
|
apt-get -qq update
|
||||||
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y npm wine wine32
|
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y npm wine wine32
|
||||||
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y build-essential devscripts
|
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y build-essential devscripts
|
||||||
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y rpm
|
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y rpm zip wget
|
||||||
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" build-dep .
|
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" build-dep .
|
||||||
echo -e "\e[0Ksection_end:`date +%s`:apt_get\r\e[0K"
|
echo -e "\e[0Ksection_end:`date +%s`:apt_get\r\e[0K"
|
||||||
- test `node version.js` = `dpkg-parsechangelog -S version` || (echo "package.nw/package.json and debian/changelog version mismatch"; exit 1)
|
- test `node version.js` = `dpkg-parsechangelog -S version` || (echo "package.nw/package.json and debian/changelog version mismatch"; exit 1)
|
||||||
|
# Making our Windows, MacOS and distro agnostic Linux packages
|
||||||
- |
|
- |
|
||||||
echo -e "\e[0Ksection_start:`date +%s`:native_build\r\e[0KBuilding native packages"
|
echo -e "\e[0Ksection_start:`date +%s`:native_build\r\e[0KBuilding native packages"
|
||||||
npm install --prefer-offline
|
npm install --prefer-offline
|
||||||
npm run dist
|
npm run dist
|
||||||
for dir in dist/*-linux-* ; do if [ -d $dir ] ; then tar -C dist -cjf ${dir}.tar.bz `basename $dir` ; fi ; done
|
chmod 755 dist/*-linux-*/GridTracker dist/*-linux-*/lib dist/*-linux-*/locales dist/*-linux-*/swiftshader/
|
||||||
echo `pwd`
|
for dir in dist/*-linux-* ; do
|
||||||
(cd dist ; mv *.exe *-mac-x64.zip *.tar.bz ../artifacts)
|
if [ -d $dir ] ; then
|
||||||
|
cp package.nw/img/gridtracker.png $dir/
|
||||||
|
tar -C dist -czf ${dir}.tar.gz `basename $dir`
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
(cd dist ; mv *.exe *-mac-x64.zip *.tar.gz ../artifacts)
|
||||||
echo -e "\e[0Ksection_end:`date +%s`:native_build\e[0K"
|
echo -e "\e[0Ksection_end:`date +%s`:native_build\e[0K"
|
||||||
- |
|
# This section handles making RPMs for Fedora/CentOS/RHEL
|
||||||
echo -e "\e[0Ksection_start:`date +%s`:debian_build\r\e[0KBuilding Debian packages"
|
|
||||||
echo `pwd`
|
|
||||||
dpkg-buildpackage -uc -us
|
|
||||||
echo `pwd`
|
|
||||||
mv ../*.{deb,dsc,buildinfo,tar.xz,changes} artifacts/debian/
|
|
||||||
echo -e "\e[0Ksection_end:`date +%s`:debian_build\r\e[0K"
|
|
||||||
- |
|
- |
|
||||||
echo -e "\e[0Ksection_start:`date +%s`:rpm_build\r\e[0KBuilding RPM packages"
|
echo -e "\e[0Ksection_start:`date +%s`:rpm_build\r\e[0KBuilding RPM packages"
|
||||||
rpmbuild -D "version `node ./version.js`" --build-in-place -bb gridtracker.spec
|
# mkdir -p $HOME/rpmbuild/SOURCES
|
||||||
mv $HOME/rpmbuild/RPMS/noarch/gridtracker-*.noarch.rpm artifacts/rpm
|
# cp artifacts/*.tar.gz $HOME/rpmbuild/SOURCES/
|
||||||
ls -laR artifacts
|
setarch i386 rpmbuild -D "version `node ./version.js`" --build-in-place -bb gridtracker.i386.spec
|
||||||
|
setarch x86_64 rpmbuild -D "version `node ./version.js`" --build-in-place -bb gridtracker.x86_64.spec
|
||||||
|
mv $HOME/rpmbuild/RPMS/i386/*.rpm artifacts/rpm/
|
||||||
|
mv $HOME/rpmbuild/RPMS/x86_64/*.rpm artifacts/rpm/
|
||||||
echo -e "\e[0Ksection_end:`date +%s`:rpm_build\r\e[0K"
|
echo -e "\e[0Ksection_end:`date +%s`:rpm_build\r\e[0K"
|
||||||
|
# This section does debian DEBs
|
||||||
|
#- |
|
||||||
|
# echo -e "\e[0Ksection_start:`date +%s`:debian_build\r\e[0KBuilding Debian packages"
|
||||||
|
# dpkg-buildpackage -uc -us
|
||||||
|
# mkdir artifacts/debian
|
||||||
|
# mv ../*.{deb,dsc,buildinfo,tar.xz,changes} artifacts/debian/
|
||||||
|
# echo -e "\e[0Ksection_end:`date +%s`:debian_build\r\e[0K"
|
||||||
|
- |
|
||||||
|
echo "we made packages!"
|
||||||
|
ls -laR artifacts
|
||||||
|
|
||||||
|
arm-packaging:
|
||||||
|
stage: package
|
||||||
|
rules:
|
||||||
|
# only do this with a manual tag starting with v or test_
|
||||||
|
- if: '$CI_COMMIT_TAG =~ /^(v|test_).*/'
|
||||||
|
artifacts:
|
||||||
|
paths:
|
||||||
|
- artifacts/
|
||||||
|
name: '$CI_COMMIT_REF_SLUG'
|
||||||
|
cache:
|
||||||
|
paths:
|
||||||
|
- .cache/
|
||||||
|
- node_modules/
|
||||||
|
key:
|
||||||
|
files:
|
||||||
|
- package.json
|
||||||
|
- package.nw/package.json
|
||||||
|
script:
|
||||||
|
- |
|
||||||
|
mkdir -p $APT_CACHE_DIR $NPM_CONFIG_CACHE
|
||||||
|
mkdir -p artifacts/rpm
|
||||||
|
dpkg --add-architecture armhf
|
||||||
|
- |
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:apt_get[collapsed=true]\r\e[0KGetting Build Dependencies"
|
||||||
|
apt-get -qq update
|
||||||
|
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y npm
|
||||||
|
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y build-essential devscripts
|
||||||
|
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y rpm zip wget
|
||||||
|
apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" build-dep .
|
||||||
|
echo -e "\e[0Ksection_end:`date +%s`:apt_get\r\e[0K"
|
||||||
|
- test `node version.js` = `dpkg-parsechangelog -S version` || (echo "package.nw/package.json and debian/changelog version mismatch"; exit 1)
|
||||||
|
# This is for ARM arch build
|
||||||
|
- |
|
||||||
|
echo -e "\e[0Ksection_start:`date +%s`:arm_build\r\e[0KBuilding ARM packages"
|
||||||
|
wget https://github.com/LeonardLaszlo/nw.js-armv7-binaries/releases/download/nw49_2020-10-26/nw49_2020-10-26.tar.gz
|
||||||
|
tar -xf nw49_2020-10-26.tar.gz
|
||||||
|
tar -xf usr/docker/dist/nwjs-chromium-ffmpeg-branding/nwjs-v0.49.2-linux-arm.tar.gz
|
||||||
|
mv nwjs-v0.49.2-linux-arm/nw nwjs-v0.49.2-linux-arm/GridTracker
|
||||||
|
ls
|
||||||
|
version=`node ./version.js`
|
||||||
|
mkdir GridTracker-$version-linux-arm
|
||||||
|
cp -r nwjs-v0.49.2-linux-arm/* GridTracker-$version-linux-arm/
|
||||||
|
cp -r arm/* GridTracker-$version-linux-arm/
|
||||||
|
cp -r package.nw GridTracker-$version-linux-arm/
|
||||||
|
cp LICENSE GridTracker-$version-linux-arm/
|
||||||
|
tar -cjf GridTracker-$version-linux-arm.tar.gz GridTracker-$version-linux-arm
|
||||||
|
mv GridTracker-$version-linux-arm.tar.gz artifacts/
|
||||||
|
# This section handles making RPMs for Fedora/CentOS/RHEL
|
||||||
|
#- |
|
||||||
|
# echo -e "\e[0Ksection_start:`date +%s`:rpm_build\r\e[0KBuilding RPM packages"
|
||||||
|
# mkdir -p $HOME/rpmbuild/SOURCES
|
||||||
|
# cp artifacts/*.tar.gz $HOME/rpmbuild/SOURCES/
|
||||||
|
#setarch --list
|
||||||
|
#setarch armhf rpmbuild -D "version `node ./version.js`" --build-in-place -bb gridtracker.arm.spec
|
||||||
|
#mv $HOME/rpmbuild/RPMS/armv7l/*.rpm artifacts/rpm/
|
||||||
|
#echo -e "\e[0Ksection_end:`date +%s`:rpm_build\r\e[0K"
|
||||||
|
# This section does debian DEBs
|
||||||
|
#- |
|
||||||
|
# echo -e "\e[0Ksection_start:`date +%s`:debian_build\r\e[0KBuilding Debian packages"
|
||||||
|
# dpkg-buildpackage -uc -us
|
||||||
|
# mkdir artifacts/debian
|
||||||
|
# mv ../*.{deb,dsc,buildinfo,tar.xz,changes} artifacts/debian/
|
||||||
|
# echo -e "\e[0Ksection_end:`date +%s`:debian_build\r\e[0K"
|
||||||
|
- |
|
||||||
|
echo "we made packages!"
|
||||||
|
ls -laR artifacts
|
||||||
|
|
||||||
|
# copy test assets to NR0Q's server
|
||||||
|
nr0q_upload_testing:
|
||||||
|
stage: deploy
|
||||||
|
image: alpine
|
||||||
|
rules:
|
||||||
|
- if: '$CI_COMMIT_TAG =~ /^(test_).*/ && $NR0Q_SERVER_KEY != ""'
|
||||||
|
before_script:
|
||||||
|
- |
|
||||||
|
apk add openssh-client
|
||||||
|
eval $(ssh-agent -s)
|
||||||
|
echo "$NR0Q_SERVER_KEY" | tr -d '\r' | ssh-add -
|
||||||
|
mkdir -p ~/.ssh; chmod 700 ~/.ssh
|
||||||
|
script:
|
||||||
|
- |
|
||||||
|
cd artifacts
|
||||||
|
for FILE in *.*
|
||||||
|
do
|
||||||
|
echo "Calculating MD5 Hash for $FILE"
|
||||||
|
md5sum $FILE > $FILE.md5
|
||||||
|
done
|
||||||
|
for FILE in rpm/*.rpm
|
||||||
|
do
|
||||||
|
echo "Calculating MD5 Hash for $FILE"
|
||||||
|
md5sum $FILE > $FILE.md5
|
||||||
|
done
|
||||||
|
|
||||||
|
ssh -o StrictHostKeyChecking=no gridtracker@$NR0Q_SERVER_ADDRESS "mkdir ~/$CI_COMMIT_TAG" && scp -o StrictHostKeyChecking=no -r ./* gridtracker@$NR0Q_SERVER_ADDRESS:~/$CI_COMMIT_TAG/ && ssh -o StrictHostKeyChecking=no gridtracker@$NR0Q_SERVER_ADDRESS "rm latest_test && ln -s $CI_COMMIT_TAG latest_test"
|
||||||
|
|
||||||
|
# copy release assets to NR0Q's server
|
||||||
|
nr0q_upload_release:
|
||||||
|
stage: deploy
|
||||||
|
image: alpine
|
||||||
|
rules:
|
||||||
|
- if: '$CI_COMMIT_TAG =~ /^(v).*/ && $NR0Q_SERVER_KEY != ""'
|
||||||
|
before_script:
|
||||||
|
- |
|
||||||
|
apk add openssh-client
|
||||||
|
eval $(ssh-agent -s)
|
||||||
|
echo "$NR0Q_SERVER_KEY" | tr -d '\r' | ssh-add -
|
||||||
|
mkdir -p ~/.ssh; chmod 700 ~/.ssh
|
||||||
|
script:
|
||||||
|
- |
|
||||||
|
cd artifacts
|
||||||
|
for FILE in *.*
|
||||||
|
do
|
||||||
|
echo "Calculating MD5 Hash for $FILE"
|
||||||
|
md5sum $FILE > $FILE.md5
|
||||||
|
done
|
||||||
|
for FILE in rpm/*.rpm
|
||||||
|
do
|
||||||
|
echo "Calculating MD5 Hash for $FILE"
|
||||||
|
md5sum $FILE > $FILE.md5
|
||||||
|
done
|
||||||
|
ssh -o StrictHostKeyChecking=no gridtracker@$NR0Q_SERVER_ADDRESS "mkdir ~/$CI_COMMIT_TAG" && scp -o StrictHostKeyChecking=no -r ./* gridtracker@$NR0Q_SERVER_ADDRESS:~/$CI_COMMIT_TAG/
|
||||||
|
|
||||||
# copy the assets over to our distribution storage (testing, tag = test_.*)
|
# copy the assets over to our distribution storage (testing, tag = test_.*)
|
||||||
s3_upload_testing:
|
s3_upload_testing:
|
||||||
|
|
2
Makefile
2
Makefile
|
@ -29,4 +29,4 @@ install:
|
||||||
install -Dcm 644 LICENSE $(DOC)/LICENSE
|
install -Dcm 644 LICENSE $(DOC)/LICENSE
|
||||||
mkdir -p $(LIB)
|
mkdir -p $(LIB)
|
||||||
cp -r package.nw/* $(LIB)
|
cp -r package.nw/* $(LIB)
|
||||||
|
cp -r dist/*-linux-x64/* $(LIB)
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=GridTracker
|
||||||
|
Comment=GridTracker
|
||||||
|
GenericName=GridTracker, An Amateur Radio Companion
|
||||||
|
Exec=/home/pi/Downloads/GridTracker/GridTracker
|
||||||
|
Icon=/home/pi/Downloads/GridTracker/gridtracker.png
|
||||||
|
Path=/home/pi/Downloads/GridTracker
|
||||||
|
Type=Application
|
||||||
|
Encoding=UTF-8
|
||||||
|
Terminal=false
|
||||||
|
Categories=None;
|
|
@ -0,0 +1,38 @@
|
||||||
|
A PI DESKTOP LAUNCHER FOR RASPBIAN
|
||||||
|
Instead of opening a terminal instance to launch GridTracker on the
|
||||||
|
Raspberry pi running Raspbian*, there is an easy way to create a
|
||||||
|
launch icon on the desktop.
|
||||||
|
|
||||||
|
Included in this archive are two files; a desktop icon for GridTracker,
|
||||||
|
gridtracker.png, and a simple text file, GridTracker.desktop.
|
||||||
|
|
||||||
|
As an example, assume that GridTracker-Lunux-Arm1.18.xxxx.tar.gz was downloaded to /home/pi/Downloads/, and
|
||||||
|
extracted to a folder directly below it,
|
||||||
|
/home/pi/Downloads/GridTracker/.
|
||||||
|
|
||||||
|
Copy GridTracker.desktop to /home/pi/Desktop/, and
|
||||||
|
gridtracker.png to /home/pi/Downloads/GridTracker/.
|
||||||
|
|
||||||
|
If your GridTracker install uses other file locations, simply edit the
|
||||||
|
apporpriate lines in GridTracker.desktop to reference the proper
|
||||||
|
folders.
|
||||||
|
|
||||||
|
You should now see an icon on your desktop, . Simply double
|
||||||
|
click to launch GridTracker.
|
||||||
|
|
||||||
|
*Or other flavors of linux. Other changes may be required. See your package
|
||||||
|
documentation.
|
||||||
|
|
||||||
|
GridTracker.desktop example below
|
||||||
|
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=GridTracker
|
||||||
|
Comment=GridTracker
|
||||||
|
GenericName=GridTracker, a WSJT-X Companion
|
||||||
|
Exec=/home/pi/Downloads/GridTracker/GridTracker
|
||||||
|
Icon=/home/pi/Downloads/GridTracker/gridtracker.png
|
||||||
|
Path=/home/pi/Downloads/GridTracker
|
||||||
|
Type=Application
|
||||||
|
Encoding=UTF-8
|
||||||
|
Terminal=false
|
||||||
|
Categories=None;
|
Plik binarny nie jest wyświetlany.
Po Szerokość: | Wysokość: | Rozmiar: 59 KiB |
|
@ -0,0 +1,13 @@
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=GridTracker
|
||||||
|
Comment=GridTracker
|
||||||
|
GenericName=GridTracker, An Amateur Radio Companion
|
||||||
|
Exec=/home/mchambers/Downloads/GridTracker/GridTracker
|
||||||
|
Icon=/home/mchambers/Downloads/GridTracker/gridtracker.png
|
||||||
|
Path=/home/mchambers/Downloads/GridTracker
|
||||||
|
Type=Application
|
||||||
|
Encoding=UTF-8
|
||||||
|
Terminal=false
|
||||||
|
Categories=None;
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
A PI DESKTOP LAUNCHER FOR RASPBIAN
|
||||||
|
Instead of opening a terminal instance to launch GridTracker on the
|
||||||
|
Raspberry pi running Raspbian*, there is an easy way to create a
|
||||||
|
launch icon on the desktop.
|
||||||
|
|
||||||
|
Included in this archive are two files; a desktop icon for GridTracker,
|
||||||
|
gridtracker.png, and a simple text file, GridTracker.desktop.
|
||||||
|
|
||||||
|
As an example, assume that GridTracker-Lunux-Arm1.18.xxxx.tar.gz was downloaded to /home/pi/Downloads/, and
|
||||||
|
extracted to a folder directly below it,
|
||||||
|
/home/pi/Downloads/GridTracker/.
|
||||||
|
|
||||||
|
Copy GridTracker.desktop to /home/pi/Desktop/, and
|
||||||
|
gridtracker.png to /home/pi/Downloads/GridTracker/.
|
||||||
|
|
||||||
|
If your GridTracker install uses other file locations, simply edit the
|
||||||
|
apporpriate lines in GridTracker.desktop to reference the proper
|
||||||
|
folders.
|
||||||
|
|
||||||
|
You should now see an icon on your desktop, . Simply double
|
||||||
|
click to launch GridTracker.
|
||||||
|
|
||||||
|
*Or other flavors of linux. Other changes may be required. See your package
|
||||||
|
documentation.
|
||||||
|
|
||||||
|
GridTracker.desktop example below
|
||||||
|
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=GridTracker
|
||||||
|
Comment=GridTracker
|
||||||
|
GenericName=GridTracker, a WSJT-X Companion
|
||||||
|
Exec=/home/pi/Downloads/GridTracker/GridTracker
|
||||||
|
Icon=/home/pi/Downloads/GridTracker/gridtracker.png
|
||||||
|
Path=/home/pi/Downloads/GridTracker
|
||||||
|
Type=Application
|
||||||
|
Encoding=UTF-8
|
||||||
|
Terminal=false
|
||||||
|
Categories=None;
|
Plik binarny nie jest wyświetlany.
Po Szerokość: | Wysokość: | Rozmiar: 59 KiB |
|
@ -7,8 +7,8 @@ Standards-Version: 4.3.0
|
||||||
Homepage: http://gridtracker.org/
|
Homepage: http://gridtracker.org/
|
||||||
|
|
||||||
Package: gridtracker
|
Package: gridtracker
|
||||||
Architecture: all
|
Architecture: any
|
||||||
Depends: nwjs (>= 0.47.4), fonts-noto, ${misc:Depends}
|
Depends: ${misc:Depends}
|
||||||
Recommends: speech-dispatcher-espeak-ng
|
Recommends: speech-dispatcher-espeak-ng
|
||||||
Description: Companion program to WSJT-X/JTDX
|
Description: Companion program to WSJT-X/JTDX
|
||||||
.
|
.
|
||||||
|
|
|
@ -8,7 +8,7 @@ RUN dpkg --add-architecture i386 && \
|
||||||
apt-get install -y npm wine wine32 && \
|
apt-get install -y npm wine wine32 && \
|
||||||
apt-get install -y build-essential devscripts lintian diffutils patch \
|
apt-get install -y build-essential devscripts lintian diffutils patch \
|
||||||
patchutils quilt git && \
|
patchutils quilt git && \
|
||||||
apt-get install -y rpm
|
apt-get install -y rpm zip
|
||||||
|
|
||||||
VOLUME /build/gridtracker
|
VOLUME /build/gridtracker
|
||||||
VOLUME /build/dist
|
VOLUME /build/dist
|
||||||
|
|
|
@ -7,11 +7,27 @@ mv ../*.{deb,dsc,buildinfo,changes,tar.xz} ../dist/debian
|
||||||
debian/rules clean
|
debian/rules clean
|
||||||
npm install
|
npm install
|
||||||
npm run dist
|
npm run dist
|
||||||
|
chmod 755 dist/*-linux-*/GridTracker dist/*-linux-*/lib dist/*-linux-*/locales dist/*-linux-*/swiftshader/
|
||||||
for dir in dist/*-linux-* ; do
|
for dir in dist/*-linux-* ; do
|
||||||
if [ -d $dir ] ; then
|
if [ -d $dir ] ; then
|
||||||
tar -C dist -cjf ${dir}.tar.bz `basename $dir`
|
# mkdir $dir/package.nw
|
||||||
|
# for file in package.nw/* ; do
|
||||||
|
# if [ `basename $file` = "lib" ] ; then
|
||||||
|
# continue # skip lib dir
|
||||||
|
# fi
|
||||||
|
# mv $dir/`basename $file` $dir/package.nw
|
||||||
|
# done
|
||||||
|
# pushd .
|
||||||
|
# cd $dir/package.nw
|
||||||
|
# zip ../package.nw.zip -r *
|
||||||
|
# popd
|
||||||
|
# rm -Rf $dir/package.nw
|
||||||
|
# mv $dir/package.nw.zip $dir/package.nw
|
||||||
|
tar -C dist -czf ${dir}.tar.gz `basename $dir`
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
mv dist/*{.exe,mac-x64.zip,.tar.bz} ../dist
|
mv dist/*{.exe,mac-x64.zip,.tar.gz} ../dist
|
||||||
rpmbuild -D "version `node ./version.js`" --build-in-place -bb gridtracker.spec
|
rpmbuild -D "version `node ./version.js`" --build-in-place -bb gridtracker.i386.spec
|
||||||
mv $HOME/rpmbuild/RPMS/noarch/gridtracker-*.noarch.rpm ../dist/rpm
|
rpmbuild -D "version `node ./version.js`" --build-in-place -bb gridtracker.x86_64.spec
|
||||||
|
mv $HOME/rpmbuild/RPMS/i386/gridtracker-*.i386.rpm ../dist/rpm
|
||||||
|
mv $HOME/rpmbuild/RPMS/x86_64/gridtracker-*.x86_64.rpm ../dist/rpm
|
||||||
|
|
|
@ -0,0 +1,65 @@
|
||||||
|
# Build with the following syntax:
|
||||||
|
#
|
||||||
|
# version=`node ./version.js`
|
||||||
|
# rpmbuild -D "version ${version}" --build-in-place -bb --target i386 gridtracker.i386.spec
|
||||||
|
|
||||||
|
Name: gridtracker
|
||||||
|
Summary: GridTracker: An amateur radio companion to WSJT-X or JTDX
|
||||||
|
Version: %{version}
|
||||||
|
Release: 1%{?dist}
|
||||||
|
BuildArch: armv7
|
||||||
|
Source0: GridTracker-%{version}-linux-arm.tar.gz
|
||||||
|
|
||||||
|
License: BSD 3-Clause License
|
||||||
|
URL: https://gridtracker.org
|
||||||
|
Group: Science & Math
|
||||||
|
Packager: Matthew Chambers <nr0q@gridtracker.org>
|
||||||
|
# Requires: nwjs
|
||||||
|
# BuildRequires: desktop-file-utils
|
||||||
|
|
||||||
|
%description
|
||||||
|
GridTracker listens to traffic from WSJT-X/JTDX, displays it on a map,
|
||||||
|
and has a sophisticated alerting and filtering system for finding and
|
||||||
|
working interesting stations. It also will upload QSO records to multiple
|
||||||
|
logging frameworks including Logbook of the World.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -n GridTracker
|
||||||
|
|
||||||
|
#%build
|
||||||
|
|
||||||
|
|
||||||
|
%install
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}/usr/share/%{name}
|
||||||
|
cp -aR GridTracker-%version-linux-arm/ ${RPM_BUILD_ROOT}/usr/share/%{name}/
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man1
|
||||||
|
cp -a %{name}.1 ${RPM_BUILD_ROOT}%{_mandir}/man1/
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}%{_docdir}/%{name}
|
||||||
|
cp -a LICENSE ${RPM_BUILD_ROOT}%{_docdir}/%{name}/
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}/usr/share/applications
|
||||||
|
cat > ${RPM_BUILD_ROOT}/usr/share/applications/%{name}.desktop << 'EOF'
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=GridTracker
|
||||||
|
Comment=GridTracker
|
||||||
|
Exec=/usr/share/%{name}/GridTracker
|
||||||
|
Icon=/usr/share/%{name}/gridtracker.png
|
||||||
|
Path=/usr/share/%{name}
|
||||||
|
Type=Application
|
||||||
|
Encoding=UTF-8
|
||||||
|
Terminal=false
|
||||||
|
Categories=DataVisualization,Geography,Education;
|
||||||
|
EOF
|
||||||
|
|
||||||
|
chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/; chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/GridTracker; chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/lib; chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/locales
|
||||||
|
find ${RPM_BUILD_ROOT}/usr/share/ -type f \( -name '*.so' -o -name '*.so.*' \) -exec chmod 755 {} +
|
||||||
|
|
||||||
|
# %check
|
||||||
|
|
||||||
|
# %clean
|
||||||
|
|
||||||
|
%files
|
||||||
|
/usr/share/%{name}/
|
||||||
|
/usr/share/applications/%{name}.desktop
|
||||||
|
%{_datadir}/%{name}/
|
||||||
|
%{_mandir}/man1/
|
||||||
|
%license %{_docdir}/%{name}/
|
|
@ -0,0 +1,65 @@
|
||||||
|
# Build with the following syntax:
|
||||||
|
#
|
||||||
|
# version=`node ./version.js`
|
||||||
|
# rpmbuild -D "version ${version}" --build-in-place -bb --target i386 gridtracker.i386.spec
|
||||||
|
|
||||||
|
Name: gridtracker
|
||||||
|
Summary: GridTracker: An amateur radio companion to WSJT-X or JTDX
|
||||||
|
Version: %{version}
|
||||||
|
Release: 1%{?dist}
|
||||||
|
BuildArch: i386
|
||||||
|
Source0: GridTracker-%{version}-linux-x86.tar.gz
|
||||||
|
|
||||||
|
License: BSD 3-Clause License
|
||||||
|
URL: https://gridtracker.org
|
||||||
|
Group: Science & Math
|
||||||
|
Packager: Matthew Chambers <nr0q@gridtracker.org>
|
||||||
|
# Requires: nwjs
|
||||||
|
# BuildRequires: desktop-file-utils
|
||||||
|
|
||||||
|
%description
|
||||||
|
GridTracker listens to traffic from WSJT-X/JTDX, displays it on a map,
|
||||||
|
and has a sophisticated alerting and filtering system for finding and
|
||||||
|
working interesting stations. It also will upload QSO records to multiple
|
||||||
|
logging frameworks including Logbook of the World.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -n GridTracker
|
||||||
|
|
||||||
|
#%build
|
||||||
|
|
||||||
|
|
||||||
|
%install
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}/usr/share/%{name}
|
||||||
|
cp -aR dist/*-linux-x86/* ${RPM_BUILD_ROOT}/usr/share/%{name}/
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man1
|
||||||
|
cp -a %{name}.1 ${RPM_BUILD_ROOT}%{_mandir}/man1/
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}%{_docdir}/%{name}
|
||||||
|
cp -a LICENSE ${RPM_BUILD_ROOT}%{_docdir}/%{name}/
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}/usr/share/applications
|
||||||
|
cat > ${RPM_BUILD_ROOT}/usr/share/applications/%{name}.desktop << 'EOF'
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=GridTracker
|
||||||
|
Comment=GridTracker
|
||||||
|
Exec=/usr/share/%{name}/GridTracker
|
||||||
|
Icon=/usr/share/%{name}/gridtracker.png
|
||||||
|
Path=/usr/share/%{name}
|
||||||
|
Type=Application
|
||||||
|
Encoding=UTF-8
|
||||||
|
Terminal=false
|
||||||
|
Categories=DataVisualization,Geography,Education;
|
||||||
|
EOF
|
||||||
|
|
||||||
|
chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/; chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/GridTracker; chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/lib; chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/locales
|
||||||
|
find ${RPM_BUILD_ROOT}/usr/share/ -type f \( -name '*.so' -o -name '*.so.*' \) -exec chmod 755 {} +
|
||||||
|
|
||||||
|
# %check
|
||||||
|
|
||||||
|
# %clean
|
||||||
|
|
||||||
|
%files
|
||||||
|
/usr/share/%{name}/
|
||||||
|
/usr/share/applications/%{name}.desktop
|
||||||
|
%{_datadir}/%{name}/
|
||||||
|
%{_mandir}/man1/
|
||||||
|
%license %{_docdir}/%{name}/
|
|
@ -1,45 +0,0 @@
|
||||||
# Build with the following syntax:
|
|
||||||
#
|
|
||||||
# version=`node ./version.js`
|
|
||||||
# rpmbuild -D "version ${version}" --build-in-place -bb --target noarch gridtracker.spec
|
|
||||||
|
|
||||||
Name: gridtracker
|
|
||||||
Summary: GridTracker: An amateur radio companion to WSJT-X or JTDX
|
|
||||||
Version: %{version}
|
|
||||||
Release: 1%{?dist}
|
|
||||||
BuildArch: noarch
|
|
||||||
|
|
||||||
License: BSD 3-Clause License
|
|
||||||
URL: https://gridtracker.org
|
|
||||||
Group: Science & Math
|
|
||||||
Packager: Matthew Chambers
|
|
||||||
Requires: nwjs
|
|
||||||
# BuildRequires: desktop-file-utils
|
|
||||||
|
|
||||||
%description
|
|
||||||
GridTracker listens to traffic from WSJT-X/JTDX, displays it on a map,
|
|
||||||
and has a sophisticated alerting and filtering system for finding and
|
|
||||||
working interesting stations. It also will upload QSO records to multiple
|
|
||||||
logging frameworks including Logbook of the World.
|
|
||||||
|
|
||||||
%prep
|
|
||||||
mkdir -pv ${RPM_BUILD_ROOT}
|
|
||||||
|
|
||||||
%build
|
|
||||||
make
|
|
||||||
|
|
||||||
%install
|
|
||||||
make install DESTDIR=${RPM_BUILD_ROOT}
|
|
||||||
|
|
||||||
# %check
|
|
||||||
# desktop-file-validate desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop
|
|
||||||
|
|
||||||
# %clean
|
|
||||||
# make clean
|
|
||||||
|
|
||||||
%files
|
|
||||||
%{_bindir}/%{name}
|
|
||||||
%{_datadir}/applications/%{name}.desktop
|
|
||||||
%{_datadir}/%{name}/
|
|
||||||
%{_mandir}/man1/%{name}.1*
|
|
||||||
%license %{_docdir}/%{name}/LICENSE
|
|
|
@ -0,0 +1,66 @@
|
||||||
|
# Build with the following syntax:
|
||||||
|
#
|
||||||
|
# version=`node ./version.js`
|
||||||
|
# rpmbuild -D "version ${version}" --build-in-place -bb --target x86_64 gridtracker.x86_64.spec
|
||||||
|
|
||||||
|
Name: gridtracker
|
||||||
|
Summary: GridTracker: An amateur radio companion to WSJT-X or JTDX
|
||||||
|
Version: %{version}
|
||||||
|
Release: 1%{?dist}
|
||||||
|
BuildArch: x86_64
|
||||||
|
Source0: GridTracker-%{version}-linux-x64.tar.bz
|
||||||
|
|
||||||
|
License: BSD 3-Clause License
|
||||||
|
URL: https://gridtracker.org
|
||||||
|
Group: Science & Math
|
||||||
|
Packager: Matthew Chambers
|
||||||
|
# Requires: nwjs
|
||||||
|
# BuildRequires: desktop-file-utils
|
||||||
|
|
||||||
|
%description
|
||||||
|
GridTracker listens to traffic from WSJT-X/JTDX, displays it on a map,
|
||||||
|
and has a sophisticated alerting and filtering system for finding and
|
||||||
|
working interesting stations. It also will upload QSO records to multiple
|
||||||
|
logging frameworks including Logbook of the World.
|
||||||
|
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -n GridTracker
|
||||||
|
|
||||||
|
%build
|
||||||
|
|
||||||
|
|
||||||
|
%install
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}/usr/share/%{name}
|
||||||
|
cp -aR dist/*-linux-x64/* ${RPM_BUILD_ROOT}/usr/share/%{name}/
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man1
|
||||||
|
cp -a %{name}.1 ${RPM_BUILD_ROOT}%{_mandir}/man1/
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}%{_docdir}/%{name}
|
||||||
|
cp -a LICENSE ${RPM_BUILD_ROOT}%{_docdir}/%{name}/
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}/usr/share/applications
|
||||||
|
cat > ${RPM_BUILD_ROOT}/usr/share/applications/%{name}.desktop << 'EOF'
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=GridTracker
|
||||||
|
Comment=GridTracker
|
||||||
|
Exec=/usr/share/%{name}/GridTracker
|
||||||
|
Icon=/usr/share/%{name}/gridtracker.png
|
||||||
|
Path=/usr/share/%{name}
|
||||||
|
Type=Application
|
||||||
|
Encoding=UTF-8
|
||||||
|
Terminal=false
|
||||||
|
Categories=DataVisualization,Geography,Education;
|
||||||
|
EOF
|
||||||
|
|
||||||
|
chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/; chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/GridTracker; chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/lib; chmod 755 ${RPM_BUILD_ROOT}/usr/share/%{name}/locales
|
||||||
|
find ${RPM_BUILD_ROOT}/usr/share/ -type f \( -name '*.so' -o -name '*.so.*' \) -exec chmod 755 {} +
|
||||||
|
|
||||||
|
# %check
|
||||||
|
|
||||||
|
# %clean
|
||||||
|
|
||||||
|
%files
|
||||||
|
/usr/share/%{name}/
|
||||||
|
/usr/share/applications/%{name}.desktop
|
||||||
|
%{_datadir}/%{name}/
|
||||||
|
%{_mandir}/man1/
|
||||||
|
%license %{_docdir}/%{name}/
|
|
@ -2,7 +2,7 @@
|
||||||
"name": "GridTracker",
|
"name": "GridTracker",
|
||||||
"product_string_do_not_use": "gridtracker",
|
"product_string_do_not_use": "gridtracker",
|
||||||
"version": "1.21.0307",
|
"version": "1.21.0307",
|
||||||
"betaVersion": "Phoenix II",
|
"betaVersion": "",
|
||||||
"description": "GridTracker, an amateur radio companion",
|
"description": "GridTracker, an amateur radio companion",
|
||||||
"author": "Stephen Loomis (N0TTL) and GridTracker.org",
|
"author": "Stephen Loomis (N0TTL) and GridTracker.org",
|
||||||
"license": "BSD-3-Clause",
|
"license": "BSD-3-Clause",
|
||||||
|
|
Ładowanie…
Reference in New Issue