[pacman-dev] Mark outdated packages automatically (aka Livecheck)

Anatol Pomozov anatol.pomozov at gmail.com
Tue Mar 26 11:38:59 EDT 2013


Hi

On Sun, Mar 24, 2013 at 11:33 AM, William Giokas <1007380 at gmail.com> wrote:
> On Sun, Mar 24, 2013 at 11:29:32AM -0700, Anatol Pomozov wrote:
>> Hi
>>
>> On Sun, Mar 24, 2013 at 11:23 AM, Lukas Fleischer
>> <archlinux at cryptocrack.de> wrote:
>> > On Sun, Mar 24, 2013 at 11:12:05AM -0700, Anatol Pomozov wrote:
>> >> Hi,
>> >>
>> >> I believe in automatization. Any routine work that can be done
>> >> automatically should be done this way.
>> >>
>> >> One such thing that can be improved in Arch project is discovering
>> >> out-of-date packages. Currently it is done by users who go to
>> >> https://www.archlinux.org/packages/ find the package and then click
>> >> "Flag Package Out-of-Date" link. Why to bother users? Why not to let
>> >> some bot to visit websites and check for new versions?
>> >>
>> >> There are examples of package managers that have such functionality -
>> >> macports http://guide.macports.org/chunked/reference.livecheck.html
>> >> Their Portfiles can have information about how to find released files
>> >> (using regexp). Then periodically (e.g. daily) a bot visits webpages,
>> >> parses html and checks if new files are present.
>> >>
>> >> Is it possible to have such functionality in pacman? It would save
>> >> users time and make package update time lower.
>> >
>> > Some developers and Trusted Users already use tools to check websites
>> > for updates. I agree that it might be better to do this in a central
>> > location but this is certainly not a pacman issue. Maybe we could add
>> > something to archweb (or just use a bot, as you already mentioned).
>>
>> Sure, I can file a ticket against archweb.
>>
>> But I believe PKGBUILD file should have a field that describes how to
>> find a new version for the package.
>
> There is already the url= field.

In theory the bot can use "source" field of PKGBUILD. e.g. source looks like

source=("http://download.savannah.gnu.org/releases/$pkgname/$pkgname-$pkgver.src.tar.gz"{,.sig})

It can extract the archive url

http://download.savannah.gnu.org/releases/$pkgname/$pkgname-$pkgver.src.tar.gz

and then try to probe newer $pkgver. Current version is XX.YY.ZZ so
bot can try  XX.YY.ZZ+1, XX.YY+1.0, XX+1.0.0 This should cover most
projects updates. There are some cases when version is not numeric one
e.g. includes -alpha, -beta -rc, or some other versioning.


More information about the pacman-dev mailing list