Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Feb 2026 12:56:43 +0000
From:      Martin Matuska <mm@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 93f469aba006 - main - www/fmd-server: [NEW PORT] FMD server to locate and control your devices
Message-ID:  <699ef18b.433a0.67a0f993@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by mm:

URL: https://cgit.FreeBSD.org/ports/commit/?id=93f469aba006dd91255bec9e422461750c6b9ae6

commit 93f469aba006dd91255bec9e422461750c6b9ae6
Author:     Martin Matuska <mm@FreeBSD.org>
AuthorDate: 2026-02-25 12:53:44 +0000
Commit:     Martin Matuska <mm@FreeBSD.org>
CommitDate: 2026-02-25 12:55:55 +0000

    www/fmd-server: [NEW PORT] FMD server to locate and control your devices
    
    FMD allows you to locate and remotely control your Android device.
    This is useful if you have lost or misplaced it. FMD is decentralised, and
    users remain in full control of their data.
    
    WWW: https://fmd-foss.org
---
 www/Makefile                       |  1 +
 www/fmd-server/Makefile            | 86 ++++++++++++++++++++++++++++++++++++
 www/fmd-server/distinfo            | 89 ++++++++++++++++++++++++++++++++++++++
 www/fmd-server/files/fmd-server.in | 36 +++++++++++++++
 www/fmd-server/pkg-descr           | 15 +++++++
 5 files changed, 227 insertions(+)

diff --git a/www/Makefile b/www/Makefile
index 77dad4be39b3..c3830e6d53bf 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -204,6 +204,7 @@
     SUBDIR += flat-frog
     SUBDIR += flexget
     SUBDIR += flickcurl
+    SUBDIR += fmd-server
     SUBDIR += foreign-cdm
     SUBDIR += forgejo
     SUBDIR += forgejo-lts
