@@ -10,8 +10,8 @@ SUPPORTEDTYPES="rhel7-x86_64 rhel8-aarch64 rhel8-x86_64 rhel8-ppc64le rhel9-x86_
1010usage ()
1111{
1212 (
13- echo " Usage: makedist [-s] [ -m machinetype ] {osg|egi|default|none}"
14- echo " makedist [-s] -o <self_extracting_script>"
13+ echo " Usage: makedist [-s] [-3] [ -m machinetype ] {osg|egi|default|none}"
14+ echo " makedist [-s] [-3] -o <self_extracting_script>"
1515 echo " The first usage creates a distribution in 'dist' directory."
1616 echo " The -m option selects machinetype for the distribution."
1717 echo " The default is the current machine. Supported types:"
@@ -22,11 +22,13 @@ usage()
2222 echo " directory as the script."
2323 echo " The -s option makes both operations work for singcvmfs instead"
2424 echo " of cvmfsexec, and files are left in .singcvmfs"
25+ echo " The -3 option forces use of fuse3 backend for all machine types."
2526 ) >&2
2627 exit 2
2728}
2829
2930SING=false
31+ FUSE3=false
3032MACHTYPE=" "
3133while true ; do
3234 if [ " $1 " = " -s" ]; then
@@ -35,6 +37,9 @@ while true; do
3537 elif [ " $1 " = " -m" ]; then
3638 MACHTYPE=" $2 "
3739 shift 2
40+ elif [ " $1 " = " -3" ]; then
41+ FUSE3=true
42+ shift
3843 else
3944 break
4045 fi
@@ -298,49 +303,66 @@ if $INCLUDEHELPER; then
298303fi
299304
300305FUSESUBDIR=false
301- CVMFSFUSE3URL=" $CVMFSURL /` echo $CVMFSRPMNAME | sed ' s/cvmfs-/cvmfs-fuse3-/' ` "
306+ CVMFSFUSE3RPMNAME=` echo $CVMFSRPMNAME | sed ' s/cvmfs-/cvmfs-fuse3-/' `
307+ CVMFSFUSE3URL=" $CVMFSURL /$CVMFSFUSE3RPMNAME "
308+
309+ USEFUSE3=false
302310if $SING ; then
311+ USEFUSE3=true
312+ fi
313+ if $FUSE3 ; then
314+ USEFUSE3=true
315+ fi
316+ if [ " $EL " -ge 9 ]; then
317+ USEFUSE3=true
318+ fi
319+
320+ if [ " $DISTRO " = suse ]; then
321+ if $USEFUSE3 ; then
322+ # hack to check if package is available in current dir
323+ if [ ! -f " $HERE /$CVMFSFUSE3RPMNAME " ]; then
324+ echo " No cvmfs-fuse3 for suse15 available." >&2
325+ echo " Please provide custom-built $CVMFSFUSE3RPMNAME in the $HERE directory to continue." >&2
326+ exit 1
327+ else
328+ CVMFSFUSE3URL=" file://$HERE /$CVMFSFUSE3RPMNAME "
329+ fi
330+ fi
331+ fi
332+
333+ if $USEFUSE3 ; then
303334 URLS=" $URLS $CVMFSFUSE3URL "
304- if [ " $EL " -lt 8 ]; then
305- FUSEURL=" https://download.fedoraproject.org/pub/epel/$EL /$ARCH /Packages"
306- FUSESUBDIR=true
307- elif [ " $EL " -eq 8 ]; then
308- FUSEURL=" https://repo.almalinux.org/almalinux/$EL /BaseOS/$ARCH /os/Packages"
335+ FUSELIB=fuse3-libs
336+ else
337+ FUSELIB=fuse-libs
338+ fi
339+ if [ " $DISTRO " = suse ]; then
340+ FUSEURL=" https://download.opensuse.org/distribution/openSUSE-stable/repo/oss/x86_64"
341+ if $USEFUSE3 ; then
342+ FUSELIB=libfuse3
309343 else
310- FUSEURL=" https://repo.almalinux.org/almalinux/$EL /AppStream/$ARCH /os/Packages"
311- fi
312- URL=" ` latesturl $FUSEURL fuse3-libs $FUSESUBDIR ` "
313- if [ -z " $URL " ]; then
314- echo " No fuse3-libs package found from $FUSEURL " >&2
315- exit 1
344+ FUSELIB=libfuse2
316345 fi
317- URLS=" $URLS $URL "
318346else
319- if [ " $DISTRO " = suse ]; then
320- FUSEURL=" https://download.opensuse.org/distribution/openSUSE-stable/repo/oss/x86_64"
321- FUSELIB=libfuse2
322- else
323- if [ " $EL " -lt 8 ]; then
324- FUSEURL=" https://vault.centos.org/centos/$EL /os/$ARCH /Packages/"
325- elif [ " $EL " -eq 8 ]; then
326- FUSEURL=" https://repo.almalinux.org/almalinux/$EL /BaseOS/$ARCH /os/Packages"
327- else
328- FUSEURL=" https://repo.almalinux.org/almalinux/$EL /AppStream/$ARCH /os/Packages"
329- fi
330- if [ " $EL " -lt 9 ]; then
331- FUSELIB=fuse-libs
347+ if [ " $EL " -lt 8 ]; then
348+ if $USEFUSE3 ; then
349+ FUSEURL=" https://download.fedoraproject.org/pub/epel/$EL /$ARCH /Packages"
350+ FUSESUBDIR=true
332351 else
333- FUSELIB=fuse3-libs
334- URLS=" $URLS $CVMFSFUSE3URL "
352+ FUSEURL=" https://vault.centos.org/centos/$EL /os/$ARCH /Packages/"
335353 fi
354+ elif [ " $EL " -eq 8 ]; then
355+ FUSEURL=" https://repo.almalinux.org/almalinux/$EL /BaseOS/$ARCH /os/Packages"
356+ else
357+ FUSEURL=" https://repo.almalinux.org/almalinux/$EL /AppStream/$ARCH /os/Packages"
336358 fi
337- URL=" ` latesturl $FUSEURL $FUSELIB $FUSESUBDIR ` "
338- if [ -z " $URL " ]; then
339- echo " No $FUSELIB package found from $FUSEURL " >&2
340- exit 1
341- fi
342- URLS=" $URLS $URL "
343359fi
360+ URL=" ` latesturl $FUSEURL $FUSELIB $FUSESUBDIR ` "
361+ if [ -z " $URL " ]; then
362+ echo " No $FUSELIB package found from $FUSEURL " >&2
363+ exit 1
364+ fi
365+ URLS=" $URLS $URL "
344366
345367if [ " $EL " -eq 7 ]; then
346368 # add fuse2fs only on EL7, it is standard elsewhere
0 commit comments