[SOLVED] Why archlinux's package name contain colon symbol?

I found some packages contains colon symbol that let scp can not work proper. (rsync still workable)eg.xmlrpc-c-1:1.32.2-1-sh4.pkg.tar.xz

if I scp xml* target: will failed.

Even use rsync can not work.

And, I found google code can not accept such file contains ':'.

Your client does not have permission to get URL /upload/sh4twbox from this server. (Client IP address: 111.235.213.132)
You have tried to upload a file with illegal characters such as +, :, /, \, %. Please change your filename and try again That’s all we know.

There are many colon named packages, I wish it could be replaced by other rule. Eg.

Re: [SOLVED] Why archlinux's package name contain colon symbol?

'What can be asserted without evidence can also be dismissed without evidence.' - Christopher Hitchens'There's no such thing as addiction, there's only things that you enjoy doing more than life.' - Doug StanhopeGitHub Junkyard

Re: [SOLVED] Why archlinux's package name contain colon symbol?

The only restricted characters in linux filenames are \0 and /, anything else is a fair game.Debian packagers love to exploit that, so i'ts not only Arch.

Last edited by kaszak696 (2013-02-13 09:40:30)

'What can be asserted without evidence can also be dismissed without evidence.' - Christopher Hitchens'There's no such thing as addiction, there's only things that you enjoy doing more than life.' - Doug StanhopeGitHub Junkyard

Re: [SOLVED] Why archlinux's package name contain colon symbol?

I cannot say, that I am certainly fond of that representation myself. Debian has its reasons for a 0:$UPSTREAMVER-$PKGVER and some upstream use X:Y themselves, but I don't see the use for that on Arch. Look at the examples above, ethtool 1:3.7-1, the upstream version is 3.7, no fancy addition. The 1: in Debian lingo means, that there might have been an older package with a version >3.7, the 1: should stop package managers from thinking anything >3.7 in the past is newer than the current 3.7, even if it is not the case. If there is another numbering problem in the future, it'll be 2:3.6 or whatever. Why do we need this, in a one-version-per-package model, like Arch uses?

Re: [SOLVED] Why archlinux's package name contain colon symbol?

I assume it's there in case a current upstream release is deemed unsafe after it's been in the repos for a while, and a downgrade to the previous stable version is required. If the package maintainer removes the unsafe package and replaces it with the older version, pacman will just post a warning that local version is more recent than the repo version, the unsafe version will remain on the users system until they manually sync the package, or run -Syuu.

Putting an epoch value on the new package that is higher than the unsafe package will make pacman install the new package even though it's version is technically older than the current packages.

Re: [SOLVED] Why archlinux's package name contain colon symbol?

An example of WorMzy's case would be the libtorrent-rasterbar package. When it was upgraded to 0.16, I believe it was found to cause some issues for (some) BitTorrent clients that relied on it hence it was downgraded.