From 2b7f1f6fee17c3a1235853e11de5963e419daf8e Mon Sep 17 00:00:00 2001 From: Thanos Apollo Date: Sat, 21 Jan 2023 14:12:27 +0200 Subject: guix: Add testing packages --- .config/guix/guix-packages/.#personal.scm | 1 + .config/guix/guix-packages/.#testing.scm | 1 + .config/guix/guix-packages/testing.scm | 237 ++++++++++++++++++++++++++++++ 3 files changed, 239 insertions(+) create mode 120000 .config/guix/guix-packages/.#personal.scm create mode 120000 .config/guix/guix-packages/.#testing.scm create mode 100644 .config/guix/guix-packages/testing.scm (limited to '.config/guix/guix-packages') diff --git a/.config/guix/guix-packages/.#personal.scm b/.config/guix/guix-packages/.#personal.scm new file mode 120000 index 0000000..6e68dcc --- /dev/null +++ b/.config/guix/guix-packages/.#personal.scm @@ -0,0 +1 @@ +apollo@evilgnu.1347:1673743482 \ No newline at end of file diff --git a/.config/guix/guix-packages/.#testing.scm b/.config/guix/guix-packages/.#testing.scm new file mode 120000 index 0000000..6e68dcc --- /dev/null +++ b/.config/guix/guix-packages/.#testing.scm @@ -0,0 +1 @@ +apollo@evilgnu.1347:1673743482 \ No newline at end of file diff --git a/.config/guix/guix-packages/testing.scm b/.config/guix/guix-packages/testing.scm new file mode 100644 index 0000000..5fa374c --- /dev/null +++ b/.config/guix/guix-packages/testing.scm @@ -0,0 +1,237 @@ +(define-module (my-hello) + #:use-module (guix licenses) + #:use-module (guix packages) + #:use-module (guix build-system gnu) + #:use-module (guix download) + #:use-module (nongnu packages mozilla) + #:use-module (ice-9 regex) + #:use-module (gnu packages) + #:use-module (gnu packages audio) + #:use-module (gnu packages base) + #:use-module (gnu packages bash) + #:use-module (gnu packages compression) + #:use-module (gnu packages curl) + #:use-module (gnu packages databases) + #:use-module (gnu packages django) + #:use-module (gnu packages flex) + #:use-module (gnu packages fonts) + #:use-module (gnu packages fontutils) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages game-development) + #:use-module (gnu packages gettext) + #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) + #:use-module (gnu packages golang) + #:use-module (gnu packages gtk) + #:use-module (gnu packages gstreamer) + #:use-module (gnu packages image) + #:use-module (gnu packages javascript) + #:use-module (gnu packages kde) + #:use-module (gnu packages kde-frameworks) ; extra-cmake-modules + #:use-module (gnu packages linux) + #:use-module (gnu packages mp3) + #:use-module (gnu packages ncurses) + #:use-module (gnu packages pdf) + #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) + #:use-module (gnu packages python-web) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages qt) + #:use-module (gnu packages readline) + #:use-module (gnu packages sdl) + #:use-module (gnu packages sqlite) + #:use-module (gnu packages texinfo) + #:use-module (gnu packages tls) + #:use-module (gnu packages video) + #:use-module (gnu packages xiph) + #:use-module (gnu packages xorg) + #:use-module (gnu packages xml) + #:use-module (guix gexp) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix svn-download) + #:use-module (guix utils) + #:use-module (guix build-system cmake) + #:use-module (guix build-system gnu) + #:use-module (guix build-system go) + #:use-module (guix build-system python) + #:use-module (guix build-system qt) + #:use-module (guix build-system trivial) + #:use-module (srfi srfi-1)) + +;; (define-public my-hello +;; (package +;; (inherit firefox-esr) +;; (name "my-hello") +;; (version "2.10") +;; (source (origin +;; (method url-fetch) +;; (uri (string-append "mirror://gnu/hello/hello-" version +;; ".tar.gz")) +;; (sha256 +;; (base32 +;; "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i")))) +;; (build-system gnu-build-system) +;; (synopsis "Hello, Guix world: An example custom Guix package") +;; (description +;; "GNU Hello prints the message \"Hello, world!\" and then exits. It +;; serves as an example of standard GNU coding practices. As such, it supports +;; command-line arguments, multiple languages, and so on.") +;; (home-page "https://www.gnu.org/software/hello/") +;; (license gpl3+))) +(define-public librewolf + (package + (inherit firefox) + (name "librewolf") + (version "108.0.2-1") + (source + (origin + (method url-fetch) + (uri "https://gitlab.com/api/v4/projects/32320088/packages/generic/librewolf-source/108.0.2-1/librewolf-108.0.2-1.source.tar.gz") + (sha256 + (base32 "0faa4fr2w24zvaa4fd4bj1ikqddnl3kkygf9hha2mxzypdcl233p")))) + (arguments + (substitute-keyword-arguments (package-arguments firefox-esr) + ((#:phases phases) + #~(modify-phases #$phases + (replace 'set-build-id + (lambda _ + (setenv "MOZ_BUILD_DATE"))))))) + (native-inputs + (modify-inputs (package-native-inputs firefox-esr) + (replace "rust" rust-firefox) + (replace "rust:cargo" `(,rust-firefox "cargo")) + ; (replace "node" node-lts) + (replace "rust-cbindgen" rust-cbindgen-0.24))) + (description + "Full-featured browser client built from Firefox source tree, without +the official icon and the name \"firefox\"."))) + +(define-public anki + (package + (name "anki") + ;; Later versions have dependencies on npm packages not yet in Guix. + (version "2.1.36") + (source + (origin + (method url-fetch) + (uri "https://github.com/ankitects/anki/archive/refs/tags/2.1.36.tar.gz") + (sha256 + (base32 "1krrnsp01nms6f2dyfm078imvx2b9synina63l41vbipcznnc1xs")) + (patches (search-patches "anki-mpv-args.patch")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags (list (string-append "PREFIX=" %output)) + #:tests? #f ;no check target + #:modules ((guix build gnu-build-system) + (guix build utils) + (ice-9 match)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-update-check + ;; Don't ‘phone home’ unasked to check for updates. + (lambda _ + (substitute* "aqt/update.py" + (("requests\\.post") + "throw.an.exception.instead")) + #t)) + (delete 'configure) ;no configure script + (add-after 'install 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin")) + ;; List of paths to the site-packages directories of Python + ;; library inputs. + (site-packages + (map (lambda (pyinput) + (string-append + (cdr pyinput) + "/lib/python" + ;; Calculate the python version to avoid breaking + ;; with future 3.X releases. + ,(version-major+minor + (package-version python-wrapper)) + "/site-packages")) + (filter (match-lambda + ((label . _) + (string-prefix? "python-" label))) + inputs))) + (qtwebengineprocess + (search-input-file inputs + "lib/qt5/libexec/QtWebEngineProcess"))) + ;; The program fails to find the QtWebEngineProcess program, so + ;; we set QTWEBENGINEPROCESS_PATH to help it. PYTHONPATH is + ;; wrapped to avoid declaring Python libraries as propagated + ;; inputs. + (for-each (lambda (program) + (wrap-program program + `("QTWEBENGINEPROCESS_PATH" = + (,qtwebengineprocess)) + `("PATH" prefix (,(string-append + (assoc-ref inputs "mpv") + "/bin"))) + `("GUIX_PYTHONPATH" = ,site-packages))) + (find-files bin "."))) + #t))))) + (native-inputs + (list xdg-utils)) + (inputs + `(("lame" ,lame) + ("mpv" ,mpv) + ("python" ,python-wrapper) + ("python-beautifulsoup4" ,python-beautifulsoup4) + ("python-decorator" ,python-decorator) + ("python-distro" ,python-distro) + ("python-jsonschema" ,python-jsonschema) + ("python-markdown" ,python-markdown) + ("python-pyaudio" ,python-pyaudio) + ;; `python-pyqtwebengine' must precede `python-pyqt' in PYTHONPATH. + ("python-pyqtwebengine" ,python-pyqtwebengine) + ("python-pyqt" ,python-pyqt-without-qtwebkit) + ("python-requests" ,python-requests) + ("python-send2trash" ,python-send2trash) + ("python-sip" ,python-sip) + ;; `qtwebengine-5' is included in `pyqtwebengine', included here for easy + ;; wrapping. + ("qtwebengine-5" ,qtwebengine-5))) + (home-page "https://apps.ankiweb.net/") + (synopsis "Powerful, intelligent flash cards") + (description "Anki is a program which makes remembering things +easy. Because it's a lot more efficient than traditional study +methods, you can either greatly decrease your time spent studying, or +greatly increase the amount you learn. + +Anyone who needs to remember things in their daily life can benefit +from Anki. Since it is content-agnostic and supports images, audio, +videos and scientific markup (via LaTeX), the possibilities are +endless. For example: +@itemize +@item Learning a language +@item Studying for medical and law exams +@item Memorizing people's names and faces +@item Brushing up on geography +@item Mastering long poems +@item Even practicing guitar chords! +@end itemize") + (license gpl3+))) + + +(define-public starship + (package + (inherit firefox) + (name "starship") + (version "1.12.0") + (source + (origin + (method url-fetch) + (uri "https://github.com/starship/starship/archive/refs/tags/v1.12.0.tar.gz") + (sha256 + (base32 "0faa4fr2w24zvaa4fd4bj1ikqddnl3kkygf9hha2mxzypdcl233p")))) + (description + "Full-featured browser client built from Firefox source tree, without +the official icon and the name \"firefox\"."))) + + +starship -- cgit v1.2.3