%global fsldir %{_prefix}/lib/fsl Name: fsl-data-fetch Version: 1.0 Release: 1%{?dist} Summary: Fetch FSL's large data sets on demand instead of shipping them in RPMs # The tool and manifest are ours; the data they fetch is FMRIB's and is not rehosted. License: MIT URL: https://gitlab.com/morgan.hough/neurofedora Source0: fsl-data-install Source1: fsl-data-manifest.tsv BuildArch: noarch BuildRequires: python3-devel Requires: python3 %description FSL's FIRST subcortical models (336- and 317-vertex sets) and the OMM-1 multimodal template are 0.3 to 1.1 GB each. Carrying them in a package repository would multiply that by every chroot and rehost data FMRIB already publishes, so instead this tool downloads the original archive from FMRIB's public conda channel, checks its sha256 against a manifest shipped here, unpacks only the data/ tree under /var/lib/fsl-data and links it into /usr/lib/fsl/data where FSL looks. fsl-data-install --list sudo fsl-data-install first-336 sudo fsl-data-install --all Nothing is downloaded when this package is installed or upgraded. %prep %build %install install -D -m 0755 %{SOURCE0} %{buildroot}%{_bindir}/fsl-data-install install -D -m 0644 %{SOURCE1} %{buildroot}%{_datadir}/%{name}/manifest.tsv install -d -m 0755 %{buildroot}%{_sharedstatedir}/fsl-data %check # Without arguments beyond --list the tool touches no network and no state. %{buildroot}%{_bindir}/fsl-data-install --manifest %{buildroot}%{_datadir}/%{name}/manifest.tsv \ --state %{_builddir}/state --fsldir %{_builddir}/fsldir --list | grep -q 'first-336' python3 -I -c "import ast,sys; ast.parse(open(sys.argv[1]).read())" %{buildroot}%{_bindir}/fsl-data-install %files %{_bindir}/fsl-data-install %{_datadir}/%{name}/ %dir %{_sharedstatedir}/fsl-data %changelog * Wed Oct 07 2026 Morgan Hough - 1.0-1 - Initial package: fsl-data-install and a manifest of FMRIB's large data sets (FIRST models 336 and 317, OMM-1), fetched on demand and sha256-verified, so the repository does not carry or rehost them. tests/fsl-data-fetch.bats (12 tests, three mutation-checked).