Tag Archives: fedora

Fedora 20 Virtualization Test Day is on Tuesday

Fedora 20 virtualization test day is this Tuesday. Come and join us on FreeNode IRC in #fedora-test-day.

Ideally you would have one of the following in decreasing order of preference:

  • Fedora 20 installed on a physical machine (the best option!)
  • Fedora 20 installed in a virtual machine — make sure you give the VM plenty of disk space and RAM.
  • Fedora 19 with virt-preview or with updated F20 packages via some other route (eg. compiling from SRPMs).

But we’re also around in case you just want to chat about upcoming Fedora features.

1 Comment

Filed under Uncategorized

OCaml 4.01.0 entering Rawhide

After using OCaml for around 10 years it is still my favourite language, and it’s amazing how far ahead of other programming languages it remains to this day.

OCaml 4.01.0 was released on Thursday and I’m putting it into Fedora Rawhide over this weekend.

Debuginfo is now (partially) enabled. The OCaml code generator has produced good quality DWARF information for a while, and now you are able to debug OCaml programs in gdb under Fedora:

$ sudo debuginfo-install ocaml ocaml-findlib
$ gdb /usr/bin/ocamlfind
Reading symbols from /usr/bin/ocamlfind...
Reading symbols from /usr/lib/debug/usr/bin/ocamlfind.debug...done.
(gdb) break frontend.ml:469
Breakpoint 1 at 0x432500: file frontend.ml, line 469.
(gdb) run query findlib -l
Starting program: /usr/bin/ocamlfind query findlib -l

Breakpoint 1, camlFrontend__query_package_1199 () at frontend.ml:469
469	let query_package () =
(gdb) bt
#0  camlFrontend__query_package_1199 () at frontend.ml:469
#1  0x000000000043a4b4 in camlFrontend__main_1670 () at frontend.ml:2231
#2  0x000000000043aa86 in camlFrontend__entry () at frontend.ml:2283
#3  0x000000000042adc9 in caml_program ()
#4  0x00000000004834be in caml_start_program ()
#5  0x000000000048365d in __libc_csu_init ()
#6  0x0000003979821b75 in __libc_start_main (main=0x42aa60 <main>, argc=4, 
    ubp_av=0x7fffffffde38, init=<optimized out>, fini=<optimized out>, 
    rtld_fini=<optimized out>, stack_end=0x7fffffffde28) at libc-start.c:258
#7  0x000000000042aaa9 in _start ()
(gdb) list
464	;;
467	(************************** QUERY SUBCOMMAND ***************************)
469	let query_package () =
471	  let long_format =
472	    "package:     %p\ndescription: %D\nversion:     %v\narchive(s):  %A\nlinkopts:    %O\nlocation:    %d\n" in
473	  let i_format =

GDB only understands location data at the moment, so you can’t yet query variables (although I understand OCaml generates the correct DWARF info for this, GDB just doesn’t know how to print OCaml expressions).

There will also be some limitations on the debuginfo built at first. At the moment it doesn’t include debuginfo for OCaml libraries called from an OCaml program, because of problems that need to be worked out with the toolchain. Mixed OCaml binary / C library debuginfo does work.


Filed under Uncategorized

Apple G5 running Fedora 19

I bought this box about a year ago but I don’t think I wrote about it at the time (at least, I can’t find anything in the archives).


It’s an Apple G5 circa 2005 which cost me £165 (from this eBay seller).

These boxes are sweet — dual socket, 64 bit, 4 GB of RAM, 80 GB of hard disk. It’s surprisingly fast for an 8 year old machine, and beautifully built. Anyone hazard a guess what this would have cost when new?

It runs Fedora perfectly, and has Alex’s “fake KVM” [PDF] support so you can run virtual machines pretty fast too.

$ cat /proc/cpuinfo 
processor	: 0
cpu		: PPC970MP, altivec supported
clock		: 1000.000000MHz
revision	: 1.1 (pvr 0044 0101)

processor	: 1
cpu		: PPC970MP, altivec supported
clock		: 1000.000000MHz
revision	: 1.1 (pvr 0044 0101)

timebase	: 33333333
platform	: PowerMac
model		: PowerMac11,2
machine		: PowerMac11,2
motherboard	: PowerMac11,2 MacRISC4 Power Macintosh 
detected as	: 337 (PowerMac G5 Dual Core)
pmac flags	: 00000000
L2 cache	: 1024K unified
pmac-generation	: NewWorld

$ free -m
             total       used       free     shared    buffers     cached
Mem:          3983       3966         16          0        221       3069
-/+ buffers/cache:        675       3308
Swap:         2911          0       2911

