[bug#34034] : Add Bochs

Message ID CAOYpmvr83V26bUPjesjCFe98K2H+gaqf51oNLpbwc5h2s1PddA@mail.gmail.com
State Accepted
Headers show
Series [bug#34034] : Add Bochs | expand

Checks

Context Check Description
cbaines/applying patch fail Apply failed

Commit Message

guy fleury iteriteka Jan. 10, 2019, 6:18 p.m. UTC
an updated patch

Le jeu. 10 janv. 2019 à 17:40, Guy fleury <hoonandon@gmail.com> a écrit :

> hi guix,
>
> this patch add Bochs emulator
>

Comments

Leo Famulari Jan. 10, 2019, 11:42 p.m. UTC | #1
On Thu, Jan 10, 2019 at 07:18:04PM +0100, Guy fleury wrote:
> From 0380fab2ad7195407fc29afb830a86dbfae03b3f Mon Sep 17 00:00:00 2001
> From: guy fleury iteriteka <hoonandon@gmail.com>
> Date: Thu, 10 Jan 2019 17:33:30 +0100
> Subject: [PATCH] gnu: Add Bochs

Thank you!

> +    (outputs '("out"))

This is the default, so it's okay to leave it out.

> +     `(#:tests? #f)) ;; no tests exits

"No tests exist"

> +    (inputs
> +     `(("glib" ,glib)
> +       ("gtk+" ,gtk+)
> +       ("libxrandr" ,libxrandr)))

I noticed that it doesn't keep references to glib and gtk+:

------
$  guix gc --references $(./pre-inst-env guix build --no-grafts bochs)
/gnu/store/2dk55i5wdhcbh2z8hhn3r55x4873iyp1-libxext-1.3.3
/gnu/store/3vlscch2sxybd34qx2ianpg92crm9akm-libxdmcp-1.1.2
/gnu/store/4sqps8dczv3g7rwbdibfz6rf5jlk7w90-gcc-5.5.0-lib
/gnu/store/6lwn8v33r2z2l2pgky2dnzim3696dwnn-libbsd-0.9.1
/gnu/store/8baabfjazsr7s4y0jig1sn84xnxf75xa-libx11-1.6.6
/gnu/store/h90vnqw0nwd0hhm1l5dgxsdrigddfmq4-glibc-2.28
/gnu/store/hnj08aavzpsi72wvi4qqrp5dqbyqxqqs-libxcb-1.13
/gnu/store/mawqhgh0bdxpa4gjxs1fjyhwvv6i8w5g-libxau-1.0.8
/gnu/store/mbbj3j86amqls868hip0l85q9lx8gbcn-libxrandr-1.5.1
/gnu/store/x6fyr53k53sd5ghnh3abpnr1mqsy3xig-bochs-2.6.9
/gnu/store/xrvwszmahcb7k2zcyag3vmqwswzrbvcg-libxrender-0.9.10
------

So, I think it's possible to omit those two inputs.

> +     "Bochs is an emulator which can emulate Intel x86 CPU, common I/O
> +devices, and a custom BIOS.  It can also compiled to emulate many different

"It can also be compiled to ..."

> +Bochs can running most Operating Systems inside the emulation including Linux,
> +DOS or Microsoft Windows.")

"Bochs can run most operating systems ..."

> +    (license license:lgpl2.0)))

I checked some of the source files and I think it is lgpl2.0+.

Can you send an updated patch? :)

Patch

From 0380fab2ad7195407fc29afb830a86dbfae03b3f Mon Sep 17 00:00:00 2001
From: guy fleury iteriteka <hoonandon@gmail.com>
Date: Thu, 10 Jan 2019 17:33:30 +0100
Subject: [PATCH] gnu: Add Bochs

---
 gnu/packages/virtualization.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 274f827cd..ca775506c 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -10,6 +10,7 @@ 
 ;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
 ;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
+;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1058,3 +1059,33 @@  and the user can specify exactly what parts of the filesystem should be visible
 in the sandbox.  Any such directories specified is mounted nodev by default,
 and can be made readonly.")
     (license license:lgpl2.0+)))
+
+(define-public bochs
+  (package
+    (name "bochs")
+    (version "2.6.9")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://sourceforge.net/projects/bochs/files/bochs/"
+                           version "/bochs-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1379cq4cnfprhw8mgh60i0q9j8fz8d7n3d5fnn2g9fdiv5znfnzf"))))
+    (outputs '("out"))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f)) ;; no tests exits
+    (inputs
+     `(("glib" ,glib)
+       ("gtk+" ,gtk+)
+       ("libxrandr" ,libxrandr)))
+    (home-page "http://bochs.sourceforge.net/")
+    (synopsis "Emulator for x86 PC")
+    (description
+     "Bochs is an emulator which can emulate Intel x86 CPU, common I/O
+devices, and a custom BIOS.  It can also compiled to emulate many different
+x86 CPUs, from early 386 to the most recent x86-64 Intel and AMD processors.
+Bochs can running most Operating Systems inside the emulation including Linux,
+DOS or Microsoft Windows.")
+    (license license:lgpl2.0)))
-- 
2.19.2