Move all versioning to package.json and create an architecture independent RPM .spec file.

merge-requests/31/head
Paul Traina 2020-11-17 20:08:56 +00:00
rodzic 3bf884e498
commit e50b14ff2d
8 zmienionych plików z 69 dodań i 7 usunięć

Wyświetl plik

@ -64,17 +64,23 @@ packaging:
- package.nw/package.json
script:
- mkdir -p $APT_CACHE_DIR $NPM_CONFIG_CACHE
- mkdir -p build/debian
- mkdir -p build/debian build/rpm
- dpkg --add-architecture i386
- apt-get -qq update
- apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y npm wine wine32
- echo "Building native packages"
- npm install --prefer-offline
- npm run dist
- (cd dist ; mv *.zip *.exe *.7z *.json ../build)
- echo "Building Debian packages"
- 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" build-dep .
- dpkg-buildpackage -uc -us
- mv ../*.{deb,dsc,buildinfo,tar.xz,changes} build/debian/
- echo "Building RPM packages"
- apt-get -qq -o dir::cache::archives="$APT_CACHE_DIR" install -y rpmbuild
- rpmbuild -D "version `node ./version.js`" --build-in-place -bb --target noarch gridtracker.spec
- mv $HOME/rpmbuild/RPMS/noarch/gridtracker-*.noarch.rpm build/rpm
# copy the assets over to our distribution storage (testing, tag = test_.*)
upload_testing:

Wyświetl plik

@ -2,12 +2,16 @@ BIN = $(DESTDIR)/usr/bin
LIB = $(DESTDIR)/usr/share/gridtracker
APP = $(DESTDIR)/usr/share/applications
MAN = $(DESTDIR)/usr/share/man/man1
DOC = $(DESTDIR)/usr/share/doc/gridtracker
all:
clean:
install:
install -d $(BIN) $(LIB) $(APP) $(MAN)
install -d $(BIN) $(LIB) $(APP) $(MAN) $(DOC)
install -c -m 755 gridtracker.sh $(BIN)/gridtracker
install -c -m 644 gridtracker.desktop $(APP)/gridtracker.desktop
install -c -m 644 gridtracker.1 $(MAN)
install -c -m 644 LICENSE $(DOC)
cp -r package.nw/* $(LIB)

5
debian/control vendored
Wyświetl plik

@ -12,4 +12,7 @@ Depends: nwjs (>= 0.47.4), fonts-noto, ${misc:Depends}
Recommends: speech-dispatcher-espeak-ng
Description: Companion program to WSJT-X/JTDX
.
GridTracker cleans your teeth and freshens your breath.
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.

Wyświetl plik

@ -1,7 +1,7 @@
[Desktop Entry]
Name=GridTracker
Comment=GridTracker
GenericName=GridTracker, a WSJT-X Companion
GenericName=GridTracker, an Amateur Radio Companion
Exec=gridtracker
Icon=/usr/share/gridtracker/gridview.png
Encoding=UTF-8

45
gridtracker.spec 100644
Wyświetl plik

@ -0,0 +1,45 @@
# 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}
%{_mandir}/man1/%{name}.1
%{_datadir}/applications/%{name}.desktop
%{_datadir}/%{name}/
%license %{_docdir}/%{name}/LICENSE

Wyświetl plik

@ -1,10 +1,11 @@
// GridTracker ©2020 GridTracker.org
// All rights reserved.
// See LICENSE for more information.
var gtVersion = 1201107;
var gtBeta = "Phoenix";
var g_startVersion = 0;
var pjson = require("./package.json");
var gtVersion = parseInt(pjson.version.replace(/\./g, ""));
var gtBeta = pjson.betaVersion;
var g_startVersion = 0;
if (typeof localStorage.currentVersion != "undefined")
g_startVersion = localStorage.currentVersion;

Wyświetl plik

@ -2,6 +2,7 @@
"name": "GridTracker",
"product_string_do_not_use": "gridtracker",
"version": "1.20.1107",
"betaVersion": "Phoenix II",
"description": "GridTracker, an amateur radio companion",
"author": "Steven Tag Loomis (N0TTL) and GridTracker.org",
"license": "BSD-3-Clause",

2
version.js 100644
Wyświetl plik

@ -0,0 +1,2 @@
var pjson = require('./package.nw/package.json');
console.log(pjson.version);