[RFC] incremental rebase

Corinna Vinschen corinna-cygwin@cygwin.com
Tue Dec 9 10:43:00 GMT 2014


On Dec  8 15:52, Ken Brown wrote:
> On 12/8/2014 11:48 AM, Achim Gratz wrote:
> >Ken Brown writes:
> >>I'm not convinced that we need to worry so much about all these
> >>details.  What if we just check (based on timestamps of files in
> >>/etc/setup/*.lst.gz) whether anything has been installed into
> >>/usr/info or /usr/share/info since we last did this check.  If so,
> >>then just do exactly what the current update-info-dir.sh does.
> >
> >We also need to track if something was deinstalled.  Unless we want to
> >force all packages to do the appropriate install-info calls themselves
> >in preremove and postinstall, of course.
> >
> >>autorebase can't get away with anything so simple, but it seems to me
> >>that this is good enough for update_info_dir.
> >
> >We can always fall back to what we are doing now, yes.  But I'd like to
> >see if it can be improved.
> 
> The attached script is what I had in mind.  It's better than what we have
> now and could be a starting point.
> 
> Ken
> 

> #!/bin/bash
> 
> update () {
>     rm -f /usr/share/info/dir.info /usr/share/info/dir
>     for f in /usr/share/info/*
>     do
> 	case "$f" in
> 	    *\**)
> 		;;
> 	    */dir|*/dir.info*)
> 		;;
> 	    *-[0123456789]*)
> 		;;
> 	    *)
> 		install-info --quiet $f /usr/share/info/dir
> 		;;
> 	esac
>     done
> }
> 
> update_needed=no
> marker_file=/usr/share/info/.updated
> if [ ! -f ${marker_file} ]
> then
>     update_needed=yes
> else
>     for f in $(find /etc/setup -type f -name '*.lst.gz' -newer ${marker_file})
>     do
> 	if gzip -d -c ${f} | grep -q usr/share/info -
> 	then
> 	    update_needed=yes
> 	    break
> 	fi
>     done
> fi
> if [ ${update_needed} = "yes" ]
> then
>     update
> fi
> touch ${marker_file}

Neat.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin-apps/attachments/20141209/c62bb5e1/attachment.sig>


More information about the Cygwin-apps mailing list