summaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authorCarlos Durán Domínguez <wurt@wurt.eu>2026-02-20 02:45:01 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2026-02-26 22:44:37 +0000
commit121ef5ebdea210993b7c96ee87db126f77c36fbe (patch)
treef4a28cf7df9ab6c650a2481ddafaf5de7dcd8687 /gnu/packages
parent6e6809ff61de72dac5d5ad33d976c19a5c9ef75a (diff)
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 <sharlatanus@gmail.com>
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/patches/aegisub-boost68.patch35
-rw-r--r--gnu/packages/patches/aegisub-boost81.patch62
-rw-r--r--gnu/packages/patches/aegisub-icu59-include-unistr.patch12
-rw-r--r--gnu/packages/patches/aegisub-make43.patch20
-rw-r--r--gnu/packages/video.scm114
5 files changed, 61 insertions, 182 deletions
diff --git a/gnu/packages/patches/aegisub-boost68.patch b/gnu/packages/patches/aegisub-boost68.patch
deleted file mode 100644
index 013721f3bd0..00000000000
--- 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 <jbeich@FreeBSD.org>
-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 4b63fba9b7f..00000000000
--- 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 <foutrelis@archlinux.org>
-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 78414741be4..00000000000
--- 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 32f9d7749c5..00000000000
--- 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 2b8cb927c72..0e4d8b28624 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -79,6 +79,7 @@
;;; Copyright © 2025 Julian Flake <flake@uni-koblenz.de>
;;; Copyright © 2025 Karl Hallsby <karl@hallsby.com>
;;; Copyright © 2026 Ashish SHUKLA <ashish.is@lostca.se>
+;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
;;;
;;; 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