diff --git a/_service b/_service
index 2860c4e..b9510a3 100644
--- a/_service
+++ b/_service
@@ -1,19 +1,16 @@
-
- git
- https://github.com/sile-typesetter/sile.git
- v0.14.17
- @PARENT_TAG@+@TAG_OFFSET@
- v?(.*)\+0
- \1
-
+
+ https
+ github.com
+ /sile-typesetter/sile/releases/download/v0.15.3/sile-0.15.3.tar.zst
-
-
- *.tar
- zst
+
+ sile*.tar.zst
+ zst
+ true
+ true
-
+
diff --git a/sile-0.14.17.obscpio b/sile-0.14.17.obscpio
deleted file mode 100644
index e959883..0000000
--- a/sile-0.14.17.obscpio
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:bd1a57cf80a9ec41303cf556f1a51da1bb7bb66616ade80b9d72c2e1af35d191
-size 11584525
diff --git a/sile-0.15.3.tar.zst b/sile-0.15.3.tar.zst
new file mode 100644
index 0000000..079b7c0
--- /dev/null
+++ b/sile-0.15.3.tar.zst
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:88d24a70710e301ba3400351a82c5f28b49cebcd637b7a59d28b001a56b398c6
+size 3150046
diff --git a/sile.changes b/sile.changes
index 41b4ae1..94a564d 100644
--- a/sile.changes
+++ b/sile.changes
@@ -1,3 +1,23 @@
+-------------------------------------------------------------------
+Fri Jun 14 10:20:53 UTC 2024 - Soc Virnyl Estela
+
+- Update to 0.15.3:
+ * A lot of breaking changes in the transition to 0.15.0
+ https://github.com/sile-typesetter/sile/releases/tag/v0.15.0
+ * Bug Fixes
+ - build: Distribute vendored compat-5.3.c source file
+ - build: Remove Git from configure dependencies
+ - classes: Correct order of operations when paragraphs are ended manually
+ - packages: Change retrograde package so 'target' version works as expected
+ - build: Bundle all assets in source distribution
+ - core: Allow LUA_PATH env var to take effect at runtime
+- New build dependencies
+ * cargo/rust
+ * clang to replicate upstream's choice of c compiler
+ * jq
+- Switch to lua51 for luajit. luajit only supports lua51 for now
+- New subpackages: fish and bash completions
+
-------------------------------------------------------------------
Thu May 23 09:56:22 UTC 2024 - Dominique Leuenberger
diff --git a/sile.obsinfo b/sile.obsinfo
index 0ef3a79..d94958d 100644
--- a/sile.obsinfo
+++ b/sile.obsinfo
@@ -1,4 +1,4 @@
name: sile
-version: 0.14.17
-mtime: 1707331766
-commit: 4276c710386866f7c2eff85c9f3fc1825be5636a
+version: 0.15.3
+mtime: 1718059936
+commit: 6404c537a68e9f3c77fc5f70f1a8b912e2c75708
diff --git a/sile.spec b/sile.spec
index eafde04..37669db 100644
--- a/sile.spec
+++ b/sile.spec
@@ -18,53 +18,54 @@
%bcond_without tests
Name: sile
-Version: 0.14.17
+Version: 0.15.3
Release: 0
Summary: Simon’s Improved Layout Engine
Group: Productivity/Publishing
License: MIT
URL: https://sile-typesetter.org/
-Source0: sile-0.14.17.tar.zst
-Source1: sile-rpmlintrc
-Source2: LICENSE
+Source0: sile-%{version}.tar.zst
+Source1: vendor.tar.zst
+Source2: sile-rpmlintrc
+Source3: LICENSE
# Lua modules
-Requires: lua54
-BuildRequires: lua54-bit32
-BuildRequires: lua54-devel
-Requires: lua54-bit32
-BuildRequires: lua54-cassowary
-Requires: lua54-cassowary
-Requires: lua54-cldr
-BuildRequires: lua54-cliargs
-Requires: lua54-cliargs
-BuildRequires: lua54-cosmo
-Requires: lua54-cosmo
-BuildRequires: lua54-luaexpat
-Requires: lua54-luaexpat
-BuildRequires: lua54-luafilesystem
-Requires: lua54-luafilesystem
-BuildRequires: lua54-fluent
-Requires: lua54-fluent
-BuildRequires: lua54-linenoise
-Requires: lua54-linenoise
-BuildRequires: lua54-loadkit
-Requires: lua54-loadkit
-Requires: lua54-lpeg
-Requires: lua54-luaepnf
-BuildRequires: lua54-luarepl
-Requires: lua54-luarepl
-BuildRequires: lua54-luautf8
-Requires: lua54-luautf8
-Requires: lua54-penlight
-BuildRequires: lua54-luasec
-Requires: lua54-luasec
-Requires: lua54-luasocket
-BuildRequires: lua54-vstruct
-Requires: lua54-vstruct
-BuildRequires: lua54-zlib
-# Without this Requires, lua54-zlib isn't counted as a dependency
-Requires: lua54-zlib
+Requires: lua51
+BuildRequires: lua51-bit32
+BuildRequires: lua51-devel
+Requires: lua51-bit32
+BuildRequires: lua51-cassowary
+Requires: lua51-cassowary
+Requires: lua51-cldr
+BuildRequires: lua51-cliargs
+Requires: lua51-cliargs
+BuildRequires: lua51-cosmo
+Requires: lua51-cosmo
+BuildRequires: lua51-luaexpat
+Requires: lua51-luaexpat
+BuildRequires: lua51-luafilesystem
+Requires: lua51-luafilesystem
+BuildRequires: lua51-fluent
+Requires: lua51-fluent
+BuildRequires: lua51-linenoise
+Requires: lua51-linenoise
+BuildRequires: lua51-loadkit
+Requires: lua51-loadkit
+Requires: lua51-lpeg
+Requires: lua51-luaepnf
+BuildRequires: lua51-luarepl
+Requires: lua51-luarepl
+BuildRequires: lua51-luautf8
+Requires: lua51-luautf8
+Requires: lua51-penlight
+BuildRequires: lua51-luasec
+Requires: lua51-luasec
+Requires: lua51-luasocket
+BuildRequires: lua51-vstruct
+Requires: lua51-vstruct
+BuildRequires: lua51-zlib
+# Without this Requires, lua51-zlib isn't counted as a dependency
+Requires: lua51-zlib
# Other Dependencies
%if %{with tests}
@@ -99,6 +100,21 @@ Suggests: noto-sans-cjk-fonts
# Default mono font
Suggests: hack-fonts
+# Rust build dependencies. We don't need cargo packaging.
+# Sile has a flags we have to respect it
+BuildRequires: cargo
+# Attempt to also use clang too. Seems this is what they used
+BuildRequires: clang
+BuildRequires: clang-devel
+# For tar scm lol
+BuildRequires: zstd
+# Also additional dep
+BuildRequires: jq
+BuildRequires: lua51-compat-5.3
+BuildRequires: luajit
+BuildRequires: luajit-devel
+BuildRequires: pkgconf-pkg-config
+
%description
SILE is a typesetting system; its job is to produce beautiful printed documents.
Conceptually, SILE is similar to TeX—from which it borrows some concepts and even
@@ -126,17 +142,65 @@ Requires: libtexpdf0 = %{version}
A PDF library extracted from TeX's dvipdfmx. Used in software such as SILE.
This package contains the development files for libtexpdf.
-%prep
-%autosetup -p1
+%package fish-completion
+Summary: Fish Completion for %{name}
+Group: System/Shells
+Supplements: (%{name} and fish)
+Requires: fish
+BuildArch: noarch
-cp %{SOURCE2} .
+%description fish-completion
+Fish command-line completion support for %{name}.
+
+%package bash-completion
+Summary: Bash Completion for %{name}
+Group: System/Shells
+Supplements: (%{name} and bash-completion)
+Requires: bash-completion
+BuildArch: noarch
+
+%description bash-completion
+Bash command-line completion support for %{name}.
+
+%prep
+%autosetup -p1 -a1
+cp %{SOURCE3} .
%build
-autoreconf -fiv
-%configure --disable-static --with-system-luarocks
+# The macros uses this but we have to respect what upstream config.toml
+# uses for the RUSTFLAGS
+unset LIBSSH2_SYS_USE_PKG_CONFIG
+export RUSTFLAGS=" -Clink-arg=-Wl,-z,relro,-z,now -C debuginfo=2 -C incremental=false -C strip=none"
+export CARGO_AUDITABLE=auditable
+export CARGO_FEATURE_VENDORED=1
+export CXX=/usr/bin/clang++
+export CC=/usr/bin/clang
+export AX_PROG_LUA=/usr/bin/lua5.1
+export LUA_INCLUDE="-I/usr/include/lua5.1"
+export CFLAGS="%optflags $(pkg-config --cflags-only-I lua5.1 luaji)"
+export CXXFLAGS="%optflags $(pkg-config --cflags-only-I lua5.1 luaji)"
+%configure \
+ --disable-static \
+ --disable-embeded-resources \
+ --with-system-lua-sources \
+ --with-system-luarocks \
+ --with-luajit
+
%make_build all
%install
+# The macros uses this but we have to respect what upstream config.toml
+# uses for the RUSTFLAGS
+unset LIBSSH2_SYS_USE_PKG_CONFIG
+export RUSTFLAGS=" -Clink-arg=-Wl,-z,relro,-z,now -C debuginfo=2 -C incremental=false -C strip=none"
+export CARGO_AUDITABLE=auditable
+export CARGO_FEATURE_VENDORED=1
+export CXX=/usr/bin/clang++
+export CC=/usr/bin/clang
+export AX_PROG_LUA=/usr/bin/lua5.1
+export LUA_INCLUDE="-I/usr/include/lua5.1"
+export CFLAGS="%optflags $(pkg-config --cflags-only-I lua5.1 luaji)"
+export CXXFLAGS="%optflags $(pkg-config --cflags-only-I lua5.1 luaji)"
%make_install
rm %{buildroot}%{_libdir}/*.la
%fdupes %{buildroot}
@@ -150,15 +214,15 @@ make check
%ldconfig_scriptlets -n libtexpdf-devel
%files
-%license %{_datadir}/licenses/sile/LICENSE
-%license %{_datadir}/licenses/sile/LICENSE-lunamark
+%license LICENSE.md
%doc %{_datadir}/doc/sile/*
%dir %{_datadir}/doc/sile
%dir %{_datadir}/licenses/sile
%{_bindir}/sile
+%{_bindir}/sile-lua
%{_datadir}/sile
%{_libdir}/sile
-%{_mandir}/man1/sile.1.gz
+%{_mandir}/man1/sile.1%{?ext_man}
%files -n libtexpdf0
%license LICENSE
@@ -168,4 +232,14 @@ make check
%{_includedir}/libtexpdf
%{_libdir}/libtexpdf.so
+%files bash-completion
+%dir %{_datadir}/bash-completion
+%dir %{_datadir}/bash-completion/completions
+%{_datadir}/bash-completion/completions/%{name}
+
+%files fish-completion
+%dir %{_datadir}/fish
+%dir %{_datadir}/fish/vendor_completions.d
+%{_datadir}/fish/vendor_completions.d/%{name}.fish
+
%changelog
diff --git a/vendor.tar.zst b/vendor.tar.zst
new file mode 100644
index 0000000..f018b92
--- /dev/null
+++ b/vendor.tar.zst
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:6e2f1df18c37e5c927d1d08f87624aac0b9248fa356cfc1cc0e61d665b788121
+size 14778379