Source i (link to git-repo or to original if based on someone elses unmodified work):

Add the source-code for this project on opencode.net

1
Become a Fan
5.0

Available as/for:
Description:
A tool to create KDE from scratch with a graphical UI. KDE packages can be updated via CVS, one or more packages can be selected for update/configure/build/install.
Last changelog:

V 0.6.1
* Added telnet interface to see at work what you compilation at home is doing
V 0.6
* Redesigned GUI
(All icons taken from the kde artwork package)
* Default sounds from KDE (in /opt/kde3)
* Splash screen
* Chose player for sounds
* Additional sound for errors
* Change colors of output
V 0.5.1:
* added some tooltips in mainview
* added Flag to ignore compile errors to get the whole stuff compiled
* Filename of .cvspass was wrong
* Support for environment
* Selection of qt directory (untested)
* Added russian language (empty)
* run make install/uninstall as non-root. Maybe later change this by option
* Fixed doubling of packages when no config exists
* Packages now autodeleted list, was probably a memory leak

V 0.5:
* Checked tab order in every widget
* added support for debug
* added support for selecting destination path
* added i18n support for local language
* added german translation file
* added selectable wavs to play when finished and stopped
(if someone could tell me how to hear something...?)
* Once again added some packages
* All known packages are automatically added when not existing yet
* Storing dates works now (really!)
* make uninstall in context menu (not tested)

Solutions:
- as kdesu not works, make install is called as non-root. Best install kde to $HOME/kde
- cvs login "works" if you call qbuildkde in console. When asked for password just press enter. Sorry, did not get it better. But dont mind, its only if you never were logged in before.
- Added configuring of sound player


Ratings & Comments

35 Comments

slesa

It would be nice to get some feedback about known problems / limitations / needed features... did I forget something?

eriksjolund

adivobuilder is an app doing something similar.

http://www.abc.se/~m10828/adivobuilder/html/screenshots.html

I wrote it two years ago. It was a great way to learn kde programming. I don't think it has been used much. Not even by me. Feel free to take code or ideas from it ...

slesa

Thank you. Right now I am in a bit trouble (at the office), so I do not have the time to look carefully at it. Any great things I can look for? One problem is, that it depends a lot on kde itself, so I have to retranslate it back to qt.

eriksjolund

I made a new release today that compiles on Fedora Core 2 ( kdelibs-3.2.2, gcc-3.3.3 ). http://www.abc.se/~m10828/adivobuilder/src/ Here are some features:

  • building and install commands are written in a table ( where cvs modules are on the y-axis ).
  • a similar table exists for specifying the working directories for the commands.
  • updates from cvs ( also with cvsup or rsync )
  • collects the available cvs tags from viewcvs, ( for instance from http://webcvs.kde.org/cgi-bin/cvsweb.cgi/ )
  • configuration is saved in a xml file

Start adivobuilder and open the file examples/kdecvs.adivobuilder to see how it works.

cheers, Erik Sjölund

slesa

Can't we put tose things together? Ok, this command-table is hardwired by me, but I think thats ok. And the source code tabkle seems right to be hardwired, too (everything below .../kde). I think with your tool, I could build everything, not only kde, right? But I'd like to support the cvs tags and cvsup/rsync, too. The only thing is: it must not depend on kde itself...

eriksjolund

Yes, the idea was to have a generic framework for building software. What I had in mind was to produce build configuration files for kde, gnome and XFree86. But I didn't get any longer than to the building of kde. Another idea I had was to use the build results to generate a tinderbox-like html output. For an example look at: http://www.abc.se/~m10828/adivobuilder/html/kdecvs/ I used an XSLT script for this ( xslt/adivobuilder.xsl ). Right now I have some other projects to take care of, so I don't think I will have time to code any new stuff for qbuildkde or adivobuilder. But I will try to answer your questions... I am bit curios: Why do you want to do a pure QT-app?

slesa

Because I want to be able to install a complete kde from scratch without having kde installed. The idea behind is: download qbuildkde, press the button, wait what happens - in best case kde is ready then. Only one problem is left: how to avoid depency failures within the packages (xxx-devel is missing)...

eriksjolund

Ok, I think I understand now. A Qt app is possible to build statically. That is no shared libraries, and hence no dependency on the Qt-library. But I guess building statically is not possible for a KDE app. A user without any QT- and KDE-libs could just download your statically built Qt app and start from there. This make sense. But in my opinion the common situation would be that QT and KDE already are installed. Maybe a Qt app is a better way to go. I don't know...

Diablo82

maybe u should also provide a version of your program which can run even without a complete qt package and without kde, since it's meant to be installed:) u should try to add support for qt embed (or something like that) so it can run using framebuffer. Keep up the good work.

slesa

Compile kde to qt embed? Really? I thought this would be qtopia itself, but never heard of kde running on it. Tell me more about it... Another task would be to compile kde on win32. Anyone tried it?

Diablo82

not kde, that's not possible, u can do that only with konqueror and some other apps, i just thought it would be good to compile also your app with qtopia support in order to use it even if u don't have kde or ordinary qt already installed or your linux box.

slesa

I think thats a bit tricky for me. Last time I tried this for Zaurus, I had to backport everything to Qt2 - it was the hell. If this is easier now, I can have a look at it. If someone has expirieces that way - feel invited.

pynm0001

Actually, there already exist several KDE CVS build scripts that don't depend on Qt/KDE to run, including kde-build in the kdesdk module, and my own script which I won't plug here. ;-) The nice thing about this program is that it is GUI driven, making it even easier for people to install a CVS version of KDE. Beyond that I'm not sure, as I've never used it myself.

