Cargo Distribution

Forum for technical discussions regarding development. If you have a general suggestion, problem or comment, please use one of the other forums.

Moderator: OpenTTD Developers

petert
Tycoon
Tycoon
Posts: 3008
Joined: 02 Apr 2009 22:43
Location: Massachusetts, USA

Re: Cargo Distribution

Post by petert »

So, the binaries that I build are Ubuntu Karmic Koala. I will use that name instead.
User avatar
Gremnon
Tycoon
Tycoon
Posts: 1517
Joined: 16 Sep 2005 12:23
Skype: the_gremnon
Location: /home
Contact:

Re: Cargo Distribution

Post by Gremnon »

For those confused, what he's basically just said is that a package is always intended for one target system, EG Ubuntu Jaunty, or Debian Sid etc.
It's like a Setup.exe that's tailored for one specific system.
User avatar
fonso
President
President
Posts: 948
Joined: 13 Oct 2007 08:28

Re: Cargo Distribution

Post by fonso »

A setup.exe, however cannot be rebuilt by everyone, isn't kept in a central repository and usually doesn't clearly state its dependencies. The latter aspect is why you need a new .deb package for each system. OpenTTD uses a set of libraries which are different on each system and the specifics of these libraries are considered during compilation. Later, the package says "I'm using libraries X version N, Y version M and Z version U". This is nice because now your system knows if it makes sense to install the package and it can even automatically install anything that's missing - or at least tell you about the missing parts if it can't find them in the package repository. Compare that to "dll hell" if you like ...
we're going somewhat off-topic, though.
The guy on the picture is not me, it's Alonso.
User avatar
Zuu
OpenTTD Developer
OpenTTD Developer
Posts: 4553
Joined: 09 Jun 2003 18:21
Location: /home/sweden

Re: Cargo Distribution

Post by Zuu »

Gremnon wrote:For those confused, what he's basically just said is that a package is always intended for one target system, EG Ubuntu Jaunty, or Debian Sid etc.
It's like a Setup.exe that's tailored for one specific system.
Just that something that target Debian Sid will not always continue to work for "Debian Sid" since that is the name of the current unstable Debian version. When a currently testing release of Debian is released as stable, it moves up to stable and then the release that was called Sid will become testing and a new one will become Sid. Sid will always label the unstable release, thus it will label different versions of Debian over time. Both Lenny and Etch for example was once called "Sid". Just not at the same time. The reason for this is that Debian gets all their release names from the Toy Story movie, and in that movie "Sid" is the kid that always destroyed his toys.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)
User avatar
Gremnon
Tycoon
Tycoon
Posts: 1517
Joined: 16 Sep 2005 12:23
Skype: the_gremnon
Location: /home
Contact:

Re: Cargo Distribution

Post by Gremnon »

Alright, so perhaps an oversimplification, but essentially a package is intended for is the one it's made on, and it is difficult to make it work exactly the same on any other system anywhere, because it wasn't made there.

Better much?
User avatar
keoz
Transport Coordinator
Transport Coordinator
Posts: 321
Joined: 16 Jul 2009 10:04

Re: Cargo Distribution

Post by keoz »

Anyway, I think that the simplest way to use cargodist, for anyone is using any Linux distro, stays to compile the patched version directly taking the sources from the git repository. It is no so complicated as someone could think it. And if someone needs advanced help about it, a lot of people here could help. Anyway I'll be happy to do it.
Patch - Let's timetable depot waiting time with the Wait in depot patch.
GameScript - Searching a new way to make your cities growing ? Try the Renewed City Growth GameScript.
My screenshots thread.
petert
Tycoon
Tycoon
Posts: 3008
Joined: 02 Apr 2009 22:43
Location: Massachusetts, USA

Re: Cargo Distribution

Post by petert »

keoz wrote:Anyway, I think that the simplest way to use cargodist, for anyone is using any Linux distro, stays to compile the patched version directly taking the sources from the git repository. It is no so complicated as someone could think it. And if someone needs advanced help about it, a lot of people here could help. Anyway I'll be happy to do it.
On linux, is it possible to use GIT? Is there a download for it?
User avatar
Zuu
OpenTTD Developer
OpenTTD Developer
Posts: 4553
Joined: 09 Jun 2003 18:21
Location: /home/sweden

Re: Cargo Distribution

Post by Zuu »

http://git-scm.com/

Or better, use the package manager of your Linux system.


Edit: Actually git works better on Linux than on Windows I was told on IRC the other day. This is because the NTFS file system is not as good as most file systems on Linux to handle many small files.
Last edited by Zuu on 09 Dec 2009 20:30, edited 1 time in total.
My OpenTTD contributions (AIs, Game Scripts, patches, OpenTTD Auto Updater, and some sprites)
Junctioneer (a traffic intersection simulator)
User avatar
keoz
Transport Coordinator
Transport Coordinator
Posts: 321
Joined: 16 Jul 2009 10:04

Re: Cargo Distribution

Post by keoz »

petert wrote:
keoz wrote:Anyway, I think that the simplest way to use cargodist, for anyone is using any Linux distro, stays to compile the patched version directly taking the sources from the git repository. It is no so complicated as someone could think it. And if someone needs advanced help about it, a lot of people here could help. Anyway I'll be happy to do it.
On linux, is it possible to use GIT? Is there a download for it?
Well, git was created by Linus Torvalds and mainly used by the opensource community, so ... :)

To use it, just follow what's explained on the wiki

Code: Select all

