* [bug#64983] [PATCH v2 1/4] gnu: highlight: Update to 4.7.
2023-08-07 14:05 ` [bug#64983] [PATCH v2 0/4] gnu: highlight: Add gui output gemmaro
@ 2023-08-07 14:05 ` gemmaro
2023-08-07 14:05 ` [bug#64983] [PATCH v2 2/4] gnu: highlight: Use new package style gemmaro
` (3 subsequent siblings)
4 siblings, 0 replies; 11+ messages in thread
From: gemmaro @ 2023-08-07 14:05 UTC (permalink / raw)
To: 64983; +Cc: gemmaro
* gnu/packages/pretty-print.scm (highlight): Update to 4.7.
---
gnu/packages/pretty-print.scm | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm
index 89e5de6278..9896824f01 100644
--- a/gnu/packages/pretty-print.scm
+++ b/gnu/packages/pretty-print.scm
@@ -10,6 +10,7 @@
;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -350,14 +351,14 @@ (define-public source-highlight
(define-public highlight
(package
(name "highlight")
- (version "3.62")
+ (version "4.7")
(source
(origin
(method url-fetch)
(uri (string-append "http://www.andre-simon.de/zip/highlight-"
version ".tar.bz2"))
(sha256
- (base32 "088di7qxd6b2r22qljllhnly0r9a0lfnwnfqswjn23s09awjbl6p"))))
+ (base32 "1cl21qpgy92w1x53vrn1bgq84mkh6fgayc9k38mz4xmz2yw01nv1"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
--
2.41.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [bug#64983] [PATCH v2 2/4] gnu: highlight: Use new package style.
2023-08-07 14:05 ` [bug#64983] [PATCH v2 0/4] gnu: highlight: Add gui output gemmaro
2023-08-07 14:05 ` [bug#64983] [PATCH v2 1/4] gnu: highlight: Update to 4.7 gemmaro
@ 2023-08-07 14:05 ` gemmaro
2023-08-07 14:05 ` [bug#64983] [PATCH v2 3/4] gnu: highlight: Add gui output gemmaro
` (2 subsequent siblings)
4 siblings, 0 replies; 11+ messages in thread
From: gemmaro @ 2023-08-07 14:05 UTC (permalink / raw)
To: 64983; +Cc: gemmaro
* gnu/packages/pretty-print.scm (highlight) Use new package style.
[arguments]: Use G-expression. Drop trailing #t from phases.
[source, inputs, native-inputs, description]: Reformat with guix style.
---
gnu/packages/pretty-print.scm | 89 ++++++++++++++++++-----------------
1 file changed, 45 insertions(+), 44 deletions(-)
diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm
index 9896824f01..1b2cf4becf 100644
--- a/gnu/packages/pretty-print.scm
+++ b/gnu/packages/pretty-print.scm
@@ -352,54 +352,55 @@ (define-public highlight
(package
(name "highlight")
(version "4.7")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "http://www.andre-simon.de/zip/highlight-"
- version ".tar.bz2"))
- (sha256
- (base32 "1cl21qpgy92w1x53vrn1bgq84mkh6fgayc9k38mz4xmz2yw01nv1"))))
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://www.andre-simon.de/zip/highlight-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "1cl21qpgy92w1x53vrn1bgq84mkh6fgayc9k38mz4xmz2yw01nv1"))))
(build-system gnu-build-system)
(arguments
- `(#:tests? #f ; no tests
- #:make-flags
- (let ((confdir (string-append %output "/share/highlight/config/")))
- (list (string-append "PREFIX=" %output)
- (string-append "HL_CONFIG_DIR=" confdir)
- (string-append "conf_dir=" confdir)))
- #:phases
- (modify-phases %standard-phases
- (delete 'configure) ; no configure script
- (add-after 'unpack 'fix-search-for-lua
- (lambda _
- (substitute* "src/makefile"
- (("(LUA_PKG_NAME=).*" _ assignment)
- (string-append assignment "lua-" ,(version-major+minor
- (package-version lua))
- "\n")))
- (substitute* "extras/swig/makefile"
- (("lua") (string-append "lua-" ,(version-major+minor
- (package-version lua)))))
- #t))
- (add-after 'install 'install-perl-bindings
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((perldir (string-append (assoc-ref outputs "out")
- "/lib/perl5/site_perl/"
- ,(package-version perl)))
- (autodir (string-append perldir "/auto/highlight")))
- (with-directory-excursion "extras/swig"
- (invoke "make" "perl")
- (invoke "perl" "-I" "." "testmod.pl")
- (install-file "highlight.pm" perldir)
- (install-file "highlight.so" autodir))
- #t))))))
- (inputs
- (list lua boost perl))
- (native-inputs
- (list pkg-config swig))
+ (list #:tests? #f ;no tests
+ #:make-flags #~(let ((confdir (string-append %output
+ "/share/highlight/config/")))
+ (list (string-append "PREFIX=" %output)
+ (string-append "HL_CONFIG_DIR=" confdir)
+ (string-append "conf_dir=" confdir)))
+ #:phases #~(modify-phases %standard-phases
+ (delete 'configure) ;no configure script
+ (add-after 'unpack 'fix-search-for-lua
+ (lambda _
+ (substitute* "src/makefile"
+ (("(LUA_PKG_NAME=).*" _ assignment)
+ (string-append assignment "lua-"
+ #$(version-major+minor (package-version
+ lua))
+ "\n")))
+ (substitute* "extras/swig/makefile"
+ (("lua")
+ (string-append "lua-"
+ #$(version-major+minor (package-version
+ lua)))))))
+ (add-after 'install 'install-perl-bindings
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((perldir (string-append (assoc-ref outputs
+ "out")
+ "/lib/perl5/site_perl/"
+ #$(package-version perl)))
+ (autodir (string-append perldir
+ "/auto/highlight")))
+ (with-directory-excursion "extras/swig"
+ (invoke "make" "perl")
+ (invoke "perl" "-I" "." "testmod.pl")
+ (install-file "highlight.pm" perldir)
+ (install-file "highlight.so" autodir))))))))
+ (inputs (list lua boost perl))
+ (native-inputs (list pkg-config swig))
(home-page "http://www.andre-simon.de/doku/highlight/en/highlight.php")
(synopsis "Convert code to documents with syntax highlighting")
- (description "Highlight converts source code to HTML, XHTML, RTF, LaTeX,
+ (description
+ "Highlight converts source code to HTML, XHTML, RTF, LaTeX,
TeX, SVG, BBCode and terminal escape sequences with colored syntax
highlighting. Language definitions and color themes are customizable.")
(license gpl3+)))
--
2.41.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [bug#64983] [PATCH v2 3/4] gnu: highlight: Add gui output.
2023-08-07 14:05 ` [bug#64983] [PATCH v2 0/4] gnu: highlight: Add gui output gemmaro
2023-08-07 14:05 ` [bug#64983] [PATCH v2 1/4] gnu: highlight: Update to 4.7 gemmaro
2023-08-07 14:05 ` [bug#64983] [PATCH v2 2/4] gnu: highlight: Use new package style gemmaro
@ 2023-08-07 14:05 ` gemmaro
2023-08-07 14:05 ` [bug#64983] [PATCH v2 4/4] gnu: highlight: Fix paths for Perl bindings gemmaro
2023-08-14 22:26 ` bug#64983: [PATCH 0/3] gnu: highlight: Update to 4.7 and add GUI package Ludovic Courtès
4 siblings, 0 replies; 11+ messages in thread
From: gemmaro @ 2023-08-07 14:05 UTC (permalink / raw)
To: 64983; +Cc: gemmaro
* gnu/packages/pretty-print.scm (highlight): Add gui output.
[source]: Add patch for GUI data directory.
[outputs]: Add gui.
[arguments]<phases>{fix-search-for-lua}: Fix Lua package name for GUI.
{build-gui}: Add phase to build GUI.
{install}: Set PREFIX variable.
{install-gui}: Add phase to install GUI.
[inputs]: Add qtbase-5.
* gnu/packages/patches/highlight-gui-data-dir.patch: Add patch for GUI data directory.
---
.../patches/highlight-gui-data-dir.patch | 51 ++++++++++++++
gnu/packages/pretty-print.scm | 66 ++++++++++++++-----
2 files changed, 102 insertions(+), 15 deletions(-)
create mode 100644 gnu/packages/patches/highlight-gui-data-dir.patch
diff --git a/gnu/packages/patches/highlight-gui-data-dir.patch b/gnu/packages/patches/highlight-gui-data-dir.patch
new file mode 100644
index 0000000000..33f40d309c
--- /dev/null
+++ b/gnu/packages/patches/highlight-gui-data-dir.patch
@@ -0,0 +1,51 @@
+This patch distinguishes between the data directory path for GUI and the one
+for non-GUI by allowing to set the former path.
+
+highlight package has two outputs: out and gui. Both outputs have files which
+will be in the same directory /share/highlight/ without this patch (see also
+install and install-gui tasks in makefile). In the gui's data directory,
+there are GUI specific files in /share/highlight/gui-files/{l10n,ext}/.
+
+diff --git a/src/gui-qt/main.cpp b/src/gui-qt/main.cpp
+index 4700dc1..3567745 100644
+--- a/src/gui-qt/main.cpp
++++ b/src/gui-qt/main.cpp
+@@ -47,8 +47,8 @@ int main(int argc, char *argv[])
+ {
+ QApplication app(argc, argv);
+ QTranslator translator;
+-#ifdef DATA_DIR
+- translator.load(QString("%1/gui_files/l10n/highlight_%2").arg(DATA_DIR).arg(QLocale::system().name()));
++#ifdef GUI_DATA_DIR
++ translator.load(QString("%1/gui_files/l10n/highlight_%2").arg(GUI_DATA_DIR).arg(QLocale::system().name()));
+ #else
+ translator.load(QString("%1/gui_files/l10n/highlight_%2").arg(QDir::currentPath()).arg(QLocale::system().name()));
+ #endif
+diff --git a/src/gui-qt/mainwindow.cpp b/src/gui-qt/mainwindow.cpp
+index 3a21ad2..f060431 100644
+--- a/src/gui-qt/mainwindow.cpp
++++ b/src/gui-qt/mainwindow.cpp
+@@ -2131,8 +2131,8 @@ QString MainWindow::getDistFileFilterPath(){
+ #ifdef Q_OS_OSX
+ return QCoreApplication::applicationDirPath()+"/../Resources/gui_files/ext/fileopenfilter.conf";
+ #else
+- #ifdef DATA_DIR
+- return QString(DATA_DIR) + "/gui_files/ext/fileopenfilter.conf";
++ #ifdef GUI_DATA_DIR
++ return QString(GUI_DATA_DIR) + "/gui_files/ext/fileopenfilter.conf";
+ #else
+ return QDir::currentPath()+"/gui_files/ext/fileopenfilter.conf";
+ #endif
+diff --git a/src/makefile b/src/makefile
+index b1d7988..2963105 100644
+--- a/src/makefile
++++ b/src/makefile
+@@ -118,7 +118,7 @@ gui-qt: highlight-gui
+
+ highlight-gui: libhighlight.a ${GUI_OBJECTS}
+ cd gui-qt && \
+- ${QMAKE} 'DEFINES+=DATA_DIR=\\\"${HL_DATA_DIR}\\\" CONFIG_DIR=\\\"${HL_CONFIG_DIR}\\\" DOC_DIR=\\\"${HL_DOC_DIR}\\\" ' && \
++ ${QMAKE} 'DEFINES+=DATA_DIR=\\\"${HL_DATA_DIR}\\\" CONFIG_DIR=\\\"${HL_CONFIG_DIR}\\\" DOC_DIR=\\\"${HL_DOC_DIR}\\\" GUI_DATA_DIR=\\\"${GUI_DATA_DIR}\\\" ' && \
+ $(MAKE)
+
+ $(OBJECTFILES) : makefile
diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm
index 1b2cf4becf..f8763b7b74 100644
--- a/gnu/packages/pretty-print.scm
+++ b/gnu/packages/pretty-print.scm
@@ -52,7 +52,8 @@ (define-module (gnu packages pretty-print)
#:use-module (gnu packages lua)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
- #:use-module (gnu packages swig))
+ #:use-module (gnu packages swig)
+ #:use-module (gnu packages qt))
(define-public a2ps
(package
@@ -352,13 +353,15 @@ (define-public highlight
(package
(name "highlight")
(version "4.7")
+ (outputs (list "out" "gui"))
(source (origin
(method url-fetch)
(uri (string-append "http://www.andre-simon.de/zip/highlight-"
version ".tar.bz2"))
(sha256
(base32
- "1cl21qpgy92w1x53vrn1bgq84mkh6fgayc9k38mz4xmz2yw01nv1"))))
+ "1cl21qpgy92w1x53vrn1bgq84mkh6fgayc9k38mz4xmz2yw01nv1"))
+ (patches (search-patches "highlight-gui-data-dir.patch"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no tests
@@ -371,17 +374,44 @@ (define-public highlight
(delete 'configure) ;no configure script
(add-after 'unpack 'fix-search-for-lua
(lambda _
- (substitute* "src/makefile"
- (("(LUA_PKG_NAME=).*" _ assignment)
- (string-append assignment "lua-"
- #$(version-major+minor (package-version
- lua))
- "\n")))
- (substitute* "extras/swig/makefile"
- (("lua")
- (string-append "lua-"
- #$(version-major+minor (package-version
- lua)))))))
+ (let ((ver #$(version-major+minor (package-version
+ lua))))
+ (substitute* "src/makefile"
+ (("(LUA_PKG_NAME=).*" _ assignment)
+ (string-append assignment "lua-" ver "\n")))
+ (substitute* "src/gui-qt/highlight.pro"
+ (("(PKGCONFIG \\+= lua)" _ assignment)
+ (string-append assignment "-" ver)))
+ (substitute* "extras/swig/makefile"
+ (("lua")
+ (string-append "lua-" ver))))))
+ (add-after 'build 'build-gui
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (data (string-append out
+ "/share/highlight/"))
+ (conf (string-append out "/etc/highlight/"))
+ (doc (string-append out
+ "/share/doc/highlight/"))
+ (gui (assoc-ref outputs "gui"))
+ (gui-data (string-append gui
+ "/share/highlight/")))
+ ;; modified version of gui task in makefile
+ (invoke "make"
+ "-C"
+ "./src"
+ "-f"
+ "./makefile"
+ (string-append "HL_DATA_DIR=" data)
+ (string-append "HL_CONFIG_DIR=" conf)
+ (string-append "HL_DOC_DIR=" doc)
+ (string-append "GUI_DATA_DIR=" gui-data)
+ "gui-qt"))))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (invoke "make" "install"
+ (string-append "PREFIX=" out)))))
(add-after 'install 'install-perl-bindings
(lambda* (#:key outputs #:allow-other-keys)
(let* ((perldir (string-append (assoc-ref outputs
@@ -394,8 +424,14 @@ (define-public highlight
(invoke "make" "perl")
(invoke "perl" "-I" "." "testmod.pl")
(install-file "highlight.pm" perldir)
- (install-file "highlight.so" autodir))))))))
- (inputs (list lua boost perl))
+ (install-file "highlight.so" autodir)))))
+ (add-after 'install 'install-gui
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((gui (assoc-ref outputs "gui")))
+ (mkdir-p (string-append gui "/bin"))
+ (invoke "make" "install-gui"
+ (string-append "PREFIX=" gui))))))))
+ (inputs (list lua boost perl qtbase-5))
(native-inputs (list pkg-config swig))
(home-page "http://www.andre-simon.de/doku/highlight/en/highlight.php")
(synopsis "Convert code to documents with syntax highlighting")
--
2.41.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [bug#64983] [PATCH v2 4/4] gnu: highlight: Fix paths for Perl bindings.
2023-08-07 14:05 ` [bug#64983] [PATCH v2 0/4] gnu: highlight: Add gui output gemmaro
` (2 preceding siblings ...)
2023-08-07 14:05 ` [bug#64983] [PATCH v2 3/4] gnu: highlight: Add gui output gemmaro
@ 2023-08-07 14:05 ` gemmaro
2023-08-14 22:26 ` bug#64983: [PATCH 0/3] gnu: highlight: Update to 4.7 and add GUI package Ludovic Courtès
4 siblings, 0 replies; 11+ messages in thread
From: gemmaro @ 2023-08-07 14:05 UTC (permalink / raw)
To: 64983; +Cc: gemmaro
* gnu/packages/pretty-print.scm (highlight): Fix paths for Perl bindings.
[arguments]<phases>: Set hl_data_dir and hl_conf_dir in install-perl-bindings phase.
---
gnu/packages/pretty-print.scm | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm
index f8763b7b74..5d15b160f3 100644
--- a/gnu/packages/pretty-print.scm
+++ b/gnu/packages/pretty-print.scm
@@ -414,14 +414,19 @@ (define-public highlight
(string-append "PREFIX=" out)))))
(add-after 'install 'install-perl-bindings
(lambda* (#:key outputs #:allow-other-keys)
- (let* ((perldir (string-append (assoc-ref outputs
- "out")
+ (let* ((out (assoc-ref outputs "out"))
+ (data (string-append out
+ "/share/highlight/"))
+ (conf (string-append out "/etc/highlight/"))
+ (perldir (string-append out
"/lib/perl5/site_perl/"
#$(package-version perl)))
(autodir (string-append perldir
"/auto/highlight")))
(with-directory-excursion "extras/swig"
- (invoke "make" "perl")
+ (invoke "make" "perl"
+ (string-append "hl_data_dir=" data)
+ (string-append "hl_conf_dir=" conf))
(invoke "perl" "-I" "." "testmod.pl")
(install-file "highlight.pm" perldir)
(install-file "highlight.so" autodir)))))
--
2.41.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* bug#64983: [PATCH 0/3] gnu: highlight: Update to 4.7 and add GUI package.
2023-08-07 14:05 ` [bug#64983] [PATCH v2 0/4] gnu: highlight: Add gui output gemmaro
` (3 preceding siblings ...)
2023-08-07 14:05 ` [bug#64983] [PATCH v2 4/4] gnu: highlight: Fix paths for Perl bindings gemmaro
@ 2023-08-14 22:26 ` Ludovic Courtès
4 siblings, 0 replies; 11+ messages in thread
From: Ludovic Courtès @ 2023-08-14 22:26 UTC (permalink / raw)
To: gemmaro; +Cc: 64983-done
Hi,
gemmaro <gemmaro.dev@gmail.com> skribis:
> gnu: highlight: Update to 4.7.
> gnu: highlight: Use new package style.
> gnu: highlight: Add gui output.
> gnu: highlight: Fix paths for Perl bindings.
I applied the whole series, adding the patch to ‘gnu/local.mk’.
Thanks,
Ludo’.
^ permalink raw reply [flat|nested] 11+ messages in thread