virgiln

Not a big deal, but most times the whole folder is compressed instead of the contents of the folder being compressed. Thanks, Virgil

slesa

Sorry, but I dont know what you mean... did not understand that sentence at all.

pynm0001

What he means is that when you do: $ tar xzvf archive-version.tar.gz the files are extracted in the *current* directory instead of being extracted into the directory archive-version. When you package your program, you should create a temporary directory, copy the files that will be in the package into this temporary directory, and then tar up the directory, not the files. Example: $ mkdir qbuildkde-0.6 $ cp source.* qbuildkde-0.6 $ tar czf qbuildkde-0.6.tar.gz qbuildkde-0.6 $ rm -r qbuildkde-0.6 Your archive is now contained within qbuildkde-0.6.tar.gz, and will not spill files all over a user's home directory when he extracts it. ;-)

slesa

Oh yeah, sure. And do you want to hear a joke - I hate it if foreign tgz's do not contain a directory :-) f**k Sorry about that

slesa

Anyone a nice release script? Should create the link, tar it to that name, and increase the release number?

pynm0001

I made a simple packaging script for kdecvs-build that I use when I make releases, but it's rather tied to the CVS repository.

yf12s

What KDE needs is a GUI configurator like xconfig is for the Linux kernel. One advantage Gnome has over KDE is that you don't have to install a bunch of unwanted programs if you don't want to. This is a problem for Gnome in that installation is a pain in the butt. However, KDE installs a bunch of programs that are useless or unworthy of my hard disk space. Now with KolourPaint, why do I need KPaint? Why do I need KEdit if I have KWrite and Kate? And even so, I might opt to not have some of these programs all together. In other words, we need a little utility that will let you check off programs you want to build in the various packages. I think KDE has it down when it comes to bundling the distribution over fewer packages. However, let's have some more flexibility during the compilation process. I also think it would be neat to make a control center module that would let you uninstall programs from the KDE distribution, but that is a different issue entirely.

kwr2k

Can this utility be used to provide the fine grained control of selecting individual applications of KDE rather than packages? I second the above post that KDE installs too much stuff and although there are quite a few friends out there who may want "the works", lot of us want a minimalistic desktop. Now, please don't point me towards GNOME or XFCE or any other desktop. I want KDE but want to install only the things I use everyday! Qbuildkde would be better than konstruct if we can have this fine grain control -- along with the GUI! It would be a killer app for most of us, IMHO.

Diablo82

There are too many "useless" apps in kde, it would be really useful to choose which ones you wanna install without wasting hd space and time. This is something really missing to kde. If you add this feature to your app it would be great:)

slesa

This was planned from the beginning... I already added subpacks to the cvs version, but still have probems with reading them back (will be solved today). Then I'll play around with configure and its disable-xxx params, so this feature may be available in the next version, ok?

Diablo82

Sounds great:)

slesa

Yes, uninstalling would be nice. But there would be (and there is) another problem: the i18n-files will be installed anyway / are not uninstalled, because it is an own package, isn't it? And what about the depencies (kdeextragear-lib1 for example)? Maybe this can be solved by qbuildkde, but then make uninstall must be implemented from each package.

Pling
0 Affiliates
Details
license
version 0.6.1
updated
added
downloads 24h 0
mediaviews 24h 0
pageviews 24h 0

More Developers Apps from slesa:

QtHelpers
slesa
last update date: 19 years ago

Score 5.0

Other Developers Apps:

Oo-mox
actionless
last update date: 8 years ago

Score 6.5

KEXI
jstaniek
last update date: 7 years ago

Score 6.5

BlackAdder
appy
last update date: 20 years ago

Score 5.0

Wing IDE Professional
sdeibel
last update date: 15 years ago

Score 5.0

Quanta Gold
appy
last update date: 20 years ago

Score 5.0

Codie
elgunvo
last update date: 15 years ago

Score 5.0



System Tags