$ sudo lspci
0000:00:0b.0 PCI bridge: Apple Computer Inc. CPC945 PCIe Bridge
0000:0a:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce 6600 LE] (rev a2)
0001:00:00.0 Host bridge: Apple Computer Inc. U4 HT Bridge
0001:00:01.0 PCI bridge: Broadcom BCM5780 [HT2000] PCI-X bridge (rev a3)
0001:00:02.0 PCI bridge: Broadcom BCM5780 [HT2000] PCI-X bridge (rev a3)
0001:00:03.0 PCI bridge: Broadcom BCM5780 [HT2000] PCI-Express Bridge (rev a3)
0001:00:04.0 PCI bridge: Broadcom BCM5780 [HT2000] PCI-Express Bridge (rev a3)
0001:00:05.0 PCI bridge: Broadcom BCM5780 [HT2000] PCI-Express Bridge (rev a3)
0001:00:06.0 PCI bridge: Broadcom BCM5780 [HT2000] PCI-Express Bridge (rev a3)
0001:00:07.0 PCI bridge: Apple Computer Inc. Shasta PCI Bridge
0001:00:08.0 PCI bridge: Apple Computer Inc. Shasta PCI Bridge
0001:00:09.0 PCI bridge: Apple Computer Inc. Shasta PCI Bridge
0001:01:07.0 Unassigned class [ff00]: Apple Computer Inc. Shasta Mac I/O
0001:01:0b.0 USB Controller: NEC Corporation USB (rev 43)
0001:01:0b.1 USB Controller: NEC Corporation USB (rev 43)
0001:01:0b.2 USB Controller: NEC Corporation USB 2.0 (rev 04)
0001:03:0c.0 IDE interface: Broadcom K2 SATA
0001:03:0d.0 Unassigned class [ff00]: Apple Computer Inc. Shasta IDE
0001:03:0e.0 FireWire (IEEE 1394): Apple Computer Inc. Shasta Firewire
0001:05:04.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5780 Gigabit Ethernet (rev 03)
0001:05:04.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5780 Gigabit Ethernet (rev 03)


Filed under Uncategorized

An ARM libvirt guest (on an x86-64 host)

Cole Robinson has fixed libvirt sufficiently that you can now run ARM libvirt guests on x86-64 hosts.

You’ll need the virtualization packages from Fedora 20. If you have Fedora 19, then you can recompile the following packages from Fedora Rawhide: libvirt, qemu, SLOF, virt-manager, libssh2, qemu-sanity-check. Or use Cole’s virt-preview repo. Then just follow Cole’s instructions.

$ uname -a
Linux trick 3.10.9-200.fc19.x86_64 #1 SMP
Wed Aug 21 19:27:58 UTC 2013 x86_64 x86_64 x86_64
$ sudo virsh list
 Id    Name                           State
 9     f19arm                         running

$ ssh
Last login: Tue Sep  3 11:43:27 2013 from
$ uname -a
Linux localhost 3.9.5-301.fc19.armv7hl #1 SMP
Wed Jun 12 14:56:17 UTC 2013 armv7l armv7l armv7l

1 Comment

Filed under Uncategorized

Booting Fedora 19 ppc64 netinst under qemu on x86-64

My notes on getting the Fedora 19 ppc64 netinst image to boot under qemu on an x86-64 machine.

Note: I’ve no idea if this is a good way, or a recommended way, but it worked for me.

1. Prerequisites:

I’m using Fedora 19 on the host. Note qemu-1.4 in Fedora does not work. I’m not using libvirt to manage the guest, although it’d be nice to get this working one day.

2. Compile qemu-system-ppc64 from upstream git.

3. Create an empty hard disk to store the guest:

# lvcreate -L 16G -n f20ppc64 /dev/fedora

or use truncate or qemu-img create.

4. Boot the netinst ISO using this qemu command line:

$ ./ppc64-softmmu/qemu-system-ppc64 \
    -cpu POWER7 \
    -machine pseries \
    -m 2048 \
    -hda /dev/fedora/f20ppc64 \
    -cdrom Fedora-19-ppc64-netinst.iso \
    -netdev user,id=usernet,net= \
    -device virtio-net-pci,netdev=usernet

5. You should get to the yaboot prompt.

There seems to be a rendering bug with graphics (X) in the qemu console. Anaconda was obviously running, but no drawing was happening in X, making it impossible to start the install. Oddly the exact same thing happened with VNC. Therefore I used a text-mode install:

boot: linux text

6. That should boot into the textual Anaconda installer.

If it gets stuck at returning from prom_init (and you should wait a minute or two to ensure it’s really stuck) then the problem is broken qemu, or you’re using the wrong CPU/machine type, or you’re trying to use a 64 bit kernel on 32 bit qemu.

QEMU tip: Use [Ctrl] [Alt] 2 to switch to the monitor. Use the monitor command sendkey ctrl-alt-f1 to send keycodes to the guest. Use [Ctrl] [Alt] 1 to switch back to the guest console.

tmux tip: Use [Ctrl] b [1-5] to switch between tmux windows.

1 Comment

Filed under Uncategorized

MK802 running Fedora (part 1)

As I mentioned a few days ago I bought a tiny Android-running mk802 “inspired” mini PC. Now I want to put the Fedora 19 Allwinner remix on it.

