AKFQuiz-FAQ

Why is there so much in English?

Because I don't speak Esperanto. ;-)

Well, I don't want to limit the program to be used in just one country, and it's much easier to find a German who speaks English, than to find a Japanese who speaks German.

By the way, it's much easier first to write something in a foreign language and then translate it to my native language, than vice versa.

I have installed AKFQuiz using the autopackage, but the programs don't find any quizfiles.

Try to log out and log in again. Then the variable QUIZPATH should be set.

What file-extension have AKFQuiz-files?

Give them either the extension ".akfquiz" or no extension at all. On more limited systems you could also use the extension ".aqz". In some graphical environments it is useful for the system - in others it is rather disturbing. So you can decide.

I need to give a MIME-type to AKFQuiz-files. What can I use?

If you need a special mime-type for AKFQuiz, please use "application/x-akfquiz".

Since AKFQuiz-files are plain textfiles, you could also use "text/plain" if you want them to be shown as text.

What are the limits in AKFQuiz-files?

Each program for AKFQuiz has it's own limitations. So you have to try yourself. But if you intend to run your quiz just in one single environment, then don't bother about the others. The number of questions is unlimited in any frontend so far. The number of possible answers is limited to 35 in the interactive variants - a planned extension will limit it to 4, if you want to use it - but you will of course not be forced to support it.

The code does check the ranges of variables, so it should not be possible to misuse buffer overflows.

The syntax "URI:index.html" is wrong, because index.html is not an URI.

Well, if it were an URI you wouldn't have to use that keyword. Please read the keywords URI: or URL: as "handle the following as if it would be an URI, no matter whether it is one or not".

What programming language is used in AKFQuiz?

Most parts are in Pascal. To be precise it's mostly the Borland dialect. Well, that dialect is far away from the official standards, but indeed, it's more widely spread than the standards.

Then there is also a JavaScript script and some scripts for the Bourne-Shell. the tool quizstat is written in AWK.

And of course also HTML and CSS are used. But I don't regard them as being programming languages - but there are people who insist, that they are. Even professors at universities. ;->>>

What compiler do I need to compile it myself?

It's ported especially for FreePascal (FPC) and GNU-Pascal (GPC). GPC is fully supported from version 4.0.3 on.

If you want to compile it with another compiler, you have to do some porting work. It would be nice, if you would tell me about it. You'd better don't try p2c or Irie Pascal - That's most probably not possible.

How can I get in contact with you?

Write to akfquiz@akfoerster.de.

Please put the term AKFQuiz into the subject line, so I can distinguish it from spam more easily.

Are there DOS programs in the Windows package?

No, there aren't! There are programs which use the text console, namely crtquiz and linequiz. They look the same as their DOS counterparts. But yet, technically they are Windows programs, they wouldn't run without Windows. They use the Windows API for their output. - Yes, they use the text console through the Windows API!

But there are DOS programs available?

Yes, but they use a DOS-extender, since they are 32-Bit programs. Therefore you need the program CWSDPMI.EXE in your path. That's also the reason, why you need at least an 80386 processor, because the earlier processors were still 16-Bit processors.

Could AKFQuiz be compiled as native 64-Bit applications?

Yes, but there wouldn't be any advantage - there could even be disadvantages. But I cannot check that.

legal questions

The program is put under the GNU GPL. Does that mean, that quizfiles also must be published under this license.

No, not at all.

I'm a fan of free software. But I don't see quizfiles as software. It's something different and may have different licenses.

What are the license terms for the output of mkquiz? Under the terms of the GPL, do I have to put the HTML files under the GPL too?

If you are the author of the quiz, then you can choose which license to use. Since the HTML code is trivial, I don't claim copyright on that. You can do with the output of mkquiz whatever you want to do. So you could also remove the link to my homepage or any hint to my program - if you want to.

But the JavaScript-Code is licensed under the GPL - even if you would include it in the HTML-files. There you have to keep the copyright notices!

The png- and css-files of AKFQuiz are public domain, so do whatever you want with them.

May I publish my own version of AKFQuiz?

Yes, it's free software. You have to publish it under the same license terms, which means you have to make the source code of your version available. Of course you have to keep the copyright notice.

You have to mark the version as a modified version. The best way to do it, is to add a variant name. Edit the file configure and modify the VARIANT line. For example, if your name is Joe, use VARIANT="-joe". Then you have to execute ./configure to get this change into the source code.

When I change the programs, do I have to publish my changes?

No. If you publish your version, you must also make the source code available under the GPL. But when you make the changes just for your own or your schools use, there is no need to publish your modified version at all.

May i use code from AKFQuiz in my unfree programs?

No. You may not! - At least you may not publish such combinations.

I don't want to change the executables. I only want to change other things in your package.

