Add lugaru and radare2

Julien LepillerThu Feb 23 11:43:31+0100 2017

7e13658

Add lugaru and radare2

README.md

2020
* _capstone_: A disassembler framework with a lot of supported architectures
2121
* _z3_: A constraint solver
2222
* _angr_: A binary analysis tool
23+
* _radare2_: A disassembler and analysis tool
24+
25+
Games
26+
-----
27+
28+
* _lugaru_: A third-person action game

more/packages/binary.scm

2727
  #:use-module (guix build-system python)
2828
  #:use-module (gnu packages compression)
2929
  #:use-module (gnu packages glib)
30+
  #:use-module (gnu packages multiprecision)
3031
  #:use-module (gnu packages pkg-config)
3132
  #:use-module (gnu packages python)
33+
  #:use-module (gnu packages tls)
34+
  #:use-module (gnu packages zip)
3235
  #:use-module (more packages python)
3336
  #:use-module (more packages smt))
3437

384387
focuses on both static and dynamic symbolic (\"concolic\") analysis, making it
385388
applicable to a variety of tasks.")
386389
    (license license:bsd-2)))
390+
391+
(define-public radare2
392+
  (package
393+
    (name "radare2")
394+
    (version "1.2.1")
395+
    (source (origin
396+
              (method url-fetch)
397+
              (uri (string-append "http://cloud.radare.org/get/" version "/"
398+
                                  name "-" version ".tar.gz"))
399+
              (sha256
400+
               (base32
401+
                "1rj9xinvasd819f39yf7lwwqykdagypfwi0jdmf4nzvhhndra5cf"))
402+
              (modules '((guix build utils)))
403+
              (snippet
404+
                '(begin
405+
                  (substitute* "libr/asm/p/Makefile"
406+
                    (("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) "))
407+
                  (substitute* "libr/parse/p/Makefile"
408+
                    (("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) "))
409+
                  (substitute* "libr/bin/p/Makefile"
410+
                    (("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) "))))))
411+
    (build-system gnu-build-system)
412+
    (arguments
413+
     '(#:tests? #f
414+
       #:phases
415+
       (modify-phases %standard-phases
416+
         (add-before 'configure 'mklibdir
417+
           (lambda* (#:key inputs #:allow-other-keys)
418+
             (mkdir-p (string-append (assoc-ref %outputs "out") "/lib")))))
419+
       #:configure-flags
420+
       (list "--with-sysmagic" "--with-syszip" "--with-openssl"
421+
             "--without-nonpic" "--with-rpath" "--with-syscapstone")
422+
       #:make-flags
423+
       (list "CC=gcc")))
424+
    (inputs
425+
     `(("openssl" ,openssl)
426+
       ("zip" ,zip)
427+
       ("gmp" ,gmp)
428+
       ("capstone" ,capstone)))
429+
    (native-inputs
430+
     `(("pkg-config" ,pkg-config)))
431+
    (home-page "https://rada.re/")
432+
    (synopsis "Binary analysis tool")
433+
    (description
434+
      "Radare2 is a tool for reversing binaries.")
435+
    (license license:gpl3+)))

more/packages/games.scm unknown status 1

1+
;;; GNU Guix --- Functional package management for GNU
2+
;;; Copyright ?? 2017 Julien Lepiller <julien@lepiller.eu>
3+
;;;
4+
;;; This file is part of GNU Guix.
5+
;;;
6+
;;; GNU Guix is free software; you can redistribute it and/or modify it
7+
;;; under the terms of the GNU General Public License as published by
8+
;;; the Free Software Foundation; either version 3 of the License, or (at
9+
;;; your option) any later version.
10+
;;;
11+
;;; GNU Guix is distributed in the hope that it will be useful, but
12+
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13+
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14+
;;; GNU General Public License for more details.
15+
;;;
16+
;;; You should have received a copy of the GNU General Public License
17+
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
18+
19+
(define-module (more packages games)
20+
  #:use-module (guix packages)
21+
  #:use-module (guix download)
22+
  #:use-module (guix build-system cmake)
23+
  #:use-module ((guix licenses) #:prefix license:)
24+
  #:use-module (gnu packages)
25+
  #:use-module (gnu packages audio)
26+
  #:use-module (gnu packages compression)
27+
  #:use-module (gnu packages gl)
28+
  #:use-module (gnu packages image)
29+
  #:use-module (gnu packages pkg-config)
30+
  #:use-module (gnu packages sdl)
31+
  #:use-module (gnu packages xiph))
32+
33+
(define-public lugaru
34+
  (package
35+
    (name "lugaru")
36+
    (version "1.1")
37+
    (source (origin
38+
              (method url-fetch)
39+
              (uri (string-append "https://bitbucket.org/osslugaru/lugaru/downloads/"
40+
                                  name "-" version ".tar.xz"))
41+
              (sha256
42+
               (base32
43+
                "0b5q73kwbiqin00iizjwzzwijrl45drq0da4cxn94mqqc7ygc02y"))))
44+
    (build-system cmake-build-system)
45+
    (arguments
46+
     `(#:configure-flags
47+
       (list "-DSYSTEM_INSTALL=ON")
48+
       #:tests? #f))
49+
    (native-inputs
50+
     `(("pkg-config" ,pkg-config)))
51+
    (inputs
52+
     `(("sdl2" ,sdl2)
53+
       ("glu" ,glu)
54+
       ("libjpeg" ,libjpeg-turbo)
55+
       ("libpng" ,libpng)
56+
       ("openal" ,openal)
57+
       ("vorbis" ,libvorbis)
58+
       ("zlib" ,zlib)))
59+
    (home-page "https://osslugaru.gitlab.io")
60+
    (synopsis "Cross-platform third-person action game")
61+
    (description "The main character, Turner, is an anthropomorphic rebel bunny
62+
rabbit with impressive combat skills.  In his quest to find those responsible
63+
for slaughtering his village, he uncovers a far-reaching conspiracy involving
64+
the corrupt leaders of the rabbit republic and the starving wolves from a
65+
nearby den.  Turner takes it upon himself to fight against their plot and save
66+
his fellow rabbits from slavery.")
67+
    (license (list license:gpl2+ license:cc-by-sa3.0))))