Browse Source

add start-dn script with testnet4 support

add_frost
zebra-lucky 1 week ago
parent
commit
61c5b13e9d
  1. 9
      .github/workflows/build.yml
  2. 1
      .gitignore
  3. 42
      contrib/build-linux/pyinstaller-build/build.sh
  4. 79
      contrib/build-linux/pyinstaller-build/start-dn.spec

9
.github/workflows/build.yml

@ -94,3 +94,12 @@ jobs:
asset_path: dist/joinmarket-clientserver-obwatch-${{ github.ref_name}}.tgz asset_path: dist/joinmarket-clientserver-obwatch-${{ github.ref_name}}.tgz
asset_name: joinmarket-clientserver-obwatch-${{ github.ref_name}}.tgz asset_name: joinmarket-clientserver-obwatch-${{ github.ref_name}}.tgz
asset_content_type: application/octet-stream asset_content_type: application/octet-stream
- name: Upload start-dn Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ needs.create_release.outputs.upload_url }}
asset_path: dist/joinmarket-clientserver-start-dn-${{ github.ref_name}}.tgz
asset_name: joinmarket-clientserver-start-dn-${{ github.ref_name}}.tgz
asset_content_type: application/octet-stream

1
.gitignore vendored

@ -35,3 +35,4 @@ scripts/snicker/candidates.txt
.qt_for_python/ .qt_for_python/
cmtdata/ cmtdata/
**/build/ **/build/
dist/

42
contrib/build-linux/pyinstaller-build/build.sh

@ -49,6 +49,7 @@ git checkout 1.0.20-RELEASE
make check make check
sudo make install sudo make install
cd .. cd ..
rm -rf libsodium
cp contrib/build-linux/pyinstaller-build/joinmarket-clientserver.spec . cp contrib/build-linux/pyinstaller-build/joinmarket-clientserver.spec .
@ -67,9 +68,7 @@ ls -l
cd .. cd ..
rm joinmarket-clientserver.spec rm -rf build joinmarket-clientserver.spec
rm -rf build
cp contrib/build-linux/pyinstaller-build/joinmarket-clientserver-qt.spec . cp contrib/build-linux/pyinstaller-build/joinmarket-clientserver-qt.spec .
@ -88,9 +87,7 @@ ls -l
cd .. cd ..
rm joinmarket-clientserver-qt.spec rm -rf build joinmarket-clientserver-qt.spec
rm -rf build
cp contrib/build-linux/pyinstaller-build/joinmarket-clientserver-snicker.spec . cp contrib/build-linux/pyinstaller-build/joinmarket-clientserver-snicker.spec .
@ -109,9 +106,7 @@ ls -l
cd .. cd ..
rm joinmarket-clientserver-snicker.spec rm -rf build joinmarket-clientserver-snicker.spec
rm -rf build
cp contrib/build-linux/pyinstaller-build/joinmarket-clientserver-obwatch.spec . cp contrib/build-linux/pyinstaller-build/joinmarket-clientserver-obwatch.spec .
@ -130,6 +125,31 @@ ls -l
cd .. cd ..
rm joinmarket-clientserver-obwatch.spec rm -rf build joinmarket-clientserver-obwatch.spec
git clone https://github.com/zebra-lucky/joinmarket-custom-scripts
cd joinmarket-custom-scripts/
git checkout add-testnet4
cd ..
cp contrib/build-linux/pyinstaller-build/start-dn.spec .
pyinstaller -y start-dn.spec
ls -l dist/joinmarket-clientserver/
cd dist
mv joinmarket-clientserver joinmarket-clientserver-start-dn-${JM_VERSION}
tar -czvf joinmarket-clientserver-start-dn-${JM_VERSION}.tgz \
joinmarket-clientserver-start-dn-${JM_VERSION}
ls -l
cd ..
rm -rf build rm -rf build joinmarket-custom-scripts start-dn.spec

79
contrib/build-linux/pyinstaller-build/start-dn.spec

@ -0,0 +1,79 @@
# -*- mode: python; coding: utf-8 -*-
import itertools
import os
from pathlib import Path
PROJECT_ROOT = os.path.abspath('.')
binaries = []
binaries += [(f'{PROJECT_ROOT}/jmvenv/lib/lib*', '.')]
datas = []
datas += [(f'{PROJECT_ROOT}/jmvenv/lib/python3.12/site-packages/'
f'twisted/plugins/dropin.cache','twisted/plugins')]
datas += [(f'{PROJECT_ROOT}/jmvenv/lib/python3.12/site-packages/'
f'twisted/plugins/__init__.py', 'twisted/plugins')]
datas += [(f'{PROJECT_ROOT}/jmvenv/lib/python3.12/site-packages/'
f'twisted/plugins/txtorcon_endpoint_parser.py', 'twisted/plugins')]
scripts = [
'joinmarket-custom-scripts/start-dn.py',
]
hiddenimports = [
'chromalog.mark.helpers',
'chromalog.mark.helpers.simple',
'twisted.plugins',
# 'twisted.plugins.autobahn_endpoints',
# 'twisted.plugins.autobahn_twistd',
'twisted.plugins.txtorcon_endpoint_parser',
]
a = {}
pyz = {}
exe = {}
for s in scripts:
a[s] = Analysis(
[s],
pathex=[],
binaries=binaries,
datas=datas,
hiddenimports=hiddenimports,
hookspath=[],
hooksconfig={},
runtime_hooks=[],
excludes=[],
noarchive=False,
optimize=0,
)
pyz[s] = PYZ(a[s].pure)
exe[s] = EXE(
pyz[s], a[s].scripts, [],
name=Path(s).stem,
exclude_binaries=True, debug=False, bootloader_ignore_signals=False,
strip=False, upx=True, console=True, disable_windowed_traceback=False,
argv_emulation=False, target_arch=None, codesign_identity=None,
entitlements_file=None,
)
coll = COLLECT(
*list(exe.values()),
list(set(itertools.chain.from_iterable(b.binaries for b in a.values()))),
list(set(itertools.chain.from_iterable(d.datas for d in a.values()))),
strip=False,
upx=True,
upx_exclude=[],
name='joinmarket-clientserver',
)
Loading…
Cancel
Save