The first job was getting a micro SD card and a micro SD card reader that would work, easier said than done what with the market being overrun with fraudulent knock-offs. The 32 GB branded Sandisk micro SDHC card that I bought from Amazon (not from a reseller on Amazon, of course) works fine. The reader/adapter did not, so there was more delay while I found one which does.

The accoutrements for the mini PC together have cost somewhat more than the PC itself (all prices include tax and postage):

Mini PC £24
Micro SD card £16
Micro SD card reader £2
HDMI to VGA converter £17
HDMI gender changer £1

I followed Hans de Goede’s clear instructions to prepare the SD card (on my laptop).

It boots!


Unfortunately neither USB mouse nor keyboard work. That probably has something to do with this paragraph in the instructions:

USB controller caveats
The OTG USB controller in host mode only supports a limited number of
devices, plugging in a hub + mouse + keyboard typically will make either
the mouse or keyboard not work. This is a hardware limitation which we
will likely not be able to work around.

On tv-sticks and top-set boxes, simply avoid the otg connector, instead
use a hub in a regular host usb connector. Note on the mini-x the otg / host
marking is not always correct. If things don't work try using the OTG
connector instead!

On tablets and the gooseberry unfortunately only the otg connector is
available. One solution there is using a single usb-device which is
both a keyboard and a mouse at the same time. IE the receiver for logitech
wireless desktop sets.

… which I’ve not completely worked out yet, but probably needs a few more adapters.

Update: After the not-quite-successful boot, I put the SD card back into the computer to copy off the log files. This is /var/log/messages, and this is /var/log/Xorg.9.log.

Update #2: Thanks to Dennis Gilmore for pointing out that it’s the micro USB slot (marked “DC”) which is the OTG port that I should avoid. He says the keyboard and mouse will probably work if I use a USB hub connected to the regular USB port.

Leave a comment

Filed under Uncategorized

Android mk802 mini PC

This is a £22 ($35) Android mini PC. The processor is an AllWinner A10s (1 GHz) with 1 GB of RAM and 4 GB of flash. (Full specs here)

The cabling and converter required to connect the HDMI port to a VGA monitor cost slightly more than the PC itself:

Right to left: Mini PC, USB mouse connector, micro USB (for power), mouse, HDMI gender changer, mouse, HDMI to VGA converter

It boots into Android:


Using Android with a mouse is an odd experience, but generally works fine:


I’m hoping to get Hans de Goede’s Fedora 19 ARM remix on it later.

Leave a comment

Filed under Uncategorized

Fedora 19 virtualization test day 2013-05-28

Put it in your calendars .. May 28th is Fedora 19 virtualization test day.

New features include nested virtualization on Intel, new Boxes, new libosinfo, new qemu, KMS-based spice driver, live storage migration and virtio RNG.

Every day is libguestfs test day. Just follow the instructions here.


Filed under Uncategorized

Some thoughts after 2.5 weeks with the Samsung Chromebook

A couple of months ago I bought a Samsung Chromebook to use while travelling around Japan. So how did that work out?

I need to point out first that I was mostly using Fedora 17 (but could dual-boot into ChromeOS for occasional things like G+ Hangouts). Fedora 17 isn’t the latest release, and it is still using the ChromeOS kernel, not a Fedora-compiled kernel. I’ve marked with an asterisk all the points that I think are caused by the ChromeOS kernel rather than by Fedora or the Chromebook itself.

  1. * Suspend pretty much doesn’t work. It suspends OK, but can’t resume. This all works fine on ChromeOS however, and I suspect this is just a kernel issue which will/has been fixed in F18.
  2. Trackpad sucks quite a bit. For example, it’s very hard to accurately right click. Left clicking often causes the mouse to zoom around the screen. It works better in ChromeOS. Is this an X server issue and/or does ChromeOS use X?
  3. * There is some hardware clock problem I couldn’t quite fathom. Either the h/w clock is set to the local time or else Fedora cannot save the timezone, but either way, unless NTP was running (and hence I had wifi etc) it always flipped back to UTC after rebooting. Almost certainly some sort of kernel issue that has/will be fixed in F18.
  4. It’s very light weight. Carrying it around everywhere was no effort at all.
  5. Battery lasts “forever”. Well, at least 6 or 7 hours which was the longest I needed it for. XFCE Power Manager was predicting 8+ hours, but I don’t know how accurate that is.
  6. A touch screen would have been a really nice addition. But not if it meant increasing the price.
  7. It’s pretty robustly built.
  8. It’s fast enough, with enough storage, for serious development. While it’s not blazingly fast like x86-64, it’s good enough even for libguestfs development (libguestfs being a very large program).

I’m going to categorize this one as a definite success.


Filed under Uncategorized

Samsung Chromebook, part 2

Dan’s blog has a post on how to install Fedora 17 ARM on the Chromebook. I’m going to try it out as soon as the 16 GB SD card that I ordered arrives.

Edit: I followed Dan’s instructions and had no problem installing Fedora 17 on my Chromebook.


Filed under Uncategorized