[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Error in package building : error[E0463]: can't find crate for `open
From: |
Hamzeh Nasajpour |
Subject: |
Re: Error in package building : error[E0463]: can't find crate for `openssl_src` |
Date: |
Wed, 21 Oct 2020 17:16:46 +0330 |
User-agent: |
Cyrus-JMAP/3.3.0-502-gfef6c88-fm-20201019.001-gfef6c888 |
This is my package definition till now. The repository of the package is here:
https://github.com/etesync/etebase-py/
Also I should to say I package these (since they aren't available in the
upstream packages):
* openssl@0.10.30
* cpython@0.3
* etebase-rs
* flapigen-0.6
I didn't attach them here for simplicity.
```
(define-public python-etebase-py
(package
(name "python-etebase-py")
(version "0.30.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "etebase" version))
(sha256
(base32
"1py635aqnxx3jy4x6zffriqi0l9gc2gk06h0ms91k4rs68h0gb0i"))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* "Cargo.toml"
(("etebase = " all) "#etebase = "))
(substitute* "Cargo.toml"
(("flapigen = " all) "flapigen = \"^0.6.0-pre7\" #"))
(substitute* "Cargo.toml"
(("0.10.30\"" all) "0.10.30\"}# "))
#t))))
(build-system cargo-build-system)
(arguments
`(#:tests? #f
#:cargo-inputs
(("rust-openssl" ,rust-openssl-0.10)
("rust-cpython" ,rust-cpython-0.3)
("rust-log" ,rust-log-0.4)
("rust-etebase-rs" ,rust-etebase-rs)
("rust-flapigen" ,rust-flapigen-0.6)
("rust-env-logger" ,rust-env-logger-0.7))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-env-var
(lambda* (#:key inputs #:allow-other-keys)
(let ((openssl (assoc-ref inputs "openssl")))
(invoke "rm" "setup.py")
(setenv "RUST_BACKTRACE" "full")
(setenv "OPENSSL_DIR" openssl))
#t))
)))
(native-inputs
`(("openssl" ,openssl)
("python-msgpack" ,python-msgpack)
("python-setuptools-rust" ,python-setuptools-rust)))
(inputs
`(("python" ,python)
; ("rust-etebase-rs" ,rust-etebase-rs)
))
(home-page "https://github.com/etesync/etebase-rs")
(synopsis "A python client library for EteSync.")
(description
"This module provides a python API to interact with an EteSync
server.
It currently implements AddressBook and Calendar access, and supports two-way
sync (both push and pull) to the server.")
(license license:gpl3)))
```