Skip to content

Commit

Permalink
Initial release merge (#2)
Browse files Browse the repository at this point in the history
* enabled actions
* releases of source, jammy and focal
  • Loading branch information
d3cker authored Oct 2, 2022
1 parent a45863d commit f8d48bb
Show file tree
Hide file tree
Showing 15 changed files with 21,145 additions and 1 deletion.
174 changes: 174 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
name: Build dev packages
on:
push:
tags-ignore:
- '**'
branches:
- 'dev/*'

jobs:
download_wsjtx:
runs-on: ubuntu-latest
steps:
- name: Downlaod source code
run: wget https://physics.princeton.edu/pulsar/k1jt/wsjtx-2.5.4.tgz

- name: Save WSJTX for next jobs
uses: actions/upload-artifact@v2
with:
name: wsjtx-source-code
path: wsjtx-2.5.4.tgz


patch_source:
needs: ['download_wsjtx']
runs-on: ubuntu-latest
steps:
- name: Get source code
uses: actions/checkout@v2

- name: Download artifacts
uses: actions/download-artifact@v2
with:
name: wsjtx-source-code

- name: Unpack the source
run: mkdir unpack && pwd && ls -l && tar -xzvf wsjtx-2.5.4.tgz -C unpack/

- name: Prepare source
run: mkdir newsrc && tar -xzvf unpack/wsjtx-2.5.4/src/wsjtx.tgz -C newsrc/

- name: Patch WSJTX
run: cp -R patch/* newsrc/wsjtx/

- name: Repack source
run: cd newsrc/ && tar -czvf wsjtx.tgz * && cd ..

- name: Copy package
run: cp newsrc/wsjtx.tgz unpack/wsjtx-2.5.4/src/

- name: Generate md5sum
run: cd unpack/wsjtx-2.5.4/src/ && md5sum wsjtx.tgz > wsjtx.tgz.md5sum

- name: Create new archive
run: cd unpack/ && tar -czvf wsjtx-patched-2.5.4.tgz *

- name: Upload new patched archive
uses: actions/upload-artifact@v2
with:
name: wsjtx-patched-code
path: unpack/wsjtx-patched-2.5.4.tgz


build_focal:
needs: ['patch_source']
runs-on: ubuntu-latest
steps:
- name: Get source code
uses: actions/checkout@v2

- name: Download artifacts
uses: actions/download-artifact@v2
with:
name: wsjtx-patched-code

- name: Create Docker Image
run: cd $GITHUB_WORKSPACE/docker/ubuntu_focal && docker build . --tag ubuntu_focal_build

- name: Run Container
run: docker run -t -v $GITHUB_WORKSPACE:/build -w /build ubuntu_focal_build /build/docker/ubuntu_focal/build.sh

- name: Upload new patched archive
uses: actions/upload-artifact@v2
with:
name: wsjtx-focal-package
path: wsjtx_2.5.4_focal_amd64.deb

build_jammy:
needs: ['patch_source']
runs-on: ubuntu-latest
steps:
- name: Get source code
uses: actions/checkout@v2

- name: Download artifacts
uses: actions/download-artifact@v2
with:
name: wsjtx-patched-code

- name: Create Docker Image
run: cd $GITHUB_WORKSPACE/docker/ubuntu_jammy && docker build . --tag ubuntu_jammy_build

- name: Run Container
run: docker run -t -v $GITHUB_WORKSPACE:/build -w /build ubuntu_jammy_build /build/docker/ubuntu_jammy/build.sh

- name: Upload new patched archive
uses: actions/upload-artifact@v2
with:
name: wsjtx-jammy-package
path: wsjtx_2.5.4_jammy_amd64.deb


release_draft:
needs: ['build_focal' , 'build_jammy']
runs-on: ubuntu-latest
steps:
- name: Download artifacts
uses: actions/download-artifact@v2

- name: Release draft
uses: actions/create-release@v1
id: create_release_draft
with:
draft: true
prerelease: true
release_name: Development build ${{ github.run_number }}
tag_name: ${{ github.ref }}
body: |
Automatic build on push. This is not a release.
env:
GITHUB_TOKEN: ${{ github.token }}

- name: upload focal artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release_draft.outputs.upload_url }}
asset_path: wsjtx-focal-package/wsjtx_2.5.4_focal_amd64.deb
asset_name: wsjtx_2.5.4_focal_amd64.deb
asset_content_type: application/gzip

- name: upload jammy artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release_draft.outputs.upload_url }}
asset_path: wsjtx-jammy-package/wsjtx_2.5.4_jammy_amd64.deb
asset_name: wsjtx_2.5.4_jammy_amd64.deb
asset_content_type: application/gzip

- name: upload patched source code
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release_draft.outputs.upload_url }}
asset_path: wsjtx-patched-code/wsjtx-patched-2.5.4.tgz
asset_name: wsjtx-patched-2.5.4.tgz
asset_content_type: application/gzip


clean_artifacts:
needs: ['release_draft']
runs-on: ubuntu-latest
steps:
- name: Delete Artifact
uses: GeekyEggo/[email protected]
with:
name: |
wsjtx-patched-code
wsjtx-source-code
wsjtx-focal-package
wsjtx-jammy-package
174 changes: 174 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
name: Build release packages
on:
push:
tags:
- '**'
branches-ignore:
- '**'

jobs:
download_wsjtx:
runs-on: ubuntu-latest
steps:
- name: Downlaod source code
run: wget https://physics.princeton.edu/pulsar/k1jt/wsjtx-2.5.4.tgz

- name: Save WSJTX for next jobs
uses: actions/upload-artifact@v2
with:
name: wsjtx-source-code
path: wsjtx-2.5.4.tgz


patch_source:
needs: ['download_wsjtx']
runs-on: ubuntu-latest
steps:
- name: Get source code
uses: actions/checkout@v2

- name: Download artifacts
uses: actions/download-artifact@v2
with:
name: wsjtx-source-code

- name: Unpack the source
run: mkdir unpack && pwd && ls -l && tar -xzvf wsjtx-2.5.4.tgz -C unpack/

- name: Prepare source
run: mkdir newsrc && tar -xzvf unpack/wsjtx-2.5.4/src/wsjtx.tgz -C newsrc/

- name: Patch WSJTX
run: cp -R patch/* newsrc/wsjtx/

- name: Repack source
run: cd newsrc/ && tar -czvf wsjtx.tgz * && cd ..

- name: Copy package
run: cp newsrc/wsjtx.tgz unpack/wsjtx-2.5.4/src/

- name: Generate md5sum
run: cd unpack/wsjtx-2.5.4/src/ && md5sum wsjtx.tgz > wsjtx.tgz.md5sum

- name: Create new archive
run: cd unpack/ && tar -czvf wsjtx-patched-2.5.4.tgz *

- name: Upload new patched archive
uses: actions/upload-artifact@v2
with:
name: wsjtx-patched-code
path: unpack/wsjtx-patched-2.5.4.tgz


build_focal:
needs: ['patch_source']
runs-on: ubuntu-latest
steps:
- name: Get source code
uses: actions/checkout@v2

- name: Download artifacts
uses: actions/download-artifact@v2
with:
name: wsjtx-patched-code

- name: Create Docker Image
run: cd $GITHUB_WORKSPACE/docker/ubuntu_focal && docker build . --tag ubuntu_focal_build

- name: Run Container
run: docker run -t -v $GITHUB_WORKSPACE:/build -w /build ubuntu_focal_build /build/docker/ubuntu_focal/build.sh

- name: Upload new patched archive
uses: actions/upload-artifact@v2
with:
name: wsjtx-focal-package
path: wsjtx_2.5.4_focal_amd64.deb

build_jammy:
needs: ['patch_source']
runs-on: ubuntu-latest
steps:
- name: Get source code
uses: actions/checkout@v2

- name: Download artifacts
uses: actions/download-artifact@v2
with:
name: wsjtx-patched-code

- name: Create Docker Image
run: cd $GITHUB_WORKSPACE/docker/ubuntu_jammy && docker build . --tag ubuntu_jammy_build

- name: Run Container
run: docker run -t -v $GITHUB_WORKSPACE:/build -w /build ubuntu_jammy_build /build/docker/ubuntu_jammy/build.sh

- name: Upload new patched archive
uses: actions/upload-artifact@v2
with:
name: wsjtx-jammy-package
path: wsjtx_2.5.4_jammy_amd64.deb


release_draft:
needs: ['build_focal' , 'build_jammy']
runs-on: ubuntu-latest
steps:
- name: Download artifacts
uses: actions/download-artifact@v2

- name: Release draft
uses: actions/create-release@v1
id: create_release_draft
with:
draft: false
prerelease: false
release_name: Release ${{ github.ref_name }}
tag_name: ${{ github.ref }}
body: |
Release build.
env:
GITHUB_TOKEN: ${{ github.token }}

- name: upload focal artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release_draft.outputs.upload_url }}
asset_path: wsjtx-focal-package/wsjtx_2.5.4_focal_amd64.deb
asset_name: wsjtx_2.5.4_focal_amd64.deb
asset_content_type: application/gzip

- name: upload jammy artifact
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release_draft.outputs.upload_url }}
asset_path: wsjtx-jammy-package/wsjtx_2.5.4_jammy_amd64.deb
asset_name: wsjtx_2.5.4_jammy_amd64.deb
asset_content_type: application/gzip

- name: upload patched source code
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release_draft.outputs.upload_url }}
asset_path: wsjtx-patched-code/wsjtx-patched-2.5.4.tgz
asset_name: wsjtx-patched-2.5.4.tgz
asset_content_type: application/gzip


clean_artifacts:
needs: ['release_draft']
runs-on: ubuntu-latest
steps:
- name: Delete Artifact
uses: GeekyEggo/[email protected]
with:
name: |
wsjtx-patched-code
wsjtx-source-code
wsjtx-focal-package
wsjtx-jammy-package
44 changes: 43 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,43 @@
# wsjtx-regex-filter
# WSJT-X 2.5.4 - Regex ignore filter

## Build and binaries

Navigate to [GitHub Actions](https://github.com/d3cker/wsjtx-regex-filter/actions) for build process details.

[Available releases](https://github.com/d3cker/wsjtx-regex-filter/releases):
- Ubuntu Focal 20.04
- Ubuntu Jammy 22.04
- Patched source code tgz archive

If you want to compile this patch by your own, just grab patched source code from
[Releases](https://github.com/d3cker/wsjtx-regex-filter/releases) page and follow
original INSTALL instructions.

## Features
- Added option: Setup -> RX/TX Macros -> RX regex ignore filter
![Options](images/options.png)
- CQ answers from matched callsigns are ignored
- reply to CQ from matched callsigns are ignored
- Manual clicks (calls) on matched stations are ignored

![Main window](images/main.png)

Just like that. Tested during WW DIGI'22 contest.

## Note on purpose

I have to confess that I'm not a software developer and this patch is just
a dirty hack to make it possible to make auto QSO with all except Russians.
To filter out RU stations use this filter: **^(R[A-Z1-9]|U[A-I])+**

I know that this is not part of "ham spirit" to make such a software but...
let's face it. One does not simply attack its neighbour and expects others
to stay quiet. As a Pole I know my country has long and cloudy history with
both Russians and Ukrainians,but what happened in the past should stay in the past.
One may remember, one may forget, one may cry for revenge or one my simply forgive.
From my perspective, we live in 2022, Europe, in the times of wide spread Internet.
Suddenly war explodes at the borders of my country. The war that makes no sense,
pure aggression and disgusting act of terrorism. As long as regular Russians do not
resist to their goverment I would act and make software like this, no matter what.

Bartek SP6XD
Loading

0 comments on commit f8d48bb

Please sign in to comment.