From 8663be6da7f13a8eeea71dc1f493f7adc5b7672a Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Fri, 28 Jan 2022 15:39:23 +0100 Subject: gnu: Add sumo. * gnu/packages/simulation.scm (sumo): New variable. --- gnu/packages/simulation.scm | 69 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) (limited to 'gnu/packages/simulation.scm') diff --git a/gnu/packages/simulation.scm b/gnu/packages/simulation.scm index 39b5620822..9e6ef4ada3 100644 --- a/gnu/packages/simulation.scm +++ b/gnu/packages/simulation.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2017, 2018, 2019, 2020, 2021 Paul Garlick ;;; Copyright © 2021, 2022 Maxim Cournoyer ;;; Copyright © 2022 Eric Bavier +;;; Copyright © 2022 Liliana Marie Prikler ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,12 +30,16 @@ (define-module (gnu packages simulation) #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) + #:use-module (gnu packages cpp) #:use-module (gnu packages flex) + #:use-module (gnu packages fontutils) #:use-module (gnu packages gettext) #:use-module (gnu packages gcc) + #:use-module (gnu packages geo) #:use-module (gnu packages gl) #:use-module (gnu packages graphics) #:use-module (gnu packages gtk) + #:use-module (gnu packages image) #:use-module (gnu packages linux) #:use-module (gnu packages m4) #:use-module (gnu packages maths) @@ -49,6 +54,7 @@ (define-module (gnu packages simulation) #:use-module (gnu packages readline) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) + #:use-module (gnu packages video) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (guix download) @@ -60,6 +66,7 @@ (define-module (gnu packages simulation) #:use-module (guix build-system python) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) + #:use-module (guix gexp) #:use-module (guix utils) #:use-module (ice-9 ftw) #:use-module (ice-9 regex) @@ -940,3 +947,65 @@ (define-public python-dolfin-adjoint forward model is implemented in @code{fenics} or @url{https://firedrakeproject.org,firedrake}.") (license license:lgpl3))) + +(define-public sumo + (package + (name "sumo") + (version "1.14.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/eclipse/sumo") + (commit (string-append "v" + (string-replace-substring version + "." "_"))))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1965vrsff0k14z3y3b1c460zdwp9nx6q6plrdyxn496vg6846k1y")))) + (build-system cmake-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'disable-problematic-tests + (lambda _ + (substitute* "CMakeLists.txt" + ;; docs/example appears to be missing + (("add_test\\(exampletest .*") "")) + (substitute* "src/traci_testclient/CMakeLists.txt" + ;; requires network connection (at least to localhost) + (("add_test\\(NAME libtracitest .*") ""))))))) + (inputs (list eigen + freetype + fontconfig + ffmpeg + fox + gdal + glu + gperftools ; tcmalloc + libjpeg-turbo + libtiff + libx11 + libxcursor + libxft + libxi + libxrandr + libxrender + openscenegraph + proj + python + xerces-c + zlib)) + (native-inputs (list googletest python)) + (home-page "https://eclipse.org/sumo") + (synopsis "Traffic simulator") + (description "@acronym{SUMO, Simulation of Urban MObility} is a traffic +simulation package designed to handle large road networks and different modes +of transportation -- including road vehicles, public transport and pedestrians. +Included with SUMO is a wealth of supporting tools which automate core tasks +for the creation, the execution and evaluation of traffic simulations, +such as network import, route calculations, visualization and emission +calculation. SUMO can be enhanced with custom models and provides various +APIs to remotely control the simulation.") + (license (list license:epl2.0 license:gpl2+)))) -- cgit v1.2.3 From e05e2a7a75fb7994df48423ecebb7bf1a6ea8177 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Mon, 17 Oct 2022 21:44:31 +0200 Subject: gnu: python-pygmsh: Use pyproject-build-system. * gnu/packages/simulation.scm (python-pygmsh)[build-system]: Switch to PYPROJECT-BUILD-SYSTEM. [arguments]: Remove redundant phases. [native-inputs]: Remove PYTHON-PYPA-BUILD. --- gnu/packages/simulation.scm | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) (limited to 'gnu/packages/simulation.scm') diff --git a/gnu/packages/simulation.scm b/gnu/packages/simulation.scm index 9e6ef4ada3..256e404970 100644 --- a/gnu/packages/simulation.scm +++ b/gnu/packages/simulation.scm @@ -63,6 +63,7 @@ (define-module (gnu packages simulation) #:use-module (guix svn-download) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) + #:use-module (guix build-system pyproject) #:use-module (guix build-system python) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) @@ -835,7 +836,7 @@ (define-public python-pygmsh (sha256 (base32 "11flp2c4ynk1fhanf4mqyzrpd0gjbnv6afrwwc7xi3mb6ms69lr0")))) - (build-system python-build-system) + (build-system pyproject-build-system) (arguments (list #:phases @@ -845,21 +846,8 @@ (define-public python-pygmsh ;; Due to lack of metadata, the gmsh Python package is not ;; detected although importable. (substitute* "pyproject.toml" - (("\"gmsh\",") "")))) - ;; XXX: PEP 517 manual build copied from python-isort. - (replace 'build - (lambda _ - (invoke "python" "-m" "build" "--wheel" "--no-isolation" "."))) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "pytest" "-v" "tests")))) - (replace 'install - (lambda _ - (let ((whl (car (find-files "dist" "\\.whl$")))) - (invoke "pip" "--no-cache-dir" "--no-input" - "install" "--no-deps" "--prefix" #$output whl))))))) - (native-inputs (list python-pypa-build python-flit-core python-pytest)) + (("\"gmsh\",") ""))))))) + (native-inputs (list python-flit-core python-pytest)) (propagated-inputs (list gmsh python-meshio python-numpy)) (home-page "https://github.com/nschloe/pygmsh") (synopsis "Python frontend for Gmsh") -- cgit v1.2.3 From 59a8de6bad856ee012cd6bc8aaf4d929a6c8e619 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 3 Dec 2022 10:40:08 +0100 Subject: gnu: Add python-commonroad-vehicle-models. * gnu/packages/simulation.scm (%commonroad-dont-install-license-at-root) (python-commonroad-vehicle-models): New variables. --- gnu/packages/simulation.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'gnu/packages/simulation.scm') diff --git a/gnu/packages/simulation.scm b/gnu/packages/simulation.scm index 256e404970..07f1f879f9 100644 --- a/gnu/packages/simulation.scm +++ b/gnu/packages/simulation.scm @@ -936,6 +936,36 @@ (define-public python-dolfin-adjoint @url{https://firedrakeproject.org,firedrake}.") (license license:lgpl3))) +(define %commonroad-dont-install-license-at-root + #~(substitute* "setup.py" + (("data_files=\\[\\('.', \\['LICENSE.txt'\\]\\)\\],") + ""))) + +(define-public python-commonroad-vehicle-models + (package + (name "python-commonroad-vehicle-models") + (version "3.0.2") + (source (origin + (method url-fetch) + (uri (pypi-uri "commonroad-vehicle-models" version)) + (sha256 + (base32 + "13jg0cys7y4n7rg548w6mxk9g10gd5qxmj4ynrlriczpffqy6kc7")))) + (build-system python-build-system) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-setup.py + (lambda _ + #$%commonroad-dont-install-license-at-root))))) + (propagated-inputs (list python-numpy python-omegaconf)) + (home-page "https://commonroad.in.tum.de/") + (synopsis "CommonRoad vehicle models") + (description "This package provides vehicle models used in CommonRoad +benchmarks. Varying abstraction levels are used ranging from kinematic single +track models to multi-body models.") + (license license:bsd-3))) + (define-public sumo (package (name "sumo") -- cgit v1.2.3 From 86136b4f76e3950124563aea5173a3f78847c3c2 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 3 Dec 2022 10:43:01 +0100 Subject: gnu: Add python-commonroad-io. * gnu/packages/simulation.scm (python-commonroad-io): New variable. --- gnu/packages/simulation.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) (limited to 'gnu/packages/simulation.scm') diff --git a/gnu/packages/simulation.scm b/gnu/packages/simulation.scm index 07f1f879f9..9573d4b11c 100644 --- a/gnu/packages/simulation.scm +++ b/gnu/packages/simulation.scm @@ -40,6 +40,7 @@ (define-module (gnu packages simulation) #:use-module (gnu packages graphics) #:use-module (gnu packages gtk) #:use-module (gnu packages image) + #:use-module (gnu packages iso-codes) #:use-module (gnu packages linux) #:use-module (gnu packages m4) #:use-module (gnu packages maths) @@ -47,6 +48,7 @@ (define-module (gnu packages simulation) #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages python-build) #:use-module (gnu packages python-science) @@ -966,6 +968,45 @@ (define-public python-commonroad-vehicle-models track models to multi-body models.") (license license:bsd-3))) +(define-public python-commonroad-io + (package + (name "python-commonroad-io") + (version "2022.3") + (source (origin + (method url-fetch) + (uri (pypi-uri "commonroad-io" version)) + (sha256 + (base32 + "1cj9zj567mca8xb8sx9h3nnl2cccv6vh8h73imgpq61cimk9mvas")))) + (build-system python-build-system) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-setup.py + (lambda _ + #$%commonroad-dont-install-license-at-root))))) + (propagated-inputs (list python-commonroad-vehicle-models + python-iso3166 + python-lxml + python-matplotlib + python-networkx + python-numpy + python-omegaconf + python-pillow + python-protobuf + python-rtree + python-scipy + python-shapely + python-tqdm)) + (native-inputs (list python-lxml python-pytest)) + (home-page "https://commonroad.in.tum.de/") + (synopsis "Read, write, and visualize CommonRoad scenarios.") + (description "This package provides methods to read, write, and visualize +CommonRoad scenarios and planning problems. It can be used as a framework for +implementing motion planning algorithms to solve CommonRoad Benchmarks +and is the basis for other tools of the CommonRoad Framework.") + (license license:bsd-3))) + (define-public sumo (package (name "sumo") -- cgit v1.2.3 From e55bc944a94134f7ff2a4ab4a0e8b9a5ac9d46d1 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 3 Dec 2022 10:43:08 +0100 Subject: gnu: Add python-commonroad-route-planner. * gnu/packages/simulation.scm (python-commonroad-route-planner): New variable. --- gnu/packages/simulation.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu/packages/simulation.scm') diff --git a/gnu/packages/simulation.scm b/gnu/packages/simulation.scm index 9573d4b11c..e5e7d2bf60 100644 --- a/gnu/packages/simulation.scm +++ b/gnu/packages/simulation.scm @@ -1007,6 +1007,39 @@ (define-public python-commonroad-io and is the basis for other tools of the CommonRoad Framework.") (license license:bsd-3))) +(define-public python-commonroad-route-planner + (package + (name "python-commonroad-route-planner") + (version "2022.3") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.lrz.de/tum-cps/commonroad-route-planner") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0xn0l7bzmj56d4mlqacvbl8mdvsffkg2fn2lzfmis5jl4vp99ipf")))) + (arguments + (list #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-setup.py + (lambda _ + #$%commonroad-dont-install-license-at-root))))) + (build-system python-build-system) + (propagated-inputs (list python-commonroad-io + python-matplotlib + python-networkx + python-numpy + python-setuptools + python-shapely)) + (home-page "https://gitlab.lrz.de/tum-cps/commonroad-route-planner") + (synopsis "Route planner for CommonRoad scenarios") + (description "This package provides functions for route planning, that is +finding sequences that lead from a given start lanelet to some goal +lanelet(s).") + (license license:bsd-3))) + (define-public sumo (package (name "sumo") -- cgit v1.2.3