Conversation
a4fe593 to
ec34789
Compare
| # upstream recommends against building shared libraries (--enable-shared) | ||
| mkdir -p src/build | ||
| pushd src/build | ||
| ../%configure_no_runstatedir \ |
There was a problem hiding this comment.
Racket for some reason accepts neither --sbindir nor --runstatedir.
There was a problem hiding this comment.
This appears to be a regression in Racket; Fedora raised a similar issue for the sbindir, and carry patches for it until the next release. I think we should open an issue on their tracker, referencing the sbindir issue.
I downloaded the two patches carried by Fedora, and used the following package.yml:
name : racket
version : '8.18'
release : 22
source :
- https://download.racket-lang.org/installers/8.18/racket-8.18-src.tgz : 65477c71ec1a978a6ee4db582b9b47b1a488029d7a42e358906de154a6e5905c
homepage : https://racket-lang.org/
license :
- Apache-2.0
- LGPL-3.0-only
- MIT
component : programming
libsplit : no
strip : no # mred and mzscheme will break if they're stripped
summary : Racket is a full-spectrum Lisp/Scheme-family programming language.
description: |
Racket is a full-spectrum programming language. It goes beyond Lisp and Scheme with dialects that support objects, types, laziness, and more.
builddeps :
- pkgconfig(gtk+-3.0)
- pkgconfig(liblz4)
- pkgconfig(libturbojpeg)
- pkgconfig(sqlite3)
- urw-core35-fonts
setup : |
%patch -p2 -i $pkgfiles/2b503b4d46c17be4087d30e7eb3135508f489d0f.patch
%patch -p2 -i $pkgfiles/926bc4da215a92c8313779f228c39be69638d0ee.patch
pushd src
# upstream recommends against building shared libraries (--enable-shared)
%configure \
--enable-libz \
--enable-liblz4
popd
build : |
pushd src
# ensure that the racket build system uses all available CPU threads
%make CPUS=%YJOBS%
popd
install : |
pushd src
%make_install
install -Dm00644 ../../share/drracket-exe-icon.png $installdir/usr/share/icons/hicolor/96x96/apps/org.racket_lang.Racket.png
install -Dm00644 ../../share/pkgs/icons/racket-logo.svg $installdir/usr/share/icons/hicolor/scalable/apps/org.racket_lang.Racket.png
mv $installdir/usr/share/applications/{drracket.desktop,org.racket_lang.Racket.desktop}
install -Dm00644 $pkgfiles/org.racket_lang.Racket.desktop -t $installdir/usr/share/applications/
install -Dm00644 $pkgfiles/org.racket_lang.Racket.appdata.xml -t $installdir/usr/share/metainfo/
# Remove empty directories
find $installdir -type d -empty -delete
popd
# Remove static library
rm $installdir/usr/lib64/libracketcs.aIn troubleshooting, I switched to the same source that Fedora is using; I'm not sure if that actually makes a difference, though.
EbonJaeger
left a comment
There was a problem hiding this comment.
In addition to the comment below, we have three patches in the files directory that haven't been used in 6 or 7 years. Let's remove them.
| # upstream recommends against building shared libraries (--enable-shared) | ||
| mkdir -p src/build | ||
| pushd src/build | ||
| ../%configure_no_runstatedir \ |
There was a problem hiding this comment.
This appears to be a regression in Racket; Fedora raised a similar issue for the sbindir, and carry patches for it until the next release. I think we should open an issue on their tracker, referencing the sbindir issue.
I downloaded the two patches carried by Fedora, and used the following package.yml:
name : racket
version : '8.18'
release : 22
source :
- https://download.racket-lang.org/installers/8.18/racket-8.18-src.tgz : 65477c71ec1a978a6ee4db582b9b47b1a488029d7a42e358906de154a6e5905c
homepage : https://racket-lang.org/
license :
- Apache-2.0
- LGPL-3.0-only
- MIT
component : programming
libsplit : no
strip : no # mred and mzscheme will break if they're stripped
summary : Racket is a full-spectrum Lisp/Scheme-family programming language.
description: |
Racket is a full-spectrum programming language. It goes beyond Lisp and Scheme with dialects that support objects, types, laziness, and more.
builddeps :
- pkgconfig(gtk+-3.0)
- pkgconfig(liblz4)
- pkgconfig(libturbojpeg)
- pkgconfig(sqlite3)
- urw-core35-fonts
setup : |
%patch -p2 -i $pkgfiles/2b503b4d46c17be4087d30e7eb3135508f489d0f.patch
%patch -p2 -i $pkgfiles/926bc4da215a92c8313779f228c39be69638d0ee.patch
pushd src
# upstream recommends against building shared libraries (--enable-shared)
%configure \
--enable-libz \
--enable-liblz4
popd
build : |
pushd src
# ensure that the racket build system uses all available CPU threads
%make CPUS=%YJOBS%
popd
install : |
pushd src
%make_install
install -Dm00644 ../../share/drracket-exe-icon.png $installdir/usr/share/icons/hicolor/96x96/apps/org.racket_lang.Racket.png
install -Dm00644 ../../share/pkgs/icons/racket-logo.svg $installdir/usr/share/icons/hicolor/scalable/apps/org.racket_lang.Racket.png
mv $installdir/usr/share/applications/{drracket.desktop,org.racket_lang.Racket.desktop}
install -Dm00644 $pkgfiles/org.racket_lang.Racket.desktop -t $installdir/usr/share/applications/
install -Dm00644 $pkgfiles/org.racket_lang.Racket.appdata.xml -t $installdir/usr/share/metainfo/
# Remove empty directories
find $installdir -type d -empty -delete
popd
# Remove static library
rm $installdir/usr/lib64/libracketcs.aIn troubleshooting, I switched to the same source that Fedora is using; I'm not sure if that actually makes a difference, though.
Changelogs: - [v8.18](https://blog.racket-lang.org/2025/08/racket-v8-18.html) - [v8.17](https://blog.racket-lang.org/2025/05/racket-v8-17.html)
|
I managed to find the correct patch but getting some weird path errors, needs to investigate more. |
ec34789 to
a441864
Compare
Summary
Update Racket to 8.18.
Changelogs:
Test Plan
Re-ran all homework for my university's programming language course that's taught in Racket.
Checklist