Skip to content

Squashfuse

Shane Canon edited this page Jan 25, 2023 · 1 revision

Squashfuse is required for podman-hpc. Some distributions (e.g. SLES) do not currently have an RPM for this. Here are instructions for building it.

Get the source from here: https://github.com/vasi/squashfuse

Modify this spec file below. Note this was modified from a spec file from Kyle Fazzari.

Name:     squashfuse
Version:  0.1.105
Release:  1%{?dist}
Summary:  FUSE filesystem to mount squashfs archives

License:  BSD
URL:      https://github.com/vasi/squashfuse
Source0:  https://github.com/vasi/squashfuse/archive/%{version}.tar.gz

BuildRequires: autoconf, automake, fuse-devel, gcc, libattr-devel, libtool, libzstd-devel, liblz4-devel, xz-devel, zlib-devel
Requires: %{name}-libs%{?_isa} = %{version}-%{release}

%description
Squashfuse lets you mount SquashFS archives in user-space. It supports almost
all features of the SquashFS format, yet is still fast and memory-efficient.
SquashFS is an efficiently compressed, read-only storage format. Support for it
has been built into the Linux kernel since 2009. It is very common on Live CDs
and embedded Linux distributions.


%package devel
Summary: Development files for %{name}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}

%description devel
Libraries and header files for developing applications that use %{name}.


%package libs
Summary: Libraries for %{name}

%description libs
Libraries for running %{name} applications.


%prep
%autosetup


%build
./autogen.sh
%configure --disable-static --disable-demo
%make_build


%install
%make_install
find %{buildroot} -name '*.la' -print -delete


%files
%license LICENSE
%{_bindir}/*
%{_mandir}/man1/*

%files devel
%{_includedir}/squashfuse/*
%{_libdir}/pkgconfig/squashfuse.pc
%{_libdir}/pkgconfig/squashfuse_ll.pc
%{_libdir}/*.so

%files libs
%{_libdir}/*.so.*

%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig

%changelog
Clone this wiki locally