<commit_before># Hacking on Cockpit

It is recommended that you create one or more dedicated virtual
machines to try out and develop Cockpit.

While playing with Cockpit you will very likely want to run
experimental code that does dangerous things, such as formatting block
devices.  And even if the code has no bugs, you might want to
intentionally do destructive things that you would never want to do to
a production system.  And last but not least, it is easier to add more
virtual hardware to a virtual machine for testing, such as more hard
disks or network adapters.

## Dependencies

Currently the x86_64 architectures of Fedora 20 and Rawhide are most
often used for development.

Check `tools/cockpit.spec` for the concrete Fedora build dependencies.
The following should work in a fresh Git clone:

    $ srpm=$(tools/make-srpm)
    $ sudo yum-builddep $srpm
    $ sudo yum install nodejs npm

In addition for testing the following dependencies are required:

    $ sudo yum install trickle nbd-server python-libguestfs qemu \
         mock qemu-kvm python curl libvirt-client libvirtd qemu-nbd \
         krb5-workstation krb5-server
    $ npm install phantomjs

## Building and installing

Cockpit uses the autotools and thus there are the familiar `./configure`
script and the familar Makefile targets.

But after a fresh clone of the Cockpit sources, you need to prepare<commit_msg>HACKING: yum-builddep can read the .spec file directly.<commit_after># Hacking on Cockpit

It is recommended that you create one or more dedicated virtual
machines to try out and develop Cockpit.

While playing with Cockpit you will very likely want to run
experimental code that does dangerous things, such as formatting block
devices.  And even if the code has no bugs, you might want to
intentionally do destructive things that you would never want to do to
a production system.  And last but not least, it is easier to add more
virtual hardware to a virtual machine for testing, such as more hard
disks or network adapters.

## Dependencies

Currently the x86_64 architectures of Fedora 21 and Rawhide are most
often used for development.

Check `tools/cockpit.spec` for the concrete Fedora build dependencies.
The following should work in a fresh Git clone:

    $ sudo yum-builddep tools/cockpit.spec
    $ sudo yum install nodejs npm

In addition for testing the following dependencies are required:

    $ sudo yum install trickle nbd-server python-libguestfs qemu \
         mock qemu-kvm python curl libvirt-client libvirtd qemu-nbd \
         krb5-workstation krb5-server
    $ npm install phantomjs

## Building and installing

Cockpit uses the autotools and thus there are the familiar `./configure`
script and the familar Makefile targets.

But after a fresh clone of the Cockpit sources, you need to prepare
{'fraction_non_alphanumeric': 0.03618304363249379, 'fraction_numerical': 0.005675771550195104, 'mean_word_length': 3.9387040280210157, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3976558', 'n_tokens_mistral': 781, 'n_tokens_neox': 725, 'n_words': 407}