This is an automated email from the git hooks/post-receive script.

guix_mirror_bot pushed a commit to branch master
in repository guix.

The following commit(s) were added to refs/heads/master by this push:
     new 121ef5ebde gnu: aegisub: Update to 3.4.2.
121ef5ebde is described below

commit 121ef5ebdea210993b7c96ee87db126f77c36fbe
Author: Carlos Durán Domínguez <[email protected]>
AuthorDate: Fri Feb 20 02:45:01 2026 +0100

    gnu: aegisub: Update to 3.4.2.
    
    The source <https://github.com/Aegisub/Aegisub> was an unmaintained fork
    of <https://github.com/TypesettingTools/Aegisub> which is used in this
    change.
    
    * gnu/packages/video.scm (aegisub): Update to 3.4.2, improve style.
    [source]: Switch to git-fetch, remove patches, and reindent.
    [build-system]: Switch to meson-build-system.
    [arguments]: Reindent, and use G-expressions.
    <#:configure-flags>: Update to meson flags.
    <#:phases>: remove 'fix-ldflags, 'fix-boost-headers and add 'git-version-h.
    [inputs]: Reindent, and sort. Remove freetype, wxwidgets-gtk2; add curl,
    icu4c, libportal, luajit-lua52-openresty, openal, uchardet, wxwidgets,
    and zlib.
    [native-inputs]: Reindent. Remove intltool, and desktop-file-utils. Add
    gettext-minimal, googletest, and python.
    [description]: Reindent.
    [license]: Sort. Remove license:mpl1.1. Add license:bsd-2, license:gpl2+,
    license:isc, and license:public-domain.
    
    * gnu/packages/patches/aegisub-boost68.patch: Remove file.
    * gnu/packages/patches/aegisub-boost81.patch: Likewise.
    * gnu/packages/patches/aegisub-icu59-include-unistr.patch: Likewise.
    * gnu/packages/patches/aegisub-make43.patch: Likewise.
    * gnu/local.mk (dist_patch_DATA): Deregister patches.
    
    Closes: guix/guix#6413
    Merges: https://codeberg.org/guix/guix/pulls/6571
    Change-Id: I84e993363984962da3cc05dccc9fd23ec99041e7
    Signed-off-by: Sharlatan Hellseher <[email protected]>
