Skip to content

Commit e7eee8b

Browse files
committed
syncstorage-rs: add update candidate, doesn't build
1 parent 02a07e0 commit e7eee8b

File tree

10 files changed

+1738
-0
lines changed

10 files changed

+1738
-0
lines changed

Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5394,6 +5394,7 @@ SUBDIR+= sympow
53945394
SUBDIR+= syn68k
53955395
SUBDIR+= synce-dynamite
53965396
SUBDIR+= synce-orange
5397+
SUBDIR+= syncstorage-rs
53975398
SUBDIR+= syncthing-discosrv
53985399
SUBDIR+= syncthing-inotify
53995400
SUBDIR+= syncthing-relaysrv

syncstorage-rs/DESCR

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Mozilla Sync Storage built with Rust
2+
3+
This provides a sync storage server (database) and a token server
4+
(authentication) for synchronizing Firefox configurations across
5+
multiple hosts.

syncstorage-rs/Makefile

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# $NetBSD: Makefile,v 1.4 2024/09/13 09:57:15 wiz Exp $
2+
3+
DISTNAME= syncstorage-rs-0.17.7
4+
CATEGORIES= www
5+
MASTER_SITES= ${MASTER_SITE_GITHUB:=mozilla-services/}
6+
7+
MAINTAINER= pkgsrc-users@NetBSD.org
8+
HOMEPAGE= https://github.com/mozilla-services/syncstorage-rs/
9+
COMMENT= Firefox Sync Storage server in Rust
10+
LICENSE= mpl-2.0
11+
12+
TOOL_DEPENDS+= cmake-[0-9]*:../../devel/cmake
13+
DEPENDS+= ${PYPKGPREFIX}-cryptography-[0-9]*:../../security/py-cryptography
14+
DEPENDS+= ${PYPKGPREFIX}-FxA-[0-9]*:../../www/py-FxA
15+
DEPENDS+= ${PYPKGPREFIX}-tokenlib-[0-9]*:../../security/py-tokenlib
16+
# for tokenserver tools
17+
# not needed in most installations, see
18+
# https://github.com/mozilla-services/syncstorage-rs/issues/1569
19+
#DEPENDS+= ${PYPKGPREFIX}-boto>=2.49.0:../../net/py-boto
20+
#DEPENDS+= ${PYPKGPREFIX}-hawkauthlib>=2.0.0:../../security/py-hawkauthlib
21+
#DEPENDS+= ${PYPKGPREFIX}-mysqlclient>=2.1.1:../../databases/py-mysqlclient
22+
#DEPENDS+= ${PYPKGPREFIX}-pyramid>=2.0.1:../../wip/py-pyramid
23+
#DEPENDS+= ${PYPKGPREFIX}-sqlalchemy>=1.4.46:../../databases/py-sqlalchemy
24+
#DEPENDS+= ${PYPKGPREFIX}-testfixtures>=0:../../wip/py-testfixtures
25+
#DEPENDS+= ${PYPKGPREFIX}-tokenlib>=2.0.0:../../security/py-tokenlib
26+
#DEPENDS+= ${PYPKGPREFIX}-BrowserID>=0.14.0:../../www/py-BrowserID
27+
28+
#CARGO_ARGS+= build --release ${DEFAULT_CARGO_ARGS} --no-default-features --features=syncstorage-db/mysql,tokenserver-auth/py
29+
30+
.include "cargo-depends.mk"
31+
32+
# Depends on an mozilla-modified version of crate
33+
DEADPOOL_REV= deadpool-v0.7.0
34+
DISTFILES= ${DEFAULT_DISTFILES}
35+
DISTFILES+= deadpool-${DEADPOOL_REV}.tar.gz
36+
SITES.deadpool-${DEADPOOL_REV}.tar.gz+= -${MASTER_SITE_GITHUB:=mozilla-services/}deadpool/archive/${DEADPOOL_REV}.tar.gz
37+
38+
USE_LANGUAGES= c c++ # rust, but needs toolchain
39+
USE_TOOLS+= pkg-config
40+
RUSTFLAGS+= -C link-arg=${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.openssl}/lib
41+
RUSTFLAGS+= -C link-arg=${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.curl}/lib
42+
43+
PYTHON_VERSIONS_INCOMPATIBLE= 27 38
44+
45+
INSTALLATION_DIRS+= bin share/doc/syncstorage-rs share/examples/syncstorage-rs
46+
INSTALLATION_DIRS+= lib/tokenserver
47+
48+
post-extract:
49+
mv ${WRKDIR}/deadpool* ${WRKDIR}/deadpool
50+
51+
do-install:
52+
${INSTALL_PROGRAM} ${WRKSRC}/target/release/syncserver ${DESTDIR}${PREFIX}/bin
53+
${INSTALL_DATA} ${WRKSRC}/README.md ${DESTDIR}${PREFIX}/share/doc/syncstorage-rs
54+
${INSTALL_DATA} ${FILESDIR}/setup.md ${DESTDIR}${PREFIX}/share/doc/syncstorage-rs
55+
${INSTALL_DATA} ${WRKSRC}/docs/config.md ${DESTDIR}${PREFIX}/share/doc/syncstorage-rs
56+
${INSTALL_DATA} ${WRKSRC}/config/local.example.toml ${DESTDIR}${PREFIX}/share/examples/syncstorage-rs
57+
# ${INSTALL_SCRIPT} ${WRKSRC}/tools/tokenserver/*.* ${DESTDIR}${PREFIX}/lib/tokenserver
58+
59+
.include "../../lang/rust/cargo.mk"
60+
.include "../../security/openssl/buildlink3.mk"
61+
.include "../../lang/python/pyversion.mk"
62+
.include "../../lang/python/tool.mk"
63+
.include "../../mk/mysql.buildlink3.mk"
64+
.include "../../www/curl/buildlink3.mk"
65+
.include "../../mk/bsd.pkg.mk"

syncstorage-rs/PLIST

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
@comment $NetBSD: PLIST,v 1.1 2024/06/13 12:11:58 wiz Exp $
2+
bin/syncserver
3+
share/doc/syncstorage-rs/README.md
4+
share/doc/syncstorage-rs/config.md
5+
share/doc/syncstorage-rs/setup.md
6+
share/examples/syncstorage-rs/local.example.toml

syncstorage-rs/TODO

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
Compiling num-traits v0.1.43
2+
error[E0463]: can't find crate for `try_lock` which `want` depends on
3+
--> /scratch/www/syncstorage-rs/work/vendor/hyper-1.3.1/src/client/dispatch.rs:22:26
4+
|
5+
22 | let (giver, taker) = want::new();
6+
| ^^^^ can't find crate
7+
8+
error[E0463]: can't find crate for `want`
9+
--> /scratch/www/syncstorage-rs/work/vendor/hyper-1.3.1/src/client/dispatch.rs:47:12
10+
|
11+
47 | giver: want::Giver,
12+
| ^^^^ can't find crate
13+
14+
error[E0463]: can't find crate for `want`
15+
--> /scratch/www/syncstorage-rs/work/vendor/hyper-1.3.1/src/client/dispatch.rs:168:12
16+
|
17+
168 | taker: want::Taker,
18+
| ^^^^ can't find crate

0 commit comments

Comments
 (0)