Yes, you can do so. But you still have to make the source code available. It is not enough to point others to my homepage and say "get the sources there." It might be, that I don't have the source for that version anymore. So if you make binaries available, you have also the duty to make the source code available!

May I sell AKFQuiz for money, or include it in commercial program collections?

Yes you may. There is no limit how much you may charge for it. But you have to make the source code available.

May I put together AKFQuiz with unfree products?

Yes, as long, as they are separate enities. Well, I think using unfree software should be avoided whenever possible, but if you want to use it, it's your choice. You just cannot merge it together with unfree code to build up one product.

The book so and so says about the GPL...

The program is licensed under the GPL, not under a book about the GPL! I don't want to say, that your book says something wrong, but since a book tries to make things easier to understand, it simplifies things. But you cannot take these simplifications and say, that's what the GPL sais. Please read the GPL itselve!

I have found a version labeled "AKFQuiz-testing". What's that?

It's an intermediate, not official version. Use it at your own risk. There may be different variants with the same version number.

If you have the source code, you can use it, as if it was published. If you don't have the source code, you may use it, but you may not distribute it. Don't ask me for the source code, I most probably don't have it either. Get the latest official release.

Quiz files

(How) can I sign a quiz-file using GnuPG?

Yes, you can. Make sure that your quiz-file ends with the keyword "end" or "Ende", then use gpg --clearsign --not-dash-escaped myquiz.akfquiz. You don't have to necessarily use the --not-dash-escaped option. The AKFQuiz programs take care about dash-escaped sequences, but it encreases the readability when you use the option.

This only works with AKFQuiz 4.1.0 or higher.

GRQUIZ

Grquiz can be linked to use different libraries. How can I find out, what library is needed when I have a precompiled binary?

Use the tool "ldd": "ldd /usr/local/bin/grquiz" That also tells you, when something is missing.

When I try to start grquiz, I only get the message "svgalib: Cannot get I/O permissions.".

When grquiz is linked with SVGAlib, it needs root-priviliges. When you install the program, it should be installed setuid root. That solves the problem.

Grquiz just gives me a long message, that says something like
"You must be the owner of the current console to use svgalib. Not running in a graphics capable console, and unable to find one."

Are you trying to start it under X11? Try to start it from a text-console, or use a version, that is compiled for X11.

Are you trying to run it in a framebuffer device? Try it without the framebuffer (it might work with that, but it's not granted).

Are you trying to start it over the network? SVGAlib isn't network-capable.

When I try to start grquiz, I only get the message
"GrSetMode: could not find suitable video driver"

Then it was compiled with GPC. Try to start it under X11. If that doesn't help, use the tool "ldd" (see above) to find out, what you need.

I use FPC to compile the programs. How can I determine, which output device is used for grquiz?

At the moment you can only use SVGAlib with FPC. Use GPC and the library GRX if you want to compile it as an X11 application.

CRTQUIZ

The initial screen and the first comments are not shown, when I start up crtquiz. In the second round, they are there.

That's a known bug. It only appears with version 1.3 or earlier on BSD systems. It should be fixed now.

With crtquiz I get a strange "1[" on the screen. {@@}

Some terminals don't know about how to hide the cursor. FreePascal doesn't use a terminal database. So, recompile it with activated "DEFINES+=-dNoHide" in the file "fpc.mak" or recompile it with GNU-Pascal.

With crtquiz the cursor goes to the upper left corner of the screen.

It's not a bug, it's a feature. This happens on terminals, that can not hide the cursor. If you don't like it, recompile with activated "DEFINES+=-D NoHide" in the file "Makefile.gpc". Then the cursor always stays after the "...".

With crtquiz on some terminals I get a black background, which looks ugly.

@@@

Crtquiz sometimes hang.

That's a known bug in older versions. It happens, when there is a long expression without spaces in it, which doesn't fit in the display - for example a long Internet-address. It's fixed in 2.04-18.

Another reason can be, that there are more than 9 possible answers. This bug is solved in version 3.2.0.

CGI:

Do I need a networked machine to use the CGI program?

No, you can also use it on a standalone machine. But you need a webserver. See also the next question...

I don't want to install a big webserver on my small machine!

Then install a small one. The program akfquiz.cgi was heavily tested with "BOA" <http://www.boa.org>, which doesn't need much more space than the bash.

There are also some browsers with a builtin CGI-Interface. But I haven't tested them yet.

Does akfquiz.cgi work with apache?

Of course!

Does akfquiz.cgi work with IIS?

Possibly not. I can't test it myself. But I've read, that iis is lacking a CGI-feature, my program uses.

Can I use a full URI to access the quizfile?

No, that could be misused.

So I can't access quizfiles on other servers?

Only if you deliberately import the filesystem with NFS, Coda, SMB or something like that.