From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: From: "Steve Simon" Date: Sat, 27 Mar 2010 07:53:45 +0000 To: lucio@proxima.alt.za, 9fans@9fans.net In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Subject: Re: [9fans] Man pages for add-ons Topicbox-Message-UUID: f58c1954-ead5-11e9-9d60-3106f5b1d025 > > 4) Once compilation is done, you create a package that is simply a > > tarball with the stuff that needs to be installed, a script and a _map_ > > that tells : this thing here shall be put there, with owner: owner:group > > and permissions: permissions. > > Should this be a proto? Just in case you've overlooked the option, no > offence intended. Indeed you could have a proto file to describe this, you could even have a program that unpacks the tar and installs only files that don't exist in the current file system, warning you if the local file has changed - you would have to use ISOs though as tar doesn't support all the plan9 permissions. you could call it contrib and base it on an underlieing file synchronisation system called replica... Distributing tars has a big disadvantage over replica (even if that access a remote ISO), image a big package, say TeX, and the author fixes a bug in a macro file, or changes the permissions on a file. replica will pull this one file, a tar would have to be re-copied. [deep breath] I really don't understand why people don't line contrib and want to put stuff in /opt or $home/bin. Plan9 is susposed to be all about understanding the problems in traditional OSs and comming up with new and innovative solutions to them. Why did we ever need /usr/local or /opt? I used to create them because when the OS vendor would supply a new release they would overwrite my files if I put it in /bin, it also allowed me to easily wrap up the changes I had written to the OS when I moved machines/jobs. On plan9 OS upgrades use replica which takes care not to stomp over your changes, and when I move jobs I just take some DVDs of my venti with me. you want to know which file make up a package, contrib/list -v will tell you you want to know which files you have changed WRT the destribution? replica/changes. I don't see the problem, the OS and /sys etc is not sacrosanct, and as has been said if somthing doesn't work, venti is your friend. if people are worried about releasing bleeding edge packages vs stable ones, create two contrib packages, or even better, release only test working features and then contrib/push out new ones as they appear. -Steve