From: Mike Kronenberg <mike.kronenberg@kberg.ch>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] news on the OS X cocoa port
Date: Thu, 04 Aug 2005 09:36:41 +0200 [thread overview]
Message-ID: <42F1C589.40608@kberg.ch> (raw)
In-Reply-To: <42DF9604.2090503@kberg.ch>
Mike Kronenberg wrote:
> I'm thinking of a new way to store the images and saved VMs, too.
> Maybe we could make something like vpc: A package with the config,
> disk-images and saved VMs, located in ~/Documents/QEMU PCs/
QEMU guest PC Format, a Proposal
This should serve as a base for the discussion on a Structure/Format to
save preconfigured/saved guest PCs.
Structure:
all the Files needed by the VM are stored in a folder. The folder has an
ending of .qvm (QEMU Virtual Machine).
Mandatory Files:
- Harddiskimages
Configuration File (configuration.plist)
Other Files:
FDImages
CDImages
Thumbnail (thumbnail.png)
VM State File (saved.vm)
Host dependent Files:
PkgInfo (OS X)
info.plist (OS X)
Format:
As a general format, I propose XML. To be more exact: PropertyLists. You
find the definition for PropertyLists at:
http://www.apple.com/DTDs/PropertyList-1.0.dtd
Why XML?
We live in a small world, the QEMU community started out from France and
has now it's followers all over the world. The developers and (hard)core
users may stick to ASCII characters. But this is not the case for a
broader community. Localized Operating Systems and less
interested/educated users will fast break compatibility of simple
text/ini files. (There might even arise difficulties with
ASCII/MacRoman) So XML is the choice in the long run.
Why PropertyList?
Because they are easy to handle. Datatypes/Values and Variable Names are
stored as pairs:
<dict>
<key>author</key>
<string>Mike Kronenberg</string>
<key>date</key>
<date>2005-07-27T22:00:00Z</date>
</dict>
What should be covered by “configuration.plist”?
Version
About
Arguments
PC Data
Temporary
There is no particular Order, Data is accessed by key.
1.Version
Simple String to define the version of this configurations.plist file.
Format: 1.0.0
2.About
Author name, Date, Copyright/left. Place for further Descriptions.
3.Arguments
To have the highest compatibility, we should stick to a simple
option/value Scheme here, with boolean YES/NO for arguments with no
value, like -enable-audio. There should be no host dependent switches here.
4.PC Data
PC Name, PC Description, PC Status, emulated CPU and other guest PC
related “Meta” Information.
5.Temporary
“Nice to have” data, host dependent switches – shortly everything that
is NOT needed to guarantee the operation of QEMU.
Sample configuration.plist:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>About</key>
<dict>
<key>author</key>
<string>Mike Kronenberg</string>
<key>copyright</key>
<string>© 2005, Mike Kronenberg</string>
<key>date</key>
<date>2005-07-27T22:00:00Z</date>
<key>description</key>
<string>This is a sample PC configuration.</string>
</dict>
<key>Arguments</key>
<dict>
<key>-boot</key>
<string>c</string>
<key>-cdrom</key>
<string>/dev/cdrom</string>
<key>-hda</key>
<string>Harddisk1.raw</string>
</dict>
<key>PC Data</key>
<dict>
<key>name</key>
<string>My new PC</string>
<key>state</key>
<string>saved</string>
<key>system</key>
<string>qemu-system-x86_64</string>
</dict>
<key>Temporary</key>
<dict/>
<key>Version</key>
<string>0.1.0</string>
</dict>
</plist>
Waiting for Your Suggestions...
Mike
next prev parent reply other threads:[~2005-08-04 7:55 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-07-21 9:44 [Qemu-devel] news on the OS X cocoa port Mike Kronenberg
2005-07-21 10:12 ` Hetz Ben Hamo
2005-07-21 12:33 ` Mike Kronenberg
2005-07-21 13:46 ` Hetz Ben Hamo
2005-07-21 17:33 ` Stealth Dave
2005-07-21 18:21 ` Natalia Portillo
2005-07-22 9:58 ` Pierre d'Herbemont
2005-07-22 11:28 ` Mike Kronenberg
2005-07-21 14:00 ` René Korthaus
2005-07-21 15:20 ` Jim C. Brown
2005-07-22 7:51 ` Mike Kronenberg
2005-07-22 8:44 ` René Korthaus
2005-07-22 9:42 ` Mike Kronenberg
2005-08-04 7:36 ` Mike Kronenberg [this message]
2005-08-04 18:39 ` Natalia Portillo
2005-08-05 11:45 ` Mike Kronenberg
2005-08-14 19:18 ` Mike Kronenberg
-- strict thread matches above, loose matches on Subject: below --
2005-07-22 2:05 Joshua Root
2005-07-22 7:28 ` Mike Kronenberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=42F1C589.40608@kberg.ch \
--to=mike.kronenberg@kberg.ch \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).