File ladybird.spec of Package ladybird
#
# spec file for package ladybird
#
Name: ladybird
Version: 1701945421.4966c083d
Release: 0
Summary: Web Browser from Serenity OS
URL: https://github.com/SerenityOS/serenity/Ladybird
License: BSD-2-Clause
Source0: serenity-%{version}.tar.gz
Source1: caches.tar.gz
Source2: ladybird.desktop
Source3: ladybird.png
Source4: ladybird-rpmlintrc
BuildRequires: qt6-widgets-devel qt6-tools qt6-tools-devel qt6-multimedia-devel libglvnd-devel qt6-svg-devel libQt6Widgets6 gmp-devel Mesa-libGL-devel mpc-devel qt6-wayland-devel gcc13 gcc13-PIE gcc13-c++ ninja tzdb fdupes
BuildRequires: cmake >= 3.26
#TODO:
# - try gcc13 when https://github.com/SerenityOS/serenity/issues/18252 is resolved
%description
Ladybird is a web browser built on the LibWeb and LibJS engines from SerenityOS with a cross-platform GUI in Qt.
%prep
%autosetup -p1 -n serenity-%{version}
# Various resources the build needs regarding unicode,timezones,certificates etc.
mkdir -p %{_builddir}/serenity-%{version}/Build
tar xfvz %{SOURCE1} -C %{_builddir}/serenity-%{version}/Build/
%build
%define _lto_cflags %{nil}
%define __builder ninja
%define __sourcedir Ladybird
%define __builddir Build/ladybird
%cmake \
-DCMAKE_CXX_COMPILER=g++-13 \
-DCMAKE_C_COMPILER=gcc-13 \
-DENABLE_COMMONMARK_SPEC_DOWNLOAD=OFF \
-DSERENITY_CACHE_DIR=%{_builddir}/serenity-%{version}/Build/caches \
%cmake_build
%install
%fdupes %{buildroot}
%cmake_install
mkdir %{buildroot}%{_datadir}/applications
install -m 0644 %{SOURCE2} %{buildroot}%{_datadir}/applications/
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/32x32/apps
install -m 0644 %{SOURCE3} %{buildroot}%{_datadir}/icons/hicolor/32x32/apps/
rm -f %{buildroot}%{_datadir}/res/icons/SystemMenu.ini
rm -f %{buildroot}%{_datadir}/res/icons/*.png
rm -rf %{buildroot}%{_datadir}/res/icons/browser
rm -rf %{buildroot}%{_datadir}/res/icons/calculator
rm -rf %{buildroot}%{_datadir}/res/icons/cards
rm -rf %{buildroot}%{_datadir}/res/icons/catdog
rm -rf %{buildroot}%{_datadir}/res/icons/chess
rm -rf %{buildroot}%{_datadir}/res/icons/colorlines
rm -rf %{buildroot}%{_datadir}/res/icons/flappybug
rm -rf %{buildroot}%{_datadir}/res/icons/hackstudio
rm -rf %{buildroot}%{_datadir}/res/icons/minesweeper
rm -rf %{buildroot}%{_datadir}/res/icons/pixelpaint
rm -rf %{buildroot}%{_datadir}/res/icons/serenity
rm -rf %{buildroot}%{_datadir}/res/icons/themes
rm %{buildroot}%{_libdir}/*.so
rm %{buildroot}%{_datadir}/ladybird/*.cmake
rm -rf %{buildroot}%{_libdir}/debug
rm -rf %{buildroot}%{_includedir}/Ladybird
export NO_BRP_CHECK_RPATH=true
%ldconfig_scriptlets
%files
%{_bindir}/Ladybird
%{_bindir}/SQLServer
%{_bindir}/WebContent
%{_bindir}/WebDriver
%{_bindir}/RequestServer
%{_bindir}/WebSocket
%{_bindir}/WebWorker
%{_bindir}/ImageDecoder
%{_bindir}/headless-browser
%{_libdir}/liblagom*.so.*
%{_datadir}/res/fonts/*
%{_datadir}/res/color-palettes/*
%{_datadir}/res/cursor-themes/*
%{_datadir}/res/html/*
%{_datadir}/res/ladybird/*
%{_datadir}/res/themes/*
%{_datadir}/res/icons/16x16/*
%{_datadir}/res/icons/32x32/*
%{_datadir}/icons/hicolor/32x32/apps/ladybird.png
%{_datadir}/applications/ladybird.desktop
%dir %{_datadir}/icons/hicolor
%dir %{_datadir}/icons/hicolor/32x32
%dir %{_datadir}/icons/hicolor/32x32/apps
%dir %{_datadir}/res
%dir %{_datadir}/res/fonts
%dir %{_datadir}/res/icons
%dir %{_datadir}/res/icons/16x16
%dir %{_datadir}/res/icons/32x32
%dir %{_datadir}/res/color-palettes
%dir %{_datadir}/res/cursor-themes
%dir %{_datadir}/res/html
%dir %{_datadir}/res/ladybird
%dir %{_datadir}/res/themes
%changelog