File asahi-scripts.spec of Package asahi-scripts
Name: asahi-scripts
Version: 20250713
Release: 1
Summary: Miscellaneous scripts for Asahi Linux
License: MIT
URL: https://github.com/AsahiLinux/asahi-scripts
Vendor: asahi-opensuse
Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
Source1: sysconfig.update-m1n1
Patch0: 00-pre-release.patch
Requires: bash
Requires: dracut
Requires: coreutils
Requires: sed
Requires: tar
Requires: m1n1 >= 1.4.20
Requires: u-boot-asahi
Requires: asahi-fwextract
Provides: %{name} = %{version}-%{release}
Obsoletes: asahi-scripts < %{version}
%description
This package contains miscellaneous admin scripts for the Asahi Linux reference
distro.
%package -n asahi-fwupdate
Summary: Asahi Linux firmware updater
Requires: %{name} = %{version}-%{release}
Provides: asahi-fwupdate = %{version}-%{release}
%description -n asahi-fwupdate
A tool to update firmware in Asahi Linux
%package -n update-m1n1
Summary: Keep m1n1 up to date
Requires: %{name} = %{version}-%{release}
Requires: bash
Requires: gzip
Requires: m1n1 >= 1.4.20
Requires: u-boot-asahi
Requires(post): %fillup_prereq
%description -n update-m1n1
Keep m1n1 up to date on Apple Silicon systems
%prep
%setup -n asahi-scripts-%{version}
%patch -P 0 -p1
%build
%install
make BIN_DIR=%{_sbindir} DESTDIR=%{buildroot} PREFIX=%{_prefix} CONFIG_DIR=%{_sysconfdir}/sysconfig install
make BIN_DIR=%{_sbindir} DESTDIR=%{buildroot} PREFIX=%{_prefix} CONFIG_DIR=%{_sysconfdir}/sysconfig install-dracut
make BIN_DIR=%{_sbindir} DESTDIR=%{buildroot} PREFIX=%{_prefix} CONFIG_DIR=%{_sysconfdir}/sysconfig install-macsmc-battery
make BIN_DIR=%{_sbindir} DESTDIR=%{buildroot} PREFIX=%{_prefix} CONFIG_DIR=%{_sysconfdir}/sysconfig install-udev-hwdb
install -Dpm0644 %SOURCE1 %{buildroot}%{_fillupdir}/sysconfig.update-m1n1
install -Ddpm0755 %{buildroot}%{_prefix}/lib/firmware/vendor
install -Dpm0755 %{buildroot}%{_sbindir}/asahi-diagnose %{buildroot}%{_bindir}/asahi-diagnose
rm %{buildroot}%{_sbindir}/asahi-diagnose
%transfiletriggerin -n asahi-fwupdate -- %{_sbindir}/asahi-fwupdate %{_bindir}/asahi-fwextract
%{_sbindir}/asahi-fwupdate || :
# This needs to be a separate trigger because we can't use python3_sitearch here
%transfiletriggerin -n asahi-fwupdate -- /usr/lib/python
grep -q 'asahi_firmware' && %{_sbindir}/asahi-fwupdate || :
# We can't use _libdir here because it gets incorrectly expanded to /usr/lib
%transfiletriggerin -n update-m1n1 -- /usr/lib/m1n1 /usr/lib64/m1n1 /boot/u-boot- /boot/dtb-
%{_sbindir}/update-m1n1 || :
%post -n update-m1n1
%{fillup_only -n update-m1n1 }
%files -n asahi-fwupdate
%license LICENSE
%{_sbindir}/asahi-fwupdate
%files -n update-m1n1
%license LICENSE
%{_sbindir}/update-m1n1
%{_fillupdir}/sysconfig.update-m1n1
%files
%license LICENSE
%dir %{_prefix}/lib/dracut/
%dir %{_prefix}/lib/dracut/dracut.conf.d/
%dir %{_prefix}/lib/dracut/modules.d/
%dir %{_prefix}/lib/dracut/modules.d/91kernel-modules-asahi/
%dir %{_prefix}/lib/dracut/modules.d/99asahi-firmware/
%dir %{_udevhwdbdir}
%{_bindir}/asahi-diagnose
%{_datadir}/asahi-scripts/
%{_prefix}/lib/dracut/dracut.conf.d/10-asahi.conf
%{_prefix}/lib/dracut/modules.d/91kernel-modules-asahi/module-setup.sh
%{_prefix}/lib/dracut/modules.d/99asahi-firmware/install-asahi-firmware.sh
%{_prefix}/lib/dracut/modules.d/99asahi-firmware/load-asahi-firmware.sh
%{_prefix}/lib/dracut/modules.d/99asahi-firmware/module-setup.sh
%{_prefix}/lib/firmware/vendor
%{_unitdir}/macsmc-battery-charge-control-end-threshold.path
%{_unitdir}/macsmc-battery-charge-control-end-threshold.service
%{_udevrulesdir}/93-macsmc-battery-charge-control.rules
%{_udevhwdbdir}/65-autosuspend-override-asahi-sdhci.hwdb
%changelog