easybuild-easyblocks icon indicating copy to clipboard operation
easybuild-easyblocks copied to clipboard

simplify `Tkinter` install step

Open branfosj opened this issue 1 year ago • 1 comments

(created using eb --new-pr)

Before:

  1. Install Tkinter into install dir
  2. Create temp dir in build dir
  3. Copy only the Tkinter parts from install dir to temp dir
  4. Delete install dir
  5. Copy contents of temp dir into a new install dir

New and simplified:

  1. Install Tkinter into temp dir
  2. Make install dir
  3. Copy relevant parts of Tkinter from temp dir into install dir

This also solves a problem we were seeing when the install directory is on an enhanced permissions filesystem but the build dir is not. We hit an issue where this sometimes results in an inacessible directory:

ls: cannot access '/dev/shm/branfosj/build-2023a/Tkinter/3.11.3/GCCcore-12.3.0/tmppyfpks_x/tkinter/__pycache__/ttk.cpython-311.pyc': Permission denied
-????????? ? ? ? ?            ? ttk.cpython-311.pyc

branfosj avatar Jul 04 '24 12:07 branfosj

Test report by @branfosj

Overview of tested easyconfigs (in order)

  • SUCCESS Tkinter-3.11.5-GCCcore-13.2.0.eb
  • SUCCESS libffi-3.4.2-GCCcore-11.2.0.eb
  • SUCCESS bzip2-1.0.8-GCCcore-11.2.0.eb
  • SUCCESS Tcl-8.6.11-GCCcore-11.2.0.eb
  • SUCCESS UnZip-6.0-GCCcore-11.2.0.eb
  • SUCCESS SQLite-3.36-GCCcore-11.2.0.eb
  • SUCCESS GMP-6.2.1-GCCcore-11.2.0.eb
  • SUCCESS Python-2.7.18-GCCcore-11.2.0.eb
  • SUCCESS gettext-0.21-GCCcore-11.2.0.eb
  • SUCCESS intltool-0.51.0-GCCcore-11.2.0.eb
  • SUCCESS Python-3.9.6-GCCcore-11.2.0-bare.eb
  • SUCCESS cURL-7.78.0-GCCcore-11.2.0.eb
  • SUCCESS git-2.33.1-GCCcore-11.2.0-nodocs.eb
  • SUCCESS libarchive-3.5.1-GCCcore-11.2.0.eb
  • SUCCESS CMake-3.21.1-GCCcore-11.2.0.eb
  • SUCCESS Rust-1.54.0-GCCcore-11.2.0.eb
  • SUCCESS Python-3.9.6-GCCcore-11.2.0.eb
  • SUCCESS Ninja-1.10.2-GCCcore-11.2.0.eb
  • SUCCESS Meson-0.58.2-GCCcore-11.2.0.eb
  • SUCCESS libiconv-1.16-GCCcore-11.2.0.eb
  • SUCCESS Doxygen-1.9.1-GCCcore-11.2.0.eb
  • SUCCESS gperf-3.1-GCCcore-11.2.0.eb
  • SUCCESS util-linux-2.37-GCCcore-11.2.0.eb
  • SUCCESS libpng-1.6.37-GCCcore-11.2.0.eb
  • SUCCESS Brotli-1.0.9-GCCcore-11.2.0.eb
  • SUCCESS freetype-2.11.0-GCCcore-11.2.0.eb
  • SUCCESS fontconfig-2.13.94-GCCcore-11.2.0.eb
  • SUCCESS X11-20210802-GCCcore-11.2.0.eb
  • SUCCESS Tk-8.6.11-GCCcore-11.2.0.eb
  • SUCCESS Tkinter-2.7.18-GCCcore-11.2.0.eb
  • SUCCESS Tkinter-3.9.6-GCCcore-11.2.0.eb

Build succeeded for 31 out of 31 (3 easyconfigs in total) bear-pg0105u03a - Linux RHEL 8.6, x86_64, Intel(R) Xeon(R) Platinum 8360Y CPU @ 2.40GHz (icelake), Python 3.6.8 See https://gist.github.com/branfosj/3456148489bb8440201a9f5358ae47ca for a full test report.

branfosj avatar Jul 04 '24 16:07 branfosj

@boegelbot please test @ generoso EB_ARGS="Tkinter-2.7.18-GCCcore-11.2.0.eb Tkinter-3.9.6-GCCcore-11.2.0.eb Tkinter-3.10.4-GCCcore-11.3.0.eb Tkinter-3.10.8-GCCcore-12.2.0.eb Tkinter-3.11.3-GCCcore-12.3.0.eb Tkinter-3.11.5-GCCcore-13.2.0.eb"

boegel avatar Jul 31 '24 14:07 boegel

@boegel: Request for testing this PR well received on login1

PR test command 'EB_PR=3382 EB_ARGS="Tkinter-2.7.18-GCCcore-11.2.0.eb Tkinter-3.9.6-GCCcore-11.2.0.eb Tkinter-3.10.4-GCCcore-11.3.0.eb Tkinter-3.10.8-GCCcore-12.2.0.eb Tkinter-3.11.3-GCCcore-12.3.0.eb Tkinter-3.11.5-GCCcore-13.2.0.eb" EB_CONTAINER= EB_REPO=easybuild-easyblocks /opt/software/slurm/bin/sbatch --job-name test_PR_3382 --ntasks=4 ~/boegelbot/eb_from_pr_upload_generoso.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 13979

Test results coming soon (I hope)...

- notification for comment with ID 2260607375 processed

Message to humans: this is just bookkeeping information for me, it is of no use to you (unless you think I have a bug, which I don't).

boegelbot avatar Jul 31 '24 14:07 boegelbot

Test report by @boegelbot

Overview of tested easyconfigs (in order)

  • SUCCESS Tkinter-2.7.18-GCCcore-11.2.0.eb
  • SUCCESS Tkinter-3.9.6-GCCcore-11.2.0.eb
  • SUCCESS Tkinter-3.10.4-GCCcore-11.3.0.eb
  • SUCCESS Tkinter-3.10.8-GCCcore-12.2.0.eb
  • SUCCESS Tkinter-3.11.3-GCCcore-12.3.0.eb
  • SUCCESS Tkinter-3.11.5-GCCcore-13.2.0.eb

Build succeeded for 6 out of 6 (6 easyconfigs in total) cns1 - Linux Rocky Linux 8.9, x86_64, Intel(R) Xeon(R) CPU E5-2667 v3 @ 3.20GHz (haswell), Python 3.6.8 See https://gist.github.com/boegelbot/eea91d0736e3c4b255a85df0620356fe for a full test report.

boegelbot avatar Jul 31 '24 15:07 boegelbot