---
 gnu/local.mk                                       |   4 -
 gnu/packages/patches/aegisub-boost68.patch         |  35 -------
 gnu/packages/patches/aegisub-boost81.patch         |  62 -----------
 .../patches/aegisub-icu59-include-unistr.patch     |  12 ---
 gnu/packages/patches/aegisub-make43.patch          |  20 ----
 gnu/packages/video.scm                             | 114 +++++++++++----------
 6 files changed, 61 insertions(+), 186 deletions(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 72c0115743..526d505618 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -977,10 +977,6 @@ dist_patch_DATA =                                          
\
   %D%/packages/patches/adb-add-libraries.patch                 \
   %D%/packages/patches/adb-libssl_11-compatibility.patch       \
   %D%/packages/patches/accountsservice-extensions.patch                \
-  %D%/packages/patches/aegisub-icu59-include-unistr.patch      \
-  %D%/packages/patches/aegisub-boost68.patch                   \
-  %D%/packages/patches/aegisub-boost81.patch                   \
-  %D%/packages/patches/aegisub-make43.patch                    \
   %D%/packages/patches/agda-categories-remove-incompatible-flags.patch \
   %D%/packages/patches/agda-categories-use-find.patch  \
   %D%/packages/patches/agda-categories-use-newer-stdlib.patch  \
diff --git a/gnu/packages/patches/aegisub-boost68.patch 
b/gnu/packages/patches/aegisub-boost68.patch
deleted file mode 100644
index 013721f3bd..0000000000
--- a/gnu/packages/patches/aegisub-boost68.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Source: 
https://git.archlinux.org/svntogit/community.git/plain/trunk/boost-1.68.patch?h=packages/aegisub
-From d8336d2fed73c72d1227b343d6acfb991bc1651b Mon Sep 17 00:00:00 2001
-From: Jan Beich <[email protected]>
-Date: Mon, 9 Jul 2018 20:15:29 +0000
-Subject: [PATCH] Keep using std::distance after Boost 1.68
-
-src/search_replace_engine.cpp:256:14: error: call to
-      'distance' is ambiguous
-                                count += distance(
-                                         ^~~~~~~~
-/usr/include/c++/v1/iterator:511:1: note: candidate function [with _InputIter =
-      boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >]
-distance(_InputIter __first, _InputIter __last)
-^
-/usr/local/include/boost/iterator/distance.hpp:49:9: note: candidate function 
[with SinglePassIterator =
-      boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >]
-        distance(SinglePassIterator first, SinglePassIterator last)
-        ^
----
- src/search_replace_engine.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/search_replace_engine.cpp b/src/search_replace_engine.cpp
-index 594c21e5e..14c71680d 100644
---- a/src/search_replace_engine.cpp
-+++ b/src/search_replace_engine.cpp
-@@ -253,7 +253,7 @@ bool SearchReplaceEngine::ReplaceAll() {
-                       if (MatchState ms = matches(&diag, 0)) {
-                               auto& diag_field = 
diag.*get_dialogue_field(settings.field);
-                               std::string const& text = diag_field.get();
--                              count += distance(
-+                              count += std::distance(
-                                       
boost::u32regex_iterator<std::string::const_iterator>(begin(text), end(text), 
*ms.re),
-                                       
boost::u32regex_iterator<std::string::const_iterator>());
-                               diag_field = u32regex_replace(text, *ms.re, 
settings.replace_with);
diff --git a/gnu/packages/patches/aegisub-boost81.patch 
b/gnu/packages/patches/aegisub-boost81.patch
deleted file mode 100644
index 4b63fba9b7..0000000000
--- a/gnu/packages/patches/aegisub-boost81.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-Source: 
https://gitlab.archlinux.org/archlinux/packaging/packages/aegisub/-/blob/main/boost-1.81.0.patch
-From 12e1e5ee64afb7cfb5a43a998774642bc1eeede6 Mon Sep 17 00:00:00 2001
-From: Evangelos Foutras <[email protected]>
-Date: Sat, 21 Jan 2023 18:00:10 +0000
-Subject: [PATCH] Fix build with boost 1.81.0
----
-diff --git a/libaegisub/include/libaegisub/lua/utils.h 
b/libaegisub/include/libaegisub/lua/utils.h
-index c5a65d6e4..f4921d582 100644
---- a/libaegisub/include/libaegisub/lua/utils.h
-+++ b/libaegisub/include/libaegisub/lua/utils.h
-@@ -87,7 +87,10 @@ int exception_wrapper(lua_State *L) {
-
- template<typename T>
- void set_field(lua_State *L, const char *name, T value) {
--      push_value(L, value);
-+      if constexpr(std::is_convertible<T, std::string>::value)
-+            push_value(L, static_cast<std::string>(value));
-+      else
-+            push_value(L, value);
-       lua_setfield(L, -2, name);
- }
-
-diff --git a/src/auto4_lua.cpp b/src/auto4_lua.cpp
-index 245689679..6d479b2c3 100644
---- a/src/auto4_lua.cpp
-+++ b/src/auto4_lua.cpp
-@@ -115,7 +115,8 @@ namespace {
-       int get_translation(lua_State *L)
-       {
-               wxString str(check_wxstring(L, 1));
--              push_value(L, _(str).utf8_str());
-+              const char* val = static_cast<const char*>( _(str).utf8_str());
-+              push_value(L, val);
-               return 1;
-       }
-
-diff --git a/src/command/video.cpp b/src/command/video.cpp
-index fb2bcb0ba..77e3e9ca7 100644
---- a/src/command/video.cpp
-+++ b/src/command/video.cpp
-@@ -475,7 +475,7 @@ static void save_snapshot(agi::Context *c, bool raw) {
-               // If where ever that is isn't defined, we can't save there
-               if ((basepath == "\\") || (basepath == "/")) {
-                       // So save to the current user's home dir instead
--                      basepath = wxGetHomeDir().c_str();
-+                      basepath = static_cast<const 
char*>(wxGetHomeDir().c_str());
-               }
-       }
-       // Actual fixed (possibly relative) path, decode it
-diff --git a/src/dialog_attachments.cpp b/src/dialog_attachments.cpp
-index 38ff53027..e30339f81 100644
---- a/src/dialog_attachments.cpp
-+++ b/src/dialog_attachments.cpp
-@@ -161,7 +161,7 @@ void DialogAttachments::OnExtract(wxCommandEvent &) {
-
-       // Multiple or single?
-       if (listView->GetNextSelected(i) != -1)
--              path = wxDirSelector(_("Select the path to save the files 
to:"), to_wx(OPT_GET("Path/Fonts Collector Destination")->GetString())).c_str();
-+              path = static_cast<const char*>(wxDirSelector(_("Select the 
path to save the files to:"), to_wx(OPT_GET("Path/Fonts Collector 
Destination")->GetString())).c_str());
-       else {
-               path = SaveFileSelector(
-                       _("Select the path to save the file to:"),
diff --git a/gnu/packages/patches/aegisub-icu59-include-unistr.patch 
b/gnu/packages/patches/aegisub-icu59-include-unistr.patch
deleted file mode 100644
index 78414741be..0000000000
--- a/gnu/packages/patches/aegisub-icu59-include-unistr.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-This patch adds an include needed since icu59:
-Source: 
https://git.archlinux.org/svntogit/community.git/plain/trunk/icu59.patch?h=packages/aegisub
---- aegisub-3.2.2/src/utils.cpp        2014-12-08 02:07:09.000000000 +0200
-+++ aegisub-3.2.2/src/utils.cpp        2017-04-26 11:11:15.438239182 +0300
-@@ -44,6 +44,7 @@
- #include <boost/filesystem/path.hpp>
- #include <map>
- #include <unicode/locid.h>
-+#include <unicode/unistr.h>
- #include <wx/clipbrd.h>
- #include <wx/filedlg.h>
- #include <wx/stdpaths.h>
diff --git a/gnu/packages/patches/aegisub-make43.patch 
b/gnu/packages/patches/aegisub-make43.patch
deleted file mode 100644
index 32f9d7749c..0000000000
--- a/gnu/packages/patches/aegisub-make43.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Fix build with GNU Make 4.3:
-
-https://github.com/Aegisub/Aegisub/issues/171
-
-Patch taken from upstream:
-
-https://github.com/Aegisub/Aegisub/commit/6bd3f4c26b8fc1f76a8b797fcee11e7611d59a39
-
-diff --git a/Makefile.target b/Makefile.target
---- a/Makefile.target
-+++ b/Makefile.target
-@@ -112,7 +112,7 @@ POST_FLAGS = $($@_FLAGS) -c -o $@ $<
- # Libraries contain all object files they depend on (but they may depend on 
other files)
- # Not using libtool on OS X because it has an unsilenceable warning about a
- # compatibility issue with BSD 4.3 (wtf)
--lib%.a: $$($$*_OBJ)
-+lib%.a: $$($$(*F)_OBJ)
-       @$(BIN_MKDIR_P) $(dir $@)
-       $(BIN_AR) cru $@ $(filter %.o,$^)
-       $(BIN_RANLIB) $@
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 2b8cb927c7..0e4d8b2862 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -79,6 +79,7 @@
 ;;; Copyright © 2025 Julian Flake <[email protected]>
 ;;; Copyright © 2025 Karl Hallsby <[email protected]>
 ;;; Copyright © 2026 Ashish SHUKLA <[email protected]>
+;;; Copyright © 2026 Carlos Durán Domínguez <[email protected]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -173,6 +174,7 @@
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages haskell-xyz)
   #:use-module (gnu packages hunspell)
+  #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
   #:use-module (gnu packages image-processing)
   #:use-module (gnu packages imagemagick)
@@ -5909,71 +5911,77 @@ programmers to access a standard API to open and 
decompress media files.")
 (define-public aegisub
   (package
     (name "aegisub")
-    (version "3.2.2")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append
-                     "https://github.com/Aegisub/Aegisub/releases/download/v";
-                     version "/aegisub-" version ".tar.xz"))
-              (sha256
-               (base32
-                "11b83qazc8h0iidyj1rprnnjdivj1lpphvpa08y53n42bfa36pn5"))
-              (patches (search-patches "aegisub-icu59-include-unistr.patch"
-                                       "aegisub-make43.patch"
-                                       "aegisub-boost68.patch"
-                                       "aegisub-boost81.patch"))))
-    (build-system gnu-build-system)
+    (version "3.4.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+              (url "https://github.com/TypesettingTools/Aegisub";)
+              (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1wsksmxk6sgwy4hqag3j8gls77bbiaq0jflzc7i6c5glkqdqk3w6"))))
+    (build-system meson-build-system)
     (arguments
-     `(#:configure-flags
-       (list "--disable-update-checker"
-             "--without-portaudio"
-             "--without-openal"
-             "--without-oss"
-             "CXXFLAGS=-DU_USING_ICU_NAMESPACE=1")
-       ;; tests require busted, a lua package we don't have yet
-       #:tests? #f
-       #:phases
-       (modify-phases %standard-phases
-         (add-before 'configure 'fix-ldflags
-           (lambda _
-             (setenv "LDFLAGS" "-pthread")
-             #t))
-         (add-after 'unpack 'fix-boost-headers
-               (lambda _
-                 (substitute*
-                     '("src/subtitles_provider_libass.cpp"
-                       "src/colour_button.cpp"
-                       "src/video_provider_dummy.cpp"
-                       "./src/video_frame.cpp")
-                   (("#include <boost/gil/gil_all.hpp>")
-                    "#include <boost/gil.hpp>"))
-                 #t)))))
+     (list
+      #:configure-flags
+      #~(list "-Denable_update_checker=false"
+              "-Dsystem_luajit=true"
+              "-Dlocal_boost=false")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'git-version-h
+            (lambda _
+              (call-with-output-file "git_version.h"
+                (lambda (port)
+                  (format
+                   port
+                   "#define BUILD_GIT_VERSION_NUMBER ~d
+#define BUILD_GIT_VERSION_STRING ~s
+#define TAGGED_RELEASE 1
+#define INSTALLER_VERSION ~s
+#define RESOURCE_BASE_VERSION ~a"
+                   ;; lastSvnHash=16cd907fe7482cb54a7374cd28b8501f138116be
+                   ;; $(expr 6962 + $(git rev-list --count $lastSvnHash..HEAD))
+                   9426
+                   #$version
+                   #$version
+                   #$(string-replace-substring version "." ", ")))))))))
+    (native-inputs
+     (list gettext-minimal
+           googletest
+           pkg-config
+           python))
     (inputs
-     (list boost-1.83
+     (list alsa-lib
+           boost-1.83
+           curl
            ffms2
            fftw
            hunspell
-           mesa
+           icu4c
            libass
-           alsa-lib
+           libportal
+           luajit-lua52-openresty
+           mesa
+           openal
            pulseaudio
-           libx11
-           freetype
-           wxwidgets-gtk2))
-    (native-inputs
-     (list intltool desktop-file-utils pkg-config))
+           uchardet
+           wxwidgets
+           zlib))
     (home-page "https://www.aegisub.org/";)
     (synopsis "Subtitle engine")
     (description
-      "Aegisub is a tool for creating and modifying subtitles.  Aegisub makes
+     "Aegisub is a tool for creating and modifying subtitles.  Aegisub makes
 it quick and easy to time subtitles to audio, and features many powerful
 tools for styling them, including a built-in real-time video preview.")
-    (license (list license:bsd-3 ; the package is licensed under the bsd-3, 
except
-                   license:mpl1.1 ; for vendor/universalchardet under the 
mpl1.1
-                   license:expat)))) ; and src/gl that is under a license 
similar
-   ; the the Expat license, with a rewording (Software -> Materials). (called 
MIT
-   ; by upstream). See https://github.com/Aegisub/Aegisub/blob/master/LICENCE
-   ; src/MatroskaParser.(c|h) is under bsd-3 with permission from the author
+    ;; See https://github.com/TypesettingTools/Aegisub/issues/271
+    (license (list license:bsd-2
+                   license:bsd-3
+                   license:expat
+                   license:gpl2+
+                   license:isc
+                   license:public-domain))))
 
 (define-public pitivi
   (package

Reply via email to