diff options
author | Ben Sturmfels <ben@sturm.com.au> | 2021-03-30 15:55:56 +1100 |
---|---|---|
committer | Ben Sturmfels <ben@sturm.com.au> | 2021-03-30 15:55:56 +1100 |
commit | b1b98281b5a34ab653779f7c34300b20732127d9 (patch) | |
tree | 7f7478426dce2c33a8c62c2717d741c7c7a5d0d9 /guix-env.scm | |
parent | f28ea2b9bc795e830c763236c5171f700efbc646 (diff) | |
download | mediagoblin-b1b98281b5a34ab653779f7c34300b20732127d9.tar.lz mediagoblin-b1b98281b5a34ab653779f7c34300b20732127d9.tar.xz mediagoblin-b1b98281b5a34ab653779f7c34300b20732127d9.zip |
Hack in an upgraded python-wtforms for Guix.
Diffstat (limited to 'guix-env.scm')
-rw-r--r-- | guix-env.scm | 56 |
1 files changed, 47 insertions, 9 deletions
diff --git a/guix-env.scm b/guix-env.scm index f5f3cac3..f4f974ad 100644 --- a/guix-env.scm +++ b/guix-env.scm @@ -30,23 +30,28 @@ ;;; 1. Submit the below python-soundfile package to Guix after libsndfile ;;; updates in Guix core-updates branch have been merged into master. ;;; -;;; 2. Get test suite running with Guix's pytest, pytest-xdist and pytest-forked. +;;; 2. Refine and submit the below upgraded python-wtforms 2.3.3 to Guix. ;;; -;;; 3. Upgrade Guix's python-wtforms +;;; 3. Get test suite running with Guix's pytest, pytest-xdist and pytest-forked. ;;; -;;; 3. H264 videos won't transcode: "GStreamer: missing H.264 decoder". +;;; 4. H264 videos won't transcode: "GStreamer: missing H.264 decoder". ;;; -;;; 4. Don't have NPM in this environment yet. Maybe we use it, or maybe we -;;; modify MediaGoblin to provide most functionality without it? +;;; 5. Look at Celery and Redis as a Celery broker - RabbitMQ isn't currenly +;;; packaged for Guix. ;;; -;;; 5. Haven't even looked at running celery. +;;; 6. Don't have NPM in this environment yet. Possibly rewrite MediaGoblin's +;;; JavaScript code not to use jQuery. Possibly improve the +;;; no-bundled-JavaScript video/audio playing experience. +;;; +;;; 7. Package MediaGoblin itself as a Guix service. Look at adding a PostgreSQL +;;; database instead of sqlite3. +;;; +;;; ======================================== ;;; ;;; With `guix environment' you can use guix as kind of a universal ;;; virtualenv, except a universal virtualenv with magical time traveling ;;; properties and also, not just for Python. ;;; -;;; ======================================== -;;; ;;; Assuming you have Guix installed, run: ;;; ;;; guix environment -l guix-env.scm --container --network --share=$HOME/.bash_history @@ -91,7 +96,6 @@ ;;; rm -rf bin include lib lib64 pyvenv.cfg ;;; python3 -m venv --system-site-packages . && bin/python setup.py develop --no-deps ;;; bin/python -m pip install --force-reinstall pytest pytest-xdist pytest-forked -;;; bin/python -m pip install --force-reinstall 'wtforms>2.1,<3.0' ;;; ;;; ... wait whaaat, what's that venv line?! I thought you said this ;;; was a reasonable virtualenv replacement! Well it is and it will @@ -140,6 +144,7 @@ (gnu packages base) (gnu packages certs) (gnu packages check) + (gnu packages compression) ; unzip for embedded python-wtforms (gnu packages databases) (gnu packages libffi) ; cffi for embedded python-soundfile (gnu packages openldap) @@ -167,6 +172,39 @@ ;; ourselves to... ;; ================================================================= +;; Upgraded the Guix version 2.1 to 2.3 for compatibility with current +;; MediaGoblin. +(define python-wtforms + (package + (name "python-wtforms") + (version "2.3.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "WTForms" version)) + (sha256 + (base32 + ;; Interesting, if this has is that of a lower version, it blindly + ;; ignores the version number above and you silently get the older + ;; version. + "17427m7p9nn9byzva697dkykykwcp2br3bxvi8vciywlmkh5s6c1")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ; TODO: Fix tests for upgraded version. + (propagated-inputs + `(("python-markupsafe" ,python-markupsafe))) + (native-inputs + `(("unzip" ,unzip))) ; CHECK WHETHER NEEDED - not in `guix import` but is in old package. + (home-page "http://wtforms.simplecodes.com/") + (synopsis + "Form validation and rendering library for Python web development") + (description + "WTForms is a flexible forms validation and rendering library +for Python web development. It is very similar to the web form API +available in Django, but is a standalone package.") + (license license:bsd-3))) + + ;; Copied from guix/gnu/packages/pulseaudio.scm in the core-updates branch which ;; adds flac/ogg/vorbis/opus support. This is required for building ;; python-soundfile (March 2021). |