From 5137681e08cd2ffdff7c5e6ea44376cb98bf4fb6 Mon Sep 17 00:00:00 2001 From: Kimapr Date: Fri, 11 Apr 2025 17:38:57 +0500 Subject: [PATCH] BREAK EVERYTHING --- guix/build-self.scm | 2 + kimapr/packages/misc.scm | 139 ++++++++++++++--------------------- kimapr/packages/override.scm | 42 +++++++++++ 3 files changed, 100 insertions(+), 83 deletions(-) create mode 100644 guix/build-self.scm create mode 100644 kimapr/packages/override.scm diff --git a/guix/build-self.scm b/guix/build-self.scm new file mode 100644 index 0000000..b3025e4 --- /dev/null +++ b/guix/build-self.scm @@ -0,0 +1,2 @@ +(define-module (guix build-self)) +; erm. diff --git a/kimapr/packages/misc.scm b/kimapr/packages/misc.scm index 921da65..0147252 100644 --- a/kimapr/packages/misc.scm +++ b/kimapr/packages/misc.scm @@ -1,11 +1,8 @@ (define-module (kimapr packages misc) - #:use-module (guix gexp) #:use-module (guix utils) + #:use-module (guix build-system meson) #:use-module (guix download) #:use-module (guix packages) - #:use-module (gnu packages lua) - #:use-module (gnu packages video) - #:use-module (gnu packages audio) #:use-module (gnu packages freedesktop) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) @@ -16,89 +13,65 @@ #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) #:use-module ((guix licenses) - #:prefix license:) - #:export (lua ffmpeg mpv accerciser)) + #:prefix license:)) -(package - (name "accerciser") - (version "3.46.2") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://gnome/sources/" - name - "/" - (version-major+minor version) - "/" - name - "-" - version - ".tar.xz")) - (sha256 - (base32 "03kpjrs890wxmm1pffh3n9k3q1d5hrzplzsg7ilqgr943x2nkx5g")))) - (build-system meson-build-system) - (native-inputs (list gobject-introspection - yelp-tools - desktop-file-utils - `(,gtk+ "bin") - `(,glib "bin") - pkg-config - appstream)) - (arguments - '(#:phases (modify-phases %standard-phases - (add-after 'install 'wrap-orca - (lambda* (#:key outputs #:allow-other-keys) - (wrap-program (search-input-file outputs "bin/accerciser") - `("GI_TYPELIB_PATH" ":" prefix - (,(getenv "GI_TYPELIB_PATH"))) - `("GUIX_PYTHONPATH" ":" prefix - (,(getenv "GUIX_PYTHONPATH"))) - `("GSETTINGS_SCHEMA_DIR" = - (,(string-append (assoc-ref outputs "out") - "/share/glib-2.0/schemas"))))))))) - (inputs (list gtk+ - glib - gnu-gettext - python-3.10 - python-pygobject - python-dbus - python-pyatspi - python-pyxdg - python-pycairo - python-ipython)) - (synopsis "Interactive accessibility explorer") - (home-page "https://gitlab.gnome.org/GNOME/accerciser") - (description - "Accerciser is an interactive Python accessibility explorer for the GNOME +(define-public accerciser + (package + (name "accerciser") + (version "3.46.2") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" + name + "/" + (version-major+minor version) + "/" + name + "-" + version + ".tar.xz")) + (sha256 + (base32 "03kpjrs890wxmm1pffh3n9k3q1d5hrzplzsg7ilqgr943x2nkx5g")))) + (build-system meson-build-system) + (native-inputs (list gobject-introspection + yelp-tools + desktop-file-utils + `(,gtk+ "bin") + `(,glib "bin") + pkg-config + appstream)) + (arguments + '(#:phases (modify-phases %standard-phases + (add-after 'install 'wrap-orca + (lambda* (#:key outputs #:allow-other-keys) + (wrap-program (search-input-file outputs + "bin/accerciser") + `("GI_TYPELIB_PATH" ":" prefix + (,(getenv "GI_TYPELIB_PATH"))) + `("GUIX_PYTHONPATH" ":" prefix + (,(getenv "GUIX_PYTHONPATH"))) + `("GSETTINGS_SCHEMA_DIR" = + (,(string-append (assoc-ref outputs "out") + "/share/glib-2.0/schemas"))))))))) + (inputs (list gtk+ + glib + gnu-gettext + python-3.10 + python-pygobject + python-dbus + python-pyatspi + python-pyxdg + python-pycairo + python-ipython)) + (synopsis "Interactive accessibility explorer") + (home-page "https://gitlab.gnome.org/GNOME/accerciser") + (description + "Accerciser is an interactive Python accessibility explorer for the GNOME desktop. It uses AT-SPI2 to inspect and control widgets, allowing you to check if an application is providing correct information to assistive technologies and automated test frameworks. Accerciser has a simple plugin framework which you can use to create custom views of accessibility information. In essence, Accerciser is a next generation at-poke tool.") - (license license:bsd-3)) - -(define-public lua - (package - (inherit lua-5.4) - (arguments - (substitute-keyword-arguments (package-arguments lua-5.4) - ((#:make-flags flags) - (append (list-head flags - (- (length flags) 1)) - '("linux-readline"))))))) - -(define-public ffmpeg - (package - (inherit ffmpeg) - (arguments - (substitute-keyword-arguments (package-arguments ffmpeg) - ((#:configure-flags flags) - #~(cons* "--enable-libopenmpt" - #$flags)))) - (inputs (modify-inputs (package-inputs ffmpeg) - (prepend libopenmpt))))) - -(define-public mpv - ((package-input-rewriting `((,ffmpeg unquote ffmpeg-mod))) - mpv)) + (license license:bsd-3))) diff --git a/kimapr/packages/override.scm b/kimapr/packages/override.scm new file mode 100644 index 0000000..a54435a --- /dev/null +++ b/kimapr/packages/override.scm @@ -0,0 +1,42 @@ +(define-module (kimapr packages override) + #:use-module (guix gexp) + #:use-module (guix utils) + #:use-module (guix packages) + #:use-module ((gnu packages lua) + #:prefix gnu:) + #:use-module ((gnu packages video) + #:prefix gnu:) + #:use-module ((gnu packages audio) + #:prefix gnu:) + #:replace (lua-5.4 ffmpeg-7 ffmpeg mpv)) + +;; Guix won't merge my patch for this after 1 grillion years +(define lua-5.4 + (package + (inherit gnu:lua-5.4) + (arguments + (substitute-keyword-arguments (package-arguments gnu:lua-5.4) + ((#:make-flags flags) + (append (list-head flags + (- (length flags) 1)) + '("linux-readline"))))))) + +(define (unfuck-ffmpeg ffmpeg) + (package + (inherit ffmpeg) + (arguments + (substitute-keyword-arguments (package-arguments ffmpeg) + ((#:configure-flags flags) + #~(cons* "--enable-libopenmpt" + #$flags)))) + (inputs (modify-inputs (package-inputs ffmpeg) + (prepend gnu:libopenmpt))))) + +(define ffmpeg-7 + (unfuck-ffmpeg gnu:ffmpeg-7)) +(define ffmpeg + (unfuck-ffmpeg gnu:ffmpeg)) + +(define mpv + ((package-input-rewriting `((,gnu:ffmpeg unquote ffmpeg))) + gnu:mpv))