Projects
Eulaceura:Mainline:GA
xscreensaver
_service:obs_scm:update-xscreensaver-hacks
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:obs_scm:update-xscreensaver-hacks of Package xscreensaver
#!/bin/bash _SYSCONFDIR=${sysconfdir:-/etc} _PREFIX=${prefix:-/usr} _DATADIR=${datadir:-${_PREFIX}/share} ADDIR=${ADDIR:-${install_prefix}${_SYSCONFDIR}/xscreensaver} CONFDIR=${CONFDIR:-${install_prefix}${_DATADIR}/xscreensaver/hacks.conf.d} ADFILE=${ADFILE:-$ADDIR/XScreenSaver.ad} fix_hackconf () { if [ ! -s $1 ] ; then echo "$1 is empty" >&2 echo "" return 1 fi tmpconf=`mktemp /tmp/hackconf.XXXXXXXX` tmpconf_1=`mktemp /tmp/hackconf.XXXXXXXX` tmpconf_2=`mktemp /tmp/hackconf.XXXXXXXX` tmpconf_3=`mktemp /tmp/hackconf.XXXXXXXX` sed -n -e '$p' $1 > $tmpconf_1 sed -e '$d' $1 > $tmpconf_2 for file in $tmpconf_1 $tmpconf_2 ; do if ( [ -s $file ] && grep -q '\\n\(\|\\\)[^\\].*$' $file ) ; then rm -f $tmpconf $tmpconf_1 $tmpconf_2 $tmpconf_3 echo "" echo "ignoring $1" >&2 return 1 fi done if ! grep -q '\\n[\\]*$' $tmpconf_1 ; then sed -i -e 's|\(^.*$\)|\1 \\n\\|' $tmpconf_1 fi sed -i -e 's|\\n$|\\n\\|' $tmpconf_1 while [ -s $tmpconf_2 ] ; do sed -n -e '1p' $tmpconf_2 > $tmpconf_3 sed -i -e '1d' $tmpconf_2 if ! grep -q '\([ \t]\\$\|\\n\\$\)' $tmpconf_3 ; then rm -f $tmpconf $tmpconf_1 $tmpconf_2 $tmpconf_3 echo "" echo "ignoring $1" >&2 return 1 fi cat $tmpconf_3 >> $tmpconf done cat $tmpconf_1 >> $tmpconf rm -f $tmpconf_1 $tmpconf_2 $tmpconf_3 echo $tmpconf return 0 } for suffix in header tail ; do if [ ! -r $ADDIR/XScreenSaver.ad.$suffix ] ; then echo "$ADDIR/XScreenSaver.ad.$suffix missing" exit 1 fi done tmpfile=`mktemp /tmp/XScreenSaver.ad.XXXXXXXX` cat > $tmpfile <<EOF ! Don't edit this file directly by yourself!! ! This file is not meant to be edited directly. ! ! Instead, please edit /etc/xscreensaver/XScreenSaver.ad.header, ! /etc/xscreensaver/XScreenSaver.ad.tail and add files under ! /usr/share/xscreensaver/hacks.conf.d if you want. ! ! Then call /usr/sbin/update-xscreensaver-hacks to ! update this file. ! EOF cat $ADDIR/XScreenSaver.ad.header >> $tmpfile for hackconf in $CONFDIR/*.conf ; do hackconf_fixed=`fix_hackconf $hackconf` if [ -n "$hackconf_fixed" ] ; then cat $hackconf_fixed >> $tmpfile rm -f $hackconf_fixed fi done sed -i -e '$s|\\n\\$|\\n|' $tmpfile cat $ADDIR/XScreenSaver.ad.tail >> $tmpfile install -c -p -m 644 $tmpfile $ADFILE rm -f $tmpfile
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2