You must have an account on the Subversion server to commit your work result on a package. At this moment we are preparing an application procedure. Please read the temporary account issuance policy before your application.
To checkout files from the Subversion, ssh will be used. It is recommended to configure your system to slogin with NOPASSWD for convenience.
$ eval `ssh-agent` $ ssh-add ~/.ssh/id_dsaIn Momonga Linux it is designed that eval `ssh-agent` is executed when X window system is invoked. Also there is
~/.xinit.d/hook
and if it
is set excutable it will also be executed.
So it should be marked as executable; do the following:
$ touch ~/.xinit.d/hook $ chmod +x ~/.xinit.d/hookand add the following line in the file.
ssh-add ~/.ssh/id_dsa < /dev/null
If bash is used
bash$ export SVN_EDITOR=jed
bash$ svn co svn+ssh://svn.momonga-linux.org/home/svnroot/svnroot_pkgs
If tcsh is used
tcsh% setenv SVN_EDITOR jed
tcsh% svn co svn+ssh://svn.momonga-linux.org/home/svnroot/svnroot_pkgs
As mentioned befre, give the command below to get the latest version. If you want to maintenace HEAD, move to the trunk directory.
$ svn co svn+ssh://svn.momonga-linux.org/home/svnroot/svnroot_pkgs $ cd ./svnroot_pkgs/trunk
Then do the following.
$ cd tools $ make
Give command below once in a while to have the latest version (especially for OmoiKondara).
$ svn update tools
It is recommended to always keep pkgs and tools together under
the same revision so update as a whole at a time.
$ cd pkgs $ cp ../tools/example.OmoiKondara .OmoiKondaraModify
.OmoiKondara
as required.
$ cd pkgs
$ ../tools/OmoiKondara Package name
With a default setting, if successfully built, packages will be placed in
$HOME/PKGS
.
Do the following in pkgs/
Releasing a new version package (i.e. a package with a new release number) please follow the rules described in Specfile-Guidance (in Japanese) to prepare a spec file.
Also when adding a new patch file, it is necessary to add a line mentioning the new patch file in the spec file.
Please confirm a successful build in your local environment first.
$ ../tools/OmoiKondara -r "-bp"Doing the above will put the built package inhoge
$ cdhoge
$ rpm -ba --rcfile rpmrchoge
.spec
pkgs/hoge
/RPMS/{arch}
Case for spec file renewal only
$ cvs commit pkgs/Package name
Case for adding new patch files
$ svn addhoge
/hoge.patch
$ ../tools/commithoge
When you update multiple packages, e.g., due to a change in depending library's API, do not commit each package separately. Rather do
$ ../tools/commit hoge
fuga
...
as above to commit the related packages at once. In this way your update
increase revision number only by 1 which can easily be rolled back.
On the other hand, if you update mixing unrelated packages in a single
commit, it would not only be difficult to see the
reason of update but also rewinding any related packages would be
difficult as well. So please be careful.
Adding a new application in Momonga Linux, it requires the application to be registered in OmoiKondara Subversion repository.
Under pkgs
, create a new directory
for the application. For example,
$ svn mkdir newapp
And put appropriate spec files and patch files in the directory.
Here, depending on the application, do the following tasks in the directory as required.
$ touch TO.Zoo will specify the package be placed in Zoo. As default, OmoiKondara will not build packages placed in Zoo.
$ touch TO.Nonfree will specify the package to be placed in Nonfree and not to build a binary package.
On the other hand, do the following to specific applications listed below:
$ touch SU.PLEASE
$ touch LANG=ja_JP.EUC-JP
Change the part after the equal sign according to the requirement of the application.
$ touch TIMEOUT.PLEASE
$ touch SRPMS.ONLY
$ touch JAVA
# Declare new file and package names in the repositoy.
$ svn add newapp/newapp.spec newapp/newapp.patch
# When you donot need to add any additional files in a package you can simply do
$ svn add newapp
# Commit the package in the repositoy.
$ ../tools/commit newapp