git clone http://fickzoo.com/fonsinchen/openttd.git
git checkout origin/cargodist
Of course you need a git client. On gentoo, "emerge dev-util/git". On deb/ubuntu, I don't know the client names. Just perform some "aptitude search [whatever]".
Patch - Let's timetable depot waiting time with the Wait in depot patch.
GameScript - Searching a new way to make your cities growing ? Try the Renewed City Growth GameScript.
My screenshots thread.
petert
Tycoon
Tycoon
Posts: 3008
Joined: 02 Apr 2009 22:43
Location: Massachusetts, USA

Re: Cargo Distribution

Post by petert »

The command for Linux Ubuntu is:

Code: Select all

sudo apt-get install git-core
The rest is just what you stated before.
User avatar
Gremnon
Tycoon
Tycoon
Posts: 1517
Joined: 16 Sep 2005 12:23
Skype: the_gremnon
Location: /home
Contact:

Re: Cargo Distribution

Post by Gremnon »

For Fedora (or other rpm/yum systems) use this command either sudo'd or as root:

Code: Select all

yum install git
I wouldn't say for Linux users that's the easiest way though, as for me, my computer doesn't have the space to handle the immense amount of space a GIT checkout of CargoDist seems to need, and it takes far too long. I would suggest getting the trunk-cargodist patch, and the corresponding trunk revision by SVN. It takes less time and space, and is far easier.
petert
Tycoon
Tycoon
Posts: 3008
Joined: 02 Apr 2009 22:43
Location: Massachusetts, USA

Re: Cargo Distribution

Post by petert »

Gremnon wrote:It takes less time
I just downloaded the git repository in about 2 minutes, faster than SVNing the source and applying the patch. On Linux, I prefer using git.
User avatar
Gremnon
Tycoon
Tycoon
Posts: 1517
Joined: 16 Sep 2005 12:23
Skype: the_gremnon
Location: /home
Contact:

Re: Cargo Distribution

Post by Gremnon »

I can download a single trunk revision in a matter of moments, and start working on it.
I can download what seems like the entire GIT repository of CargoDist using the commands listed above, and it takes half an hour, and too much space.
Plus you can get a tool, NautilusSVN which acts similarly to TortoiseSVN for windows, and integrates into nautilus, allowing for ever quicker SVN management.

I cannot see any reason I would use GIT except if I had no choice in order to get CargoDist.
jui-feng
Engineer
Engineer
Posts: 35
Joined: 01 Feb 2009 15:20
Location: Germany

Re: Cargo Distribution

Post by jui-feng »

You need to learn the advantages of an distributed version control system.
petert
Tycoon
Tycoon
Posts: 3008
Joined: 02 Apr 2009 22:43
Location: Massachusetts, USA

Re: Cargo Distribution

Post by petert »

jui-feng wrote:You need to learn the advantages of an distributed version control system.
One of them being the easiness of branches in git, or that's what fonso says.
User avatar
Gremnon
Tycoon
Tycoon
Posts: 1517
Joined: 16 Sep 2005 12:23
Skype: the_gremnon
Location: /home
Contact:

Re: Cargo Distribution

Post by Gremnon »

I know what was being talked about then. Firstly, Mercurial seems to handle it better, and secondly, the 'advantages' would be useful to someone using it to work on their code, such as those working on CargoDist, but not for me. All I use it for is to check out - or try to - a single revision, to make my own local compiled version.
User avatar
WLK
Engineer
Engineer
Posts: 31
Joined: 15 May 2005 13:47
Location: Slovakia
Contact:

Re: Cargo Distribution

Post by WLK »

Can anybody post win32 binary including fonso's latest hotfix from 6th Dec., please? Thanx
Terkhen
OpenTTD Developer
OpenTTD Developer
Posts: 1034
Joined: 11 Sep 2008 07:32
Location: Spain

Re: Cargo Distribution

Post by Terkhen »

I can provide a binary later, but I think that the two latest patches are identical besides an update to trunk.
User avatar
fonso
President
President
Posts: 948
Joined: 13 Oct 2007 08:28

Re: Cargo Distribution

Post by fonso »

The hotfixes are for those who want to keep playing with an outdated savegame version. For example the "cargolist.diff" hotfix can be applied on top of r18368 and fixes the crash, but doesn't modify the savegame format. Like this you can keep playing your old saves from that version and give me meaningful bug reports if they still crash.

Newer versions, e.g. r18413, already have the fix and don't need additional patching. In fact, it's impossible to apply the hotfix on top of a version that doesn't have the specific bug the fix is made for. But as there was a savegame bump in trunk you can't load your cargodist savegames from r18368 in r18413.

If you start a new game I recommend using the latest version.
The guy on the picture is not me, it's Alonso.
el koeno
Route Supervisor
Route Supervisor
Posts: 454
Joined: 24 Sep 2004 15:47

Re: Cargo Distribution

Post by el koeno »

keoz wrote:
petert wrote:
keoz wrote:Anyway, I think that the simplest way to use cargodist, for anyone is using any Linux distro, stays to compile the patched version directly taking the sources from the git repository. It is no so complicated as someone could think it. And if someone needs advanced help about it, a lot of people here could help. Anyway I'll be happy to do it.
On linux, is it possible to use GIT? Is there a download for it?
Well, git was created by Linus Torvalds and mainly used by the opensource community, so ... :)

To use it, just follow what's explained on the wiki

Code: Select all

git clone http://fickzoo.com/fonsinchen/openttd.git
git checkout origin/cargodist
Of course you need a git client. On gentoo, "emerge dev-util/git". On deb/ubuntu, I don't know the client names. Just perform some "aptitude search [whatever]".
Sorry to continue this off-topic, but after the initial clone/checkout, is there a quick way to update the source? Or does it automatically skip everything that has not been changed if you do another git clone?
Post Reply

Return to “OpenTTD Development”

Who is online

Users browsing this forum: No registered users and 10 guests