aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2020-07-12 18:25:56 -0400
committerRob Austein <sra@hactrn.net>2020-07-12 18:25:56 -0400
commit9e6b0d1117e21f2e6d092e337c5c522726016467 (patch)
treecc4eb37125fc6f1c3a173d5e17a0ec14ab58555f /scripts
parent37329250395aa3ac724fca99bbd2de01efea10e1 (diff)
Attempt to go Python3-only
Ubuntu 20.04 no longer really supports Python 2, so we'd have to fork the packaging code if we wanted to keep support for Python 2 elsewhere. Given that Python 3 has been around for a more than a decade and that Python 2 was formally EOLed more than six months ago as of this writing, this seems like an unnecessary complication. The biggest change is rewriting the Homebrew formula for Python 3.
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/build-debian-control-files.py13
-rwxr-xr-xscripts/build-firmware-package.py2
-rwxr-xr-xscripts/build-homebrew-formula.py14
-rwxr-xr-xscripts/build-shadow-tree.py2
4 files changed, 15 insertions, 16 deletions
diff --git a/scripts/build-debian-control-files.py b/scripts/build-debian-control-files.py
index c06055d..46958ea 100755
--- a/scripts/build-debian-control-files.py
+++ b/scripts/build-debian-control-files.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
import subprocess
import argparse
@@ -25,23 +25,18 @@ Priority: optional
Standards-Version: 3.9.6
Build-Depends: debhelper (>= 9),
dh-python,
- python (>= 2.7),
- python-yaml,
+ python3-yaml,
python3
Homepage: http://trac.cryptech.is/wiki
Package: {args.package}
Architecture: any
-Depends: python,
- python-serial (>= 3.0),
- python-tornado (>= 4.0),
- python-crypto,
- python3,
+Depends: python3,
python3-serial (>= 3.0),
python3-tornado (>= 4.0),
python3-crypto,
${{misc:Depends}},
- ${{python:Depends}},
+ ${{python3:Depends}},
${{shlibs:Depends}}
{conflicts}\
Description: Cryptech Project open-source cryptographic software and firmware.
diff --git a/scripts/build-firmware-package.py b/scripts/build-firmware-package.py
index 9a58970..659a63f 100755
--- a/scripts/build-firmware-package.py
+++ b/scripts/build-firmware-package.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
import subprocess
import tempfile
diff --git a/scripts/build-homebrew-formula.py b/scripts/build-homebrew-formula.py
index 54cdcae..852b4b6 100755
--- a/scripts/build-homebrew-formula.py
+++ b/scripts/build-homebrew-formula.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
# Yes, this is a Python program writing a Ruby program.
@@ -32,7 +32,7 @@ template = '''\
# code, however, is what Homebrew considers "bindings", so we install
# those where user scripts as well as our own can find them...then we
# add a symlink so that our scripts can find our bindings regardless
-# of which copy of Python 2.7 Homebrew decides we should use this week.
+# of which copy of Python Homebrew decides we should use this week.
#
# We have to build our own software before installing our Python code,
# because at least one of the Python modules we install
@@ -54,6 +54,8 @@ class {classname} < Formula
url "{url}"
sha256 "{sha256}"
+ depends_on "python@3.8"
+
{conflicts}
resource "pyserial" do
@@ -88,11 +90,13 @@ class {classname} < Formula
def install
- ENV.prepend_create_path "PYTHONPATH", libexec/"vendor/lib/python2.7/site-packages"
+ xy = Language::Python.major_minor_version "python3"
+
+ ENV.prepend_create_path "PYTHONPATH", libexec/"vendor/lib/python#{xy}/site-packages"
resources.each do |r|
r.stage do
- system "python", *Language::Python.setup_install_args(libexec/"vendor")
+ system "python3", *Language::Python.setup_install_args(libexec/"vendor")
end
end
@@ -103,7 +107,7 @@ class {classname} < Formula
system "python", *Language::Python.setup_install_args(prefix)
bin.env_script_all_files(libexec/"bin", :PYTHONPATH => ENV["PYTHONPATH"])
- ln_s lib/"python2.7/site-packages/cryptech", libexec/"vendor/lib/python2.7/site-packages/cryptech"
+ ln_s lib/"python#{xy}/site-packages/cryptech", libexec/"vendor/lib/python#{xy}/site-packages/cryptech"
share.install "cryptech-alpha-firmware.tar.gz"
lib.install "sw/pkcs11/libcryptech-pkcs11.dylib"
diff --git a/scripts/build-shadow-tree.py b/scripts/build-shadow-tree.py
index 378797f..0f3a4a1 100755
--- a/scripts/build-shadow-tree.py
+++ b/scripts/build-shadow-tree.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
# Create a symlink build tree like the old X11 project "lndir" program.
#