diff --git a/www/fmd-server/Makefile b/www/fmd-server/Makefile
new file mode 100644
index 000000000000..e47f0a5937ab
--- /dev/null
+++ b/www/fmd-server/Makefile
@@ -0,0 +1,86 @@
+PORTNAME=	fmd-server
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.14.0
+CATEGORIES=	sysutils
+
+MAINTAINER=	mm@FreeBSD.org
+COMMENT=	FMD web server to locate and control your devices
+WWW=		https://fmd-foss.org/
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		go:modules nodejs:build
+USE_GITLAB=	yes
+USE_GITHUB=	nodefault
+GL_ACCOUNT=	fmd-foss
+GO_MODULE=	gitlab.com/fmd-foss/fmd-server
+
+USE_RC_SUBR=	${PORTNAME}
+
+CONFIGURE_ENV=	COREPACK_ENABLE_DOWNLOAD_PROMPT=0
+
+PLIST_FILES=	"@sample ${ETCDIR}/config.yml.sample" \
+		bin/${PORTNAME}
+
+GH_TUPLE=	\
+		beorn7:perks:v1.0.1:beorn7_perks/vendor/github.com/beorn7/perks \
+		cespare:xxhash:v2.3.0:cespare_xxhash_v2/vendor/github.com/cespare/xxhash/v2 \
+		dustin:go-humanize:v1.0.1:dustin_go_humanize/vendor/github.com/dustin/go-humanize \
+		fsnotify:fsnotify:v1.9.0:fsnotify_fsnotify/vendor/github.com/fsnotify/fsnotify \
+		glebarez:go-sqlite:v1.22.0:glebarez_go_sqlite/vendor/github.com/glebarez/go-sqlite \
+		glebarez:sqlite:v1.11.0:glebarez_sqlite/vendor/github.com/glebarez/sqlite \
+		go-gorm:gorm:v1.31.1:go_gorm_gorm/vendor/gorm.io/gorm \
+		go-viper:mapstructure:v2.5.0:go_viper_mapstructure_v2/vendor/github.com/go-viper/mapstructure/v2 \
+		golang:exp:716be5621a96:golang_exp/vendor/golang.org/x/exp \
+		golang:sys:v0.40.0:golang_sys/vendor/golang.org/x/sys \
+		golang:text:v0.33.0:golang_text/vendor/golang.org/x/text \
+		google:uuid:v1.6.0:google_uuid/vendor/github.com/google/uuid \
+		inconshreveable:mousetrap:v1.1.0:inconshreveable_mousetrap/vendor/github.com/inconshreveable/mousetrap \
+		jinzhu:inflection:v1.0.0:jinzhu_inflection/vendor/github.com/jinzhu/inflection \
+		jinzhu:now:v1.1.5:jinzhu_now/vendor/github.com/jinzhu/now \
+		mattn:go-colorable:v0.1.14:mattn_go_colorable/vendor/github.com/mattn/go-colorable \
+		mattn:go-isatty:v0.0.20:mattn_go_isatty/vendor/github.com/mattn/go-isatty \
+		munnerz:goautoneg:a7dc8b61c822:munnerz_goautoneg/vendor/github.com/munnerz/goautoneg \
+		ncruces:go-strftime:v1.0.0:ncruces_go_strftime/vendor/github.com/ncruces/go-strftime \
+		pelletier:go-toml:v2.2.4:pelletier_go_toml_v2/vendor/github.com/pelletier/go-toml/v2 \
+		prometheus:client_golang:v1.23.2:prometheus_client_golang/vendor/github.com/prometheus/client_golang \
+		prometheus:client_model:v0.6.2:prometheus_client_model/vendor/github.com/prometheus/client_model \
+		prometheus:common:v0.67.5:prometheus_common/vendor/github.com/prometheus/common \
+		prometheus:procfs:v0.19.2:prometheus_procfs/vendor/github.com/prometheus/procfs \
+		protocolbuffers:protobuf-go:v1.36.11:protocolbuffers_protobuf_go/vendor/google.golang.org/protobuf \
+		remyoudompheng:bigfft:24d4a6f8daec:remyoudompheng_bigfft/vendor/github.com/remyoudompheng/bigfft \
+		rogpeppe:go-internal:v1.12.0:rogpeppe_go_internal/vendor/github.com/rogpeppe/go-internal \
+		rs:zerolog:v1.34.0:rs_zerolog/vendor/github.com/rs/zerolog \
+		sagikazarmark:locafero:v0.12.0:sagikazarmark_locafero/vendor/github.com/sagikazarmark/locafero \
+		spf13:afero:v1.15.0:spf13_afero/vendor/github.com/spf13/afero \
+		spf13:cast:v1.10.0:spf13_cast/vendor/github.com/spf13/cast \
+		spf13:cobra:v1.10.2:spf13_cobra/vendor/github.com/spf13/cobra \
+		spf13:pflag:v1.0.10:spf13_pflag/vendor/github.com/spf13/pflag \
+		spf13:viper:v1.21.0:spf13_viper/vendor/github.com/spf13/viper \
+		subosito:gotenv:v1.6.0:subosito_gotenv/vendor/github.com/subosito/gotenv \
+		yaml:go-yaml:v2.4.3:yaml_go_yaml/vendor/go.yaml.in/yaml/v2 \
+		yaml:go-yaml:v3.0.4:yaml_go_yaml_1/vendor/go.yaml.in/yaml/v3
+
+GL_TUPLE=	\
+		cznic:libc:6e4a801525dcb3e1f9c6a9e560ae30fed5752945:cznic_libc/vendor/modernc.org/libc \
+		cznic:mathutil:28129eec384c30a304561c3c8779e4bb29cbff12:cznic_mathutil/vendor/modernc.org/mathutil \
+		cznic:memory:0a6f7544739330ad95572cc272626a60176f2faf:cznic_memory/vendor/modernc.org/memory \
+		cznic:sqlite:bb6a17d8df4bb5fe2c530d512ca14e8ddfeffc47:cznic_sqlite/vendor/modernc.org/sqlite
+
+post-configure:
+		@${MKDIR} ${WRKDIR}/.bin
+		@cd ${WRKSRC}/web && \
+			${SETENV} ${CONFIGURE_ENV} corepack enable --install-directory ${WRKDIR}/.bin && \
+			${SETENV} ${CONFIGURE_ENV} pnpm install
+
+pre-build:
+		@cd ${WRKSRC}/web && \
+			${SETENV} ${MAKE_ENV} corepack enable --install-directory ${WRKDIR}/.bin && \
+			${SETENV} ${MAKE_ENV} pnpm build
+
+post-install:
+	        @${MKDIR} ${STAGEDIR}${ETCDIR}
+		${INSTALL_DATA} ${WRKSRC}/config.example.yml ${STAGEDIR}${ETCDIR}/config.yml.sample
+
+.include <bsd.port.mk>
diff --git a/www/fmd-server/distinfo b/www/fmd-server/distinfo
new file mode 100644
index 000000000000..20598c2a537a
--- /dev/null
+++ b/www/fmd-server/distinfo
@@ -0,0 +1,89 @@
+TIMESTAMP = 1772022815
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/v0.14.0.mod) = 96727224ea8dfcbd225b836beb6f1ea72ea16e8a68ef78191a51cfcf89ef0677
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/v0.14.0.mod) = 1992
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/v0.14.0.zip) = bd6c8f8da34e49f3de3ec8f49eb34ddfcfa612ed8283633f93f210bd6152d89c
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/v0.14.0.zip) = 303362
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/beorn7-perks-v1.0.1_GH0.tar.gz) = 98db84bb0224a26094e6adba91b7ee7a1a7ace28cb648d818f8e779e6a19f825
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/beorn7-perks-v1.0.1_GH0.tar.gz) = 10867
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/cespare-xxhash-v2.3.0_GH0.tar.gz) = 0e3dda07b03a5f3733506218860ecb2d50c0f01f16299b5d60902ef5158cbde5
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/cespare-xxhash-v2.3.0_GH0.tar.gz) = 12696
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/dustin-go-humanize-v1.0.1_GH0.tar.gz) = ac3a0d8d0eef07c75d12eddce775a8e8306dfb9783a45312597c34ff643793d8
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/dustin-go-humanize-v1.0.1_GH0.tar.gz) = 17692
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/fsnotify-fsnotify-v1.9.0_GH0.tar.gz) = 3ff59fb248bb76a6bf4fbe99586aec08f7218743187c71da3ff2e34c23cc1a05
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/fsnotify-fsnotify-v1.9.0_GH0.tar.gz) = 73945
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/glebarez-go-sqlite-v1.22.0_GH0.tar.gz) = 4e003edc75385376c0c04563df80084815d8881aab24f41fe2f8e00e23788d4e
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/glebarez-go-sqlite-v1.22.0_GH0.tar.gz) = 53829
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/glebarez-sqlite-v1.11.0_GH0.tar.gz) = a0f21eebe04ccf26f89e0dcc271113c69f435543f713005112286a7d856fcd05
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/glebarez-sqlite-v1.11.0_GH0.tar.gz) = 16446
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/go-gorm-gorm-v1.31.1_GH0.tar.gz) = 03f353cf1c953a60102c8ec84cf550daf278b932acf3aed2b1e335909ceff65c
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/go-gorm-gorm-v1.31.1_GH0.tar.gz) = 232933
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/go-viper-mapstructure-v2.5.0_GH0.tar.gz) = 3cb4682ff64e76c28afea172743d0a37bf45e97eac09d9e44ef15ee1cefbfde3
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/go-viper-mapstructure-v2.5.0_GH0.tar.gz) = 58529
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/golang-exp-716be5621a96_GH0.tar.gz) = 5884b6499c5c2fe39ca4f37b076c7ae1b55464fa47a06d8b5c0b02ef4e3f1550
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/golang-exp-716be5621a96_GH0.tar.gz) = 1762443
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/golang-sys-v0.40.0_GH0.tar.gz) = 1f52e73c517335a1d3c1d62ac5dbd36af6d397ad9bfb78a991c2b4d772ca3ce7
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/golang-sys-v0.40.0_GH0.tar.gz) = 1535845
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/golang-text-v0.33.0_GH0.tar.gz) = c693bfb21a3b4cc433a85c1ba726887c675366976593c7588f177064a01e6252
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/golang-text-v0.33.0_GH0.tar.gz) = 8970561
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/google-uuid-v1.6.0_GH0.tar.gz) = ee63376b5675376c60e055ed66e5f3651ccc703bd580c022b8ad00cea309252d
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/google-uuid-v1.6.0_GH0.tar.gz) = 20896
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/inconshreveable-mousetrap-v1.1.0_GH0.tar.gz) = ab23e7c5cbf42564eb0190ee051b7217c04fd2599d2f26e9ebe205db75963141
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/inconshreveable-mousetrap-v1.1.0_GH0.tar.gz) = 5338
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/jinzhu-inflection-v1.0.0_GH0.tar.gz) = 582808364cc268544e3e6775b15d7fffbc28ccfb930a29840bb25e32d7d95e1f
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/jinzhu-inflection-v1.0.0_GH0.tar.gz) = 4766
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/jinzhu-now-v1.1.5_GH0.tar.gz) = 6660b00538ebb0e0ade120371f2a891c692650e9126bd45a805b8f4d65293127
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/jinzhu-now-v1.1.5_GH0.tar.gz) = 8636
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/mattn-go-colorable-v0.1.14_GH0.tar.gz) = 293966a59f0238da3c39f5b27c192d0efd6473ff74ab5a9c7e1ec73fdda3f1d4
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/mattn-go-colorable-v0.1.14_GH0.tar.gz) = 9800
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/mattn-go-isatty-v0.0.20_GH0.tar.gz) = 18fc42a278e60fb7a1dffa72f20539ae88d0e292db55b513ef514b7d369883a6
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/mattn-go-isatty-v0.0.20_GH0.tar.gz) = 4713
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/munnerz-goautoneg-a7dc8b61c822_GH0.tar.gz) = 3a455e3bcf8237ecee0385f97223ca821ec2547284e827e90f94a4984801ca1c
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/munnerz-goautoneg-a7dc8b61c822_GH0.tar.gz) = 2810
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/ncruces-go-strftime-v1.0.0_GH0.tar.gz) = ab7541b51163409bdc9722ab4fe64f1085385d86c87abd26678823644b3d404a
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/ncruces-go-strftime-v1.0.0_GH0.tar.gz) = 11922
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/pelletier-go-toml-v2.2.4_GH0.tar.gz) = d7bb392de6c9b6eedd23e5e05e7cd730822afa02b85ca6a69c9313638a945a24
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/pelletier-go-toml-v2.2.4_GH0.tar.gz) = 910332
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/prometheus-client_golang-v1.23.2_GH0.tar.gz) = 427df6d268825ccc84d4950d2e6388fc2bbde1fdc3e9f89bcd1e0c5561189219
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/prometheus-client_golang-v1.23.2_GH0.tar.gz) = 1130358
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/prometheus-client_model-v0.6.2_GH0.tar.gz) = 47c5ea7949f68e7f7b344350c59b6bd31eeb921f0eec6c3a566e27cf1951470c
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/prometheus-client_model-v0.6.2_GH0.tar.gz) = 17508
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/prometheus-common-v0.67.5_GH0.tar.gz) = 3e9d4be0e970dcf186fa5bd814afc4fbd7fd435e6749edcde8dcb8d5e6cc3daa
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/prometheus-common-v0.67.5_GH0.tar.gz) = 161241
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/prometheus-procfs-v0.19.2_GH0.tar.gz) = 4baea25247b086587a51683a8492a9c71fbcef3e86ca68ae586f179ede9af940
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/prometheus-procfs-v0.19.2_GH0.tar.gz) = 271093
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/protocolbuffers-protobuf-go-v1.36.11_GH0.tar.gz) = 517b935001f3d43640489cd1aab531a3ed5927fb34379fa6cb1c1a514e9cb8e8
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/protocolbuffers-protobuf-go-v1.36.11_GH0.tar.gz) = 1821632
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/remyoudompheng-bigfft-24d4a6f8daec_GH0.tar.gz) = 449a58b41c7e13d62cabaee8d9ee78a108a3de60cba27f5c194bd5eba489bab6
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/remyoudompheng-bigfft-24d4a6f8daec_GH0.tar.gz) = 14841
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/rogpeppe-go-internal-v1.12.0_GH0.tar.gz) = b51d588d05f3e82d3045545ef46bd758a0610b9cfde1ae243489a593908b6060
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/rogpeppe-go-internal-v1.12.0_GH0.tar.gz) = 116899
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/rs-zerolog-v1.34.0_GH0.tar.gz) = 7a658d16b365f28fc6b75ae4ea2948cbe39e8fdaaadd0b5e92a6d911703ba430
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/rs-zerolog-v1.34.0_GH0.tar.gz) = 217720
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/sagikazarmark-locafero-v0.12.0_GH0.tar.gz) = 7fbebaf3e224db6f9ad811369790937cb34854dda60a0e7a0a6002368c360613
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/sagikazarmark-locafero-v0.12.0_GH0.tar.gz) = 8823
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/spf13-afero-v1.15.0_GH0.tar.gz) = 80f04709b4c8f9d9a3e1dfafd0587092dfae3bbe11d907c23d43160d161bd855
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/spf13-afero-v1.15.0_GH0.tar.gz) = 95837
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/spf13-cast-v1.10.0_GH0.tar.gz) = d62a9b81da805574153b14c9defb1d817f71fb9ebb5b6d20e8859b3029170a38
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/spf13-cast-v1.10.0_GH0.tar.gz) = 24170
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/spf13-cobra-v1.10.2_GH0.tar.gz) = 8ee67b82ddb730f6ed639724d19ddd874be36b65da45529ad5cacce53c310704
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/spf13-cobra-v1.10.2_GH0.tar.gz) = 201437
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/spf13-pflag-v1.0.10_GH0.tar.gz) = 3d69f6fc641f43f3cb7bc309d083da7ca2110d11c0bbcec5d4c01036e884014f
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/spf13-pflag-v1.0.10_GH0.tar.gz) = 63154
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/spf13-viper-v1.21.0_GH0.tar.gz) = 20117b2c3e4f3b0594c39ad7c4df61ab7e0acdf5e51202a8b8c72393ebce0723
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/spf13-viper-v1.21.0_GH0.tar.gz) = 121982
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/subosito-gotenv-v1.6.0_GH0.tar.gz) = 51a5a8e36f30ddd97866779e93c4e93b0d4958a60fabd1d17fc2226bfe7823db
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/subosito-gotenv-v1.6.0_GH0.tar.gz) = 11470
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/yaml-go-yaml-v2.4.3_GH0.tar.gz) = bfd8a614fbceeccd1e24f6775a054581aa27b3ca32fa381c67a0a5b4d7a9c028
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/yaml-go-yaml-v2.4.3_GH0.tar.gz) = 73305
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/yaml-go-yaml-v3.0.4_GH0.tar.gz) = 1b3eeb663eb0c09b462dc3383fccc99164fab8f6818a7046336f2fe2c45c764b
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/yaml-go-yaml-v3.0.4_GH0.tar.gz) = 92661
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/fmd-server-v0.14.0.tar.bz2) = 2cde17eb5e7e1b8bb2a0617c128c625e06747238f03760cf0e1dc5d64797d029
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/fmd-server-v0.14.0.tar.bz2) = 258319
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/cznic-libc-6e4a801525dcb3e1f9c6a9e560ae30fed5752945_GL0.tar.gz) = 8d838d0e706047a261b03b81f7d033bd445c78a9d1a20691bb1a8eab78c2966f
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/cznic-libc-6e4a801525dcb3e1f9c6a9e560ae30fed5752945_GL0.tar.gz) = 15762633
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/cznic-mathutil-28129eec384c30a304561c3c8779e4bb29cbff12_GL0.tar.gz) = fbf9ecd5cb43676bcde7586aee0023d883ab713fef2105eb947d117245896344
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/cznic-mathutil-28129eec384c30a304561c3c8779e4bb29cbff12_GL0.tar.gz) = 122228
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/cznic-memory-0a6f7544739330ad95572cc272626a60176f2faf_GL0.tar.gz) = 9993c099aec9a8153a5d41f2e22807580b7547e45cf940a9d539a48a41cf85e3
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/cznic-memory-0a6f7544739330ad95572cc272626a60176f2faf_GL0.tar.gz) = 23004
+SHA256 (go/sysutils_fmd-server/fmd-server-v0.14.0/cznic-sqlite-bb6a17d8df4bb5fe2c530d512ca14e8ddfeffc47_GL0.tar.gz) = ddd7018fab2e9ff23d9b1fedf75612093e4e84581e02fe1c86eb3ca8cc9f51f5
+SIZE (go/sysutils_fmd-server/fmd-server-v0.14.0/cznic-sqlite-bb6a17d8df4bb5fe2c530d512ca14e8ddfeffc47_GL0.tar.gz) = 40112470
diff --git a/www/fmd-server/files/fmd-server.in b/www/fmd-server/files/fmd-server.in
new file mode 100644
index 000000000000..2a292d50f028
--- /dev/null
+++ b/www/fmd-server/files/fmd-server.in
@@ -0,0 +1,36 @@
+#!/bin/sh
+
+# PROVIDE: fmd-server
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+#
+# Configuration settings for fmd-server in /etc/rc.conf
+#
+# fmd_server_enable (bool):    Enable fmd-server. (default=NO)
+# fmd_server_log (str):        Log output. (default=/var/log/fmd-server.log)
+# fmd_server_runas (str):      User to run fmd-server as. (default=www)
+# fmd_server_args (str):       Arguments to fmd-server.
+#                              Supports --config and/or --db-dir.
+#
+
+. /etc/rc.subr
+
+name="fmd_server"
+desc="Locate and control your devices."
+rcvar="${name}_enable"
+
+srvbin="fmd-server"
+
+load_rc_config $name
+
+: ${fmd_server_enable:="NO"}
+: ${fmd_server_log:="/var/log/fmd-server.log"}
+: ${fmd_server_runas:="www"}
+: ${fmd_server_args:="--config %%ETCDIR%%/config.yml"}
+
+pidfile="/var/run/${srvbin}.pid"
+procname="%%LOCALBASE%%/bin/${srvbin}"
+command="/usr/sbin/daemon"
+command_args="-c -u '${fmd_server_runas}' -p '${pidfile}' -t '${desc}' -o '${fmd_server_log}' '${procname}' serve ${fmd_server_args}"
+
+run_rc_command "$1"
diff --git a/www/fmd-server/pkg-descr b/www/fmd-server/pkg-descr
new file mode 100644
index 000000000000..f72480053642
--- /dev/null
+++ b/www/fmd-server/pkg-descr
@@ -0,0 +1,15 @@
+FMD ("Find My Device") web server written in Go
+Privacy-preserving mobile device location
+
+FMD allows you to locate and remotely control your Android device.
+This is useful if you have lost or misplaced it. FMD is decentralised, and
+users remain in full control of their data.
+
+With FMD, you can send commands to your phone: to locate it via GPS, to locate
+it via nearby cell towers, to take a picture, to lock it, to let it ring, or to
+factory-reset it. Commands can be sent over multiple transport channels: over
+SMS, over third-party messaging apps like Signal or Matrix (that post
+a notification to the Android notification tray), or over the "FMD Server"
+(a self-hostable server providing a web interface to control your device).
+
+For full self-hosted mode, use toghether with sysutils/go-ntfy


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?699ef18b.433a0.67a0f993>