Re: YaST2 for Debian (aka nYaST)
On пн, 2004-11-22 at 11:57, Mario Fux wrote:
> Am Donnerstag, 18. November 2004 15.35 schrieb Rumen Krasstev:
> > Hello Mario,
> Morning Rumen
> Sorry for the delay too.
Hi Mario :-)
> > I'm doing big efforts last 6 months (since SuSe v 9.1 - I had
> > information for future gpl-ing of yast) to do this - port Yast2 for
> > Debian. I'm playing with the code these last months and I can give you
> > some advices - it's appear to be not so trivial task :-/
> Very interesting and realistiv. But nonetheless do you think too that it's
> possible to port it, am I right?
Yes, definitely it is possible.. Just I'm starting to think that YaST is not only complex system for
administration and configuration - it is most importrant part of the
core of the system the we call SuSe Linux. Why? When I digging into the
code more and more times it appears that in the begging (before 7 years)
YaST was planned as multiplatform modular system, which is upgraded
meanwhile to specific SuSe problems. That's why in so many places in the
code there is relations (unnecessary, for me) to specific SuSe tools and
issues... For instance the package manager - the core system depends of
it, which is ridiculous for me - the rpm system is everywhere :-/
So in general - we trying to port SuSe to Debian - that's it
:-)))))))))) The scissors will play really serious if we want to succeed
> Another question: Is there already source code which we can see?
I guess you would be happy of german mirror so here you are:
your right directory is /i386/9.2/suse/src/ (for example)...
After that it's going more and more hard.. I'll write these days deep
documentation how to dial with this madness :-))))))
> > 1. Yast2 don't even wish to compile under Debian - there are to many
> > dependencies, some of them not available to Debian, such as rpm 4.1.1
> > (in unstable it's 4.0.4) - rpm is a complex program and don't want to
> > compile too.. Dependencies between packages are so bad, that one can
> > compile/port only packages with documentations and some basic stuff.
> > I've some progress in this but I can't still compile the hole yast :(((
> Ok. Is your code publicly accessible?
There is no code... yet :((( The first step is to compile the YaST core -
so the major problem (as I mentioned before) is rpm 4.1.1 -
now I'm trying to lie him that 4.04 (from unstable) is enough useful - so I'm patching
the automake/autoconf scripts, but for now without good result :-/
Another (much better) solution is to remove all the code which require
rpm - that is much more harder work and because I'm doing this in my
free time (which is not so much - my job just suck my out :( I chose the
easier solution - if the maintainer of Debian's "rpm" package (Anibal
Monsalve Salazar) release 4.1.1 we have big chances to pass this step...
My biggest problem is... free time :((((
> > 2. Even with successfully compilation it's impossible to use this
> > version of Yast in Debian - there are too many differences between SuSe
> > and Debian in architectural level. For example almost all configurations
> > in YaST2 are made in directory sysconfig which is not LSB1/2 compatible,
> > furthermore there are too many config files with custom names, like
> > timezone, firewall, etc. So in general using this version of Yast will
> > make your system unpredictable :(
> Ok. So we have to make huge modifications.
Indeed.. The problem is these modifications are related to the core - so only experienced C/C++ developers can manage these
(I can but with this tempo I'll finish after year :(
> > 3. Fortunatly the guys in SuSe made Yast (technologically) very mature -
> > it's totally modular and have 3 different independent levels (layers) -
> > representative (QT, curses and the new one GTK+), module (ex: firewall,
> > proxy, dns server, samba, etc.) and configuration files.. This is a long
> > story but i could tell you in general how it works - the modules are
> > written in abstract custom (4th level) language - something between C
> > and Prolog (for example) - there is a parser which translate this
> > language to C.. For example you want a window and type
> > window.open(parameters) and it translate it to GTK or curses or QT API
> > in C.. Every checkbox, listbox, button and so on is described like
> > this.. All places that needs name of file/directory is replaced by
> > abstract global variable, which is described in separated file (.scp) -
> > so it should be enough to edit these .scp to be compliant with Debian
> > for every module and probably after many tests/debugs it will work..
> > ...
> Very interesting.
Note, that every not so simple module (for instance mail server) requires specific knowledge -
I mean for some things only experienced administrators (not developers
like me) can tell us where is the "under_water_stones"... For example
Debian's maintainer of "squid" can help us so much with porting the
YaST's "squid" module..
> > There is other problems, but I described only majors - the compilation
> > and the transformation of the .scp
> > So.. If somebody wants to helps me I can write him deep explanation how
> > it works (it is very complex and big system believe me)..
> I think we are interesting and it would be a pleasure for us if you could help
> us. So we are really interested in a deeper explanation.
I will - it is my first priority open source project that, I spend my
free time, but we need much more stronger organisation if we want to
finish as soon as possible - for instance web site (even simple is
enough), mail list, bug tracker, cvs server, etc.. Of course there is
SourceForge - but I'm not sure will it be enough?
> > In this meaning I thing for this project a team of 3-4 people and 6-9
> > months probably will be enough...
> Ok. We are 3-4 persons and with a goal in sight YaST2 will become reality.
Yeah, this give me a new hope :-)))))))))
Rumen Krasstev - Object Builder Software Bulgaria
Sofia, 113 Tzarigradsko Shose, phone: +359 2 974 33 16
web: http://www.obs.bg, email: firstname.lastname@example.org, icq: 35447386
###I'm using only free or/and open source software###
Share the freedom - "Free Software Association - Bulgaria" http://www.fsa-bg.org