mirror of
https://gitlab.univ-nantes.fr/glicid-public/guix-glicid.git
synced 2025-04-29 21:58:36 +02:00
176 lines
12 KiB
Scheme
176 lines
12 KiB
Scheme
(define-module (glicid packages wazuh)
|
|
#:use-module ((guix licenses) #:prefix lic:)
|
|
#:use-module (guix packages)
|
|
#:use-module (guix download)
|
|
#:use-module (guix utils)
|
|
#:use-module (guix build utils)
|
|
#:use-module (guix build-system cmake)
|
|
#:use-module (guix build-system gnu)
|
|
#:use-module (guix build-system cargo)
|
|
#:use-module (gnu packages)
|
|
#:use-module (gnu packages autotools)
|
|
#:use-module (gnu packages base)
|
|
#:use-module (gnu packages compression)
|
|
#:use-module (gnu packages selinux)
|
|
#:use-module (gnu packages wget)
|
|
#:use-module (gnu packages curl)
|
|
#:use-module (gnu packages certs) ; not sure if needed
|
|
#:use-module (gnu packages perl)
|
|
#:use-module (gnu packages gawk)
|
|
#:use-module (gnu packages cmake)
|
|
#:use-module (gnu packages javascript)
|
|
#:use-module (gnu packages sqlite)
|
|
#:use-module (gnu packages serialization)
|
|
#:use-module (gnu packages admin)
|
|
#:use-module (gnu packages libffi)
|
|
#:use-module (gnu packages gnupg)
|
|
#:use-module (gnu packages libusb)
|
|
#:use-module (gnu packages python-xyz)
|
|
#:use-module (gnu packages check)
|
|
#:use-module (gnu packages pcre)
|
|
#:use-module (gnu packages popt)
|
|
#:use-module (gnu packages package-management)
|
|
#:use-module (gnu packages llvm)
|
|
#:use-module (gnu packages tls)
|
|
#:use-module (gnu packages commencement)
|
|
#:use-module (gnu packages python)
|
|
#:use-module (gnu packages bash)
|
|
#:use-module (gnu packages shells)
|
|
#:use-module (gnu packages ruby)
|
|
#:use-module (gnu packages tcl)
|
|
#:use-module (gnu packages crates-io)
|
|
#:use-module (glicid utils)
|
|
)
|
|
|
|
(define-public wazuh-agent
|
|
(package
|
|
(name "wazuh-agent")
|
|
(version "4.4.3")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://github.com/wazuh/wazuh/archive/refs/tags/v" version ".tar.gz" ))
|
|
(sha256 (base32 "1wr9i4vgqfmm9cgi6yfchbmzakcsnb5bww7vqw38c702c9fa1l31"))))
|
|
(build-system cmake-build-system)
|
|
(arguments
|
|
`(
|
|
#:phases (modify-phases %standard-phases
|
|
(add-after 'unpack 'extract-deps
|
|
(lambda* (#:key inputs native-inputs #:allow-other-keys)
|
|
(begin
|
|
(for-each (lambda (deps)
|
|
(format #t (string-append "decompressing source code for " deps "~%"))
|
|
(mkdir-p (string-append "src/external/" deps))
|
|
(let ((tar (assoc-ref inputs "tar")) (deps-src (assoc-ref inputs deps )))
|
|
(invoke (string-append tar "/bin/tar") "xvf" deps-src "--strip-components=1" "-C" (string-append "src/external/" deps))))
|
|
(list "zlib" "sqlite" "openssl" "curl" "libyaml" "audit" "libffi" "libplist" "python-cython" "msgpack" "bzip2" "pcre2" "rpm" "popt") )
|
|
(for-each (lambda (deps)
|
|
(format #t (string-append "decompressing source code for " deps "~%"))
|
|
(let ((deps-src (assoc-ref inputs deps )))
|
|
(invoke "cp" "-rv" deps-src (string-append "src/external/" deps))))
|
|
(list "cjson" "googletest")
|
|
)
|
|
(invoke "mv" "src/external/pcre2" "src/external/libpcre2")
|
|
(invoke "mv" "src/external/audit" "src/external/audit-userspace")
|
|
(invoke "mv" "src/external/cjson" "src/external/cJSON")
|
|
|
|
(chmod "src/external/cJSON" #o750)
|
|
(for-each (lambda (file)
|
|
(chmod file #o750))
|
|
(find-files "src/external/cJSON"))
|
|
(for-each (lambda (file)
|
|
(chmod file #o750))
|
|
(find-files "src/external/cJSON" #:directories? #t))
|
|
|
|
(chmod "src/external/googletest" #o750)
|
|
(for-each (lambda (file)
|
|
(chmod file #o750))
|
|
(find-files "src/external/googletest"))
|
|
(for-each (lambda (file)
|
|
(chmod file #o750))
|
|
(find-files "src/external/googletest" #:directories? #t))
|
|
|
|
(chmod "src/external/libpcre2" #o750)
|
|
(for-each (lambda (file)
|
|
(chmod file #o750))
|
|
(find-files "src/external/libpcre2"))
|
|
(for-each (lambda (file)
|
|
(chmod file #o750))
|
|
(find-files "src/external/libpcre2" #:directories? #t))
|
|
|
|
#t)))
|
|
(delete 'configure)
|
|
(replace 'build
|
|
(lambda* (#:key outputs #:allow-other-keys)
|
|
(let ((out (assoc-ref outputs "out"))
|
|
)
|
|
(setenv "CC" ,(cc-for-target))
|
|
(setenv "PREFIX" out)
|
|
(setenv "CONFIG_SHELL" "/gnu/store/m6c5hgqg569mbcjjbp8l8m7q82ascpdl-bash-5.1.16/bin/bash")
|
|
(setenv "SHELL" "/gnu/store/m6c5hgqg569mbcjjbp8l8m7q82ascpdl-bash-5.1.16/bin/bash")
|
|
(invoke "make" "-C" "src" "build_sysinfo build_shared_modules")
|
|
(invoke "make" "-C" "src" "wazuh-agentd agent-auth wazuh-logcollector wazuh-syscheckd wazuh-execd manage_agents active-responses wazuh-modulesd")
|
|
; (invoke "make" "-C" "src" "SHELL=/gnu/store/m6c5hgqg569mbcjjbp8l8m7q82ascpdl-bash-5.1.16/bin/bash" "CONFIG_SHELL=/gnu/store/m6c5hgqg569mbcjjbp8l8m7q82ascpdl-bash-5.1.16/bin/bash" (string-append "PREFIX=" out) "TARGET=agent" "build")
|
|
)
|
|
|
|
))
|
|
)))
|
|
(inputs `(("cjson" ,(package-source cjson))
|
|
("zlib" ,(package-source zlib))
|
|
("sqlite" ,(package-source sqlite))
|
|
("openssl" ,(package-source openssl))
|
|
("curl" ,(package-source curl))
|
|
("libyaml" ,(package-source libyaml))
|
|
("audit" ,(package-source audit))
|
|
("libffi" ,(package-source libffi))
|
|
("libplist" ,(package-source libplist))
|
|
("python-cython" ,(package-source python-cython))
|
|
("msgpack" ,(package-source msgpack))
|
|
("bzip2" ,(package-source bzip2))
|
|
("googletest" ,(package-source googletest))
|
|
("pcre2" ,(package-source pcre2))
|
|
("rpm" ,(package-source rpm))
|
|
("popt" ,(package-source popt))
|
|
("zlib" ,(package-source zlib))
|
|
("perl", perl)
|
|
("python", python)
|
|
("python-wrapper", python-wrapper)
|
|
("oksh", oksh)
|
|
("rc", rc)
|
|
("ruby", ruby)
|
|
("expect", expect)
|
|
("runscript", runscript)
|
|
("bash", bash)
|
|
("libgcrypt", libgcrypt)
|
|
))
|
|
(synopsis "")
|
|
(description "")
|
|
(home-page "https://github.com/wazuh/wazuh/")
|
|
(license lic:gpl2)))
|
|
|
|
|
|
|
|
(define-public runscript
|
|
(package
|
|
(name "runscript")
|
|
(version "1.0.0-beta.7+2")
|
|
(source (origin
|
|
(method url-fetch)
|
|
(uri (string-append "https://github.com/TheOnlyMrCat/runscript/archive/refs/tags/v" version ".tar.gz" ))
|
|
(sha256 (base32 "168h815vdkvya2jbv0gddcy5lbah08wsvs14v9qcbkpp8ixr59qk"))))
|
|
(build-system cargo-build-system)
|
|
(inputs (list rust-atty-0.2 rust-cfg-if-1 rust-clap-3 rust-exitcode-1 rust-glob-0.3 rust-indexmap-1 rust-itertools-0.10 rust-os-info-3
|
|
rust-serde-1 rust-tempfile-3 rust-termcolor-1 rust-toml-0.5 rust-uuid-0.8 rust-nix-0.23 rust-winapi-0.3
|
|
rust-hermit-abi-0.1 rust-libc-0.2 rust-bitflags-1.2 rust-clap-derive-3 rust-clap-lex-0.2 rust-once-cell-1 rust-strsim-0.10
|
|
rust-textwrap-0.16 rust-hashbrown-0.12 rust-autocfg-1 rust-either-1 rust-log-0.4 rust-serde-derive-1 rust-fastrand-1
|
|
rust-remove-dir-all-0.5 rust-redox-syscall-0.2 rust-winapi-util-0.1 rust-getrandom-0.2 rust-memoffset-0.6
|
|
rust-cc-1 rust-heck-0.4 rust-proc-macro-error-1 rust-proc-macro2-1 rust-quote-1 rust-syn-1 rust-syn-2 rust-os-str-bytes-6
|
|
rust-instant-0.1 rust-wasi-0.11 rust-proc-macro-error-attr-1 rust-version-check-0.9
|
|
))
|
|
(synopsis "")
|
|
(description "")
|
|
(home-page "https://github.com/TheOnlyMrCat/runscript")
|
|
(license lic:asl2.0)))
|
|
|
|
|
|
|
|
wazuh-agent
|