clyde icon indicating copy to clipboard operation
clyde copied to clipboard

[Enhancement] --devel option to rebuild all -git -svn and so on packages

Open ghost opened this issue 14 years ago • 7 comments

It would be great!

ghost avatar May 04 '10 04:05 ghost

The issue I see with this idea is that clyde, pacman, nor any other manager can guarentee that a package did in fact use git, svn, hg, etc. It would require parsing every PKGBUILD to find those. Also, some tools could (are?) shipped via git/svn. (e.g. a specific tag is used rather than provide a source tarball.) Finally, which links to the first issue I mentioned, not all git and svn using packages end in -git or -svn, so clyde could end up missing a few packages.

This is a great idea, I agree. I just wish there was a reliable way of telling if a package did use git/svn.

(PS: An idea did come to me, perhaps check the makedepends for subversion/git/mercurial/etc? Is that field even stored in the db?)

nogweii avatar May 21 '10 00:05 nogweii

I used --devel for months with yaourt, and I never missed a package. Packages which checkout from a stable branch or something don't have -${scm} normally.

ghost avatar May 21 '10 04:05 ghost

Normally vs those packages that don't follow convention. SCM packages aren't required to append -${scm} though most do anyways.

Would the number of packages that don't follow convention just not be enough to worry about anyways?

nogweii avatar May 22 '10 00:05 nogweii

I've never seen such a package, which was devel from scm but not -scm. So I think it's not enough to worry about :)

ghost avatar May 22 '10 06:05 ghost

I reopened this.

juster avatar Nov 19 '10 01:11 juster

agree with @linopolus. the name is not a big issue. by convention, all SCM packages must end with -${scm}, unless it checkout from a stable branch.

the problem is that we have a lot SCM packages, but clyde -Syu --aur never update them.

it's been a lot time from last comment, I not sure how it is going now?

gutenye avatar Aug 07 '11 10:08 gutenye

for git, a good way is .

PKGBUILD

build(){
   git clone foo.git  $srcdir/foo
 }

package(){
    cp $srcdir/foo/* $pkgdir/usr/bin/
}

first install

run build()  # it git clone foo.git into /var/cache/clyde/foo
run package()

update: check if there is a new version

 cd /var/cache/clyde/foo
 result=`git pull`
 if 'updated'; then
    run package()
 fi

gutenye avatar Aug 07 '11 11:08 gutenye