diff --git a/ajatt/packages/dictionaries.scm b/ajatt/packages/dictionaries.scm index 2437266..431c1f0 100644 --- a/ajatt/packages/dictionaries.scm +++ b/ajatt/packages/dictionaries.scm @@ -51,16 +51,16 @@ (define-public goldendict-ng (package (name "goldendict-ng") - (version "24.02.22") + (version "24.02.23") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/xiaoyifang/goldendict-ng.git") - (commit "cb37a91df8add30f991fdcfc53861fb4d9f361e7"))) + (commit "e78aff27cb54506bd1ba495420625955fe10b868"))) (sha256 - (base32 "0wfb17ac4y24wwqishffwsa8n3s4zmvjg5h48hiawa40mp4w99lk")))) + (base32 "0b0aqakzapjib77a3gizyqy2zgkwfsxlfcnf9wb0fidqry6k39rn")))) (build-system cmake-build-system) (arguments (list diff --git a/ajatt/packages/dictionaries.scm~ b/ajatt/packages/dictionaries.scm~ new file mode 100644 index 0000000..7fa4020 --- /dev/null +++ b/ajatt/packages/dictionaries.scm~ @@ -0,0 +1,348 @@ +(define-module (ajatt packages dictionaries) + #:use-module (gnu packages cmake) + #:use-module (gnu packages compression) + #:use-module (gnu packages dictionaries) + #:use-module (gnu packages education) + #:use-module (gnu packages fontutils) + #:use-module (gnu packages fonts) + #:use-module (gnu packages gstreamer) + #:use-module (gnu packages hunspell) + #:use-module (gnu packages icu4c) + #:use-module (gnu packages image) + #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) + #:use-module ((gnu packages qt) #:hide (qtspeech)) + #:use-module (gnu packages search) + #:use-module (gnu packages textutils) + #:use-module (gnu packages version-control) + #:use-module (gnu packages video) + #:use-module (gnu packages vulkan) + #:use-module (gnu packages web) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xiph) + #:use-module (gnu packages xorg) + #:use-module (guix build-system cmake) + #:use-module (guix build-system gnu) + #:use-module (guix gexp) + #:use-module (guix utils) + #:use-module (guix git-download) + #:use-module (guix packages) + #:use-module (ajatt packages qt) + #:use-module (ajatt packages suckless) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages search) + #:use-module (gnu packages web) + #:use-module (gnu packages gcc) + #:use-module (gnu packages tls) + #:use-module (gnu packages cpp) + #:use-module (gnu packages glib) + #:use-module (gnu packages nss) + #:use-module (gnu packages datastructures) + #:use-module (gnu packages certs) + #:use-module (gnu packages check) + #:use-module (guix build-system qt) + #:use-module (gnu packages curl) + #:use-module (guix utils) + #:use-module (guix search-paths) + #:use-module (guix build-system cmake) + #:use-module (guix build-system gnu) + #:use-module (guix download)) + +(define-public goldendict-ng + (package + (name "goldendict-ng") + (version "24.02.23") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/xiaoyifang/goldendict-ng.git") + (commit "e78aff27cb54506bd1ba495420625955fe10b868"))) + (sha256 + (base32 "1wfb17ac4y24wwqishffwsa8n3s4zmvjg5h48hiawa40mp4w99lk")))) + (build-system cmake-build-system) + (arguments + (list + #:make-flags #~(list "-j" "7") + #:cmake cmake + #:tests? #f + #:configure-flags + #~(list "-DCMAKE_BUILD_TYPE=Release") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'absolutize-qt-headers + (lambda _ + (let ((qtbase-file + (lambda (path) + (string-append "\"" #$qtbase path "\"")))) + (substitute* "src/ui/mainwindow.cc" + (("") + (qtbase-file + "/include/qt6/QtPrintSupport/QPrinter")) + (("") + (qtbase-file + "/include/qt6/QtPrintSupport/QPageSetupDialog")) + (("") + (qtbase-file + "/include/qt6/QtPrintSupport/QPrintPreviewDialog")) + (("") + (qtbase-file + "/include/qt6/QtPrintSupport/QPrintDialog")))))) + (add-after 'wrap 'wrap-qt-process-path + (lambda* (#:key inputs outputs #:allow-other-keys) + (wrap-program (search-input-file outputs "bin/goldendict") + `("QTWEBENGINE_RESOURCES_PATH" = + (,(search-input-directory + inputs "/share/qt6/resources"))) + `("QTWEBENGINEPROCESS_PATH" = + (,(search-input-file + inputs "/lib/qt6/libexec/QtWebEngineProcess"))))))))) + (native-inputs + (list hunspell + icu4c + libeb + libtiff + libvorbis + libxkbcommon + libxkbfile + libxtst + libzim + lzo + opencc + pkg-config + qt5compat + gstreamer + qtspeech + qtsvg + qttools + qtwebview + qtx11extras + vulkan-headers + (list xz "static") + zlib + (list zstd "lib"))) + (inputs + (list ao + bzip2 + ffmpeg + xapian + qtmultimedia + qtwebengine + gstreamer + qtbase + xproto)) + (synopsis "A feature-rich dictionary lookup program") + (description + "GoldenDict is a feature-rich dictionary lookup program, +supporting multiple dictionary formats (StarDict, Babylon, Lingvo, Dictd, AARD, +MDict, SDict) and online dictionaries, featuring perfect article rendering with +the complete markup, illustrations and other content retained, and allowing you +to type in words without any accents or correct case.") + (home-page "https://xiaoyifang.github.io/goldendict-ng/") + (license + (list license:gpl3+ + license:zlib)))) + +(define-public suckless-dictpopup + (package + (name "suckless-dictpopup") + (version "2.5_stable") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/KonstantinDjairo/suckless_dictpopup.git") + (commit "5309e184d0a68bad266ca0f4bef7c3d73ccc5eef"))) + (sha256 + (base32 "1pnx25s101ydldcvsrh79imkpirw5j5n9qzp9pzi37fz1g1xbb1k")))) + (build-system gnu-build-system) + (inputs + (list freetype + libxft + libx11 + font-google-noto-sans-cjk + libxinerama + perl + sdcv + sselp)) + (arguments + (list #:tests? #f + #:make-flags + #~(list (string-append "CC=" #$(cc-for-target)) + (string-append "PREFIX=" #$output) + (string-append "CPPFLAGS=-I" + (assoc-ref %build-inputs "freetype") + "/include/freetype2")) + #:phases + #~(modify-phases %standard-phases + (replace 'configure + (lambda _ (copy-file "config.def.h" "config.h")))))) + (synopsis "A very lightweight popup dictionary written in C.") + (description "suckless_dictpopup is a very lightweight program to show popups +with the dictionary entries of the selected text. It uses Xlib for displaying +the popup and sdcv for the dictionary lookup.") + (home-page "https://github.com/KonstantinDjairo/suckless_dictpopup") + (license license:bsd-0))) + + + +(define-public catch2-full + (package + (name "Catch2") + (version "3.5.2") + (source (origin + (method url-fetch) + (uri "https://github.com/catchorg/Catch2/archive/refs/tags/v3.5.2.tar.gz") + (sha256 (base32 "0vhc8zg69idw8lp7vr4hdkhsf9scqba33wizz6rl0vxpksj47596")))) + (build-system cmake-build-system) + (arguments ( list #:cmake cmake #:tests? #f)) + + (native-inputs + (list gcc-13 pkg-config)) + + (synopsis "Catch2 testing for C++") + (description + "Catch2 is mainly a unit testing framework for C++, but it also + provides basic micro-benchmarking features, and simple BDD macros. + + Catch2's main advantage is that using it is both simple and natural. + Test names do not have to be valid identifiers, assertions look like + normal C++ boolean expressions, and sections provide a nice and local + way to share set-up and tear-down code in tests.") + (home-page "https://github.com/catchorg/Catch2") + (license + (list license:boost1.0)))) + + +(define-public libcpr + (package + (name "cpr") + (version "1.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://codeberg.org/hashirama/libcpr.git") + (commit "528b3b235e9bf4c7e1b66e1b8d3a4451ba37d5e0"))) + (sha256 (base32 "0040d3v4fjmjs253dc8cwqh5k484pvjybdq1rvwzmg0bwi0invjd")))) + (build-system cmake-build-system) + (arguments + ( list #:cmake cmake #:tests? #f + )) + + + (native-inputs + (list + openssl + gcc-13 + curl + pkg-config + )) + + (inputs + (list + curl + openssl + )) + + (synopsis "C++ Requests: Curl for People ") + (description + "C++ Requests is a simple wrapper around libcurl inspired by the excellent Python Requests project. + + Despite its name, libcurl's easy interface is anything but, and making mistakes, + misusing it is a common source of error and frustration. Using the more expressive + language facilities of C++17 'or C++11 in case you use cpr < 1.10.0', this library + captures the essence of making network calls into a few concise idioms.") + (home-page "https://github.com/libcpr/cpr") + (license + (list license:expat)))) + +(define-public rdricpp + (package + (name "rdricpp") + (version "1.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://codeberg.org/hashirama/rdricpp.git") + (commit "63aa0e11e7244cbc06cbecabbc1ac96faee9dabc"))) + (sha256 (base32 "0iz8gw7y1ybmds5d9wkzd15gj78k1flxziqn9wm424mhfp80h8bj")))) + + (build-system cmake-build-system) + (arguments + ( list #:cmake cmake + #:tests? #f + #:configure-flags + #~(list "-DGUIX=1") )) + + + (native-inputs + (list gcc-13 pkg-config)) + (inputs + (list catch2-full)) + + (synopsis "Rikaitan Deinflector Reference Implementation in C++.") + (description + "Rikaitan Deinflector Reference Implementation in C++.") + (home-page "https://codeberg.org/hashirama/rdricpp") + (license + (list license:gpl3+ + license:zlib)))) + + +(define-public gd-tools + (package + (name "gd-tools") + (version "1.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://codeberg.org/hashirama/gd-tools.git") + (commit "a44fc99f9a4ae716b89afefbc96b77abcbe89307"))) + (sha256 (base32 "0jpg7v3alfd3ls352vnp9wjrk2sd2jl81l2lzrqvank78f8jpwnd")))) + + (build-system cmake-build-system) + (arguments + ( list #:cmake cmake + ;;#:tests? #f + #:configure-flags + #~(list "-DGUIX=1") + ) + ) + + + (native-inputs + (list + + openssl + rdricpp + zlib + glib + gcc-13 + curl + pkg-config + + )) + (inputs + (list + nlohmann-json + curl + openssl + nss-certs + marisa + catch2-full + libcpr + )) + (synopsis "A set of helpful programs to enhance goldendict for immersion learning.") + (description + "A set of helpful programs to enhance goldendict for immersion learning.") + (home-page "https://codeberg.org/hashirama/gd-tools/") + (license + (list license:gpl3+ + license:zlib)))) + +goldendict-ng