mrkeyoor.com_
Sat 17 Oct 13:34 UTC
Self-Hostedevaluationupdated 08 Sept 2026

ente review

Ente is an open-source, end-to-end encrypted home for photos, two-factor authentication codes, and sensitive documents, with hosted apps and a server you can operate yourself. It solves the privacy problem of storing personal data in the cloud while keeping decryption under the user's control.

+70stars / 7d
Verdict

Our run of Ente installed 1,114 Rust packages in 48 seconds, but neither the build nor the test command completed successfully, so source contributors should budget for toolchain repair before productive work. End users get a serious encrypted alternative to mainstream photo storage, plus Auth and Locker, from one active codebase. Self-host it only if Postgres, object storage, client endpoints, and restore drills are already familiar work.

We ran it

Lab card: what happened when we ran enteScreenshot of ente (ente.com)
Install✓ · 48s1114 packages
Build✗ · 423s
Tests✗ · 45sran, no count parsed
Repo10522 files~419,095 lines of source · 142.2 MB · 37 CI workflows

Answers from our run

Does ente build from source?

Dependencies installed in 48 seconds (1114 packages), and the build failed. We cloned commit 8f432da into a clean Debian container with 3 CPUs and no project-specific setup.

Do ente's tests pass?

No. The project's own test command exited unsuccessfully after 45 seconds, and its output did not expose an individual test count.

Who should not use ente?

Self-hosters who cannot meet Docker Compose 2.30, 1 CPU core, and 1 GB of RAM: Ente lists these as quick-start minimums and expects a Unix-compatible filesystem for containerized Postgres.

What are the alternatives to ente?

Immich, PhotoPrism, Aegis. Our run of Ente installed 1,114 Rust packages in 48 seconds, but neither the build nor the test command completed successfully, so source contributors should budget for toolchain repair before productive work.

Setup2/5Quick start is documented, but our Rust build and tests failed
Docs4/5Self-hosting, configuration, backup, and clients are explained
Community5/528,708 stars, a Sept. 7 release, and Sept. 8 issue activity
Maturity4/5External audits and active releases, with current Windows gaps

Who it’s for

Developers prepared to navigate 10,522 files across Ente's clients, server, and shared Rust code.
Families and individuals who want encrypted photo backup across mobile, desktop, and web clients.
Self-hosters prepared to operate a database, object storage, TLS, and tested backups.
People replacing Authy who want a free authenticator with encrypted sync and export options.

Who it’s NOT for

Self-hosters who cannot meet Docker Compose 2.30, 1 CPU core, and 1 GB of RAM: Ente lists these as quick-start minimums and expects a Unix-compatible filesystem for containerized Postgres.
Operators unwilling to restore-test both Postgres and object storage: Ente says encrypted files are unusable without the database and recommends a plaintext photo backup for new self-hosters.
Windows on Arm users who need the Photos v1.7.28 installer today: issue 12636 reports failures on a Surface Laptop 7, and a maintainer is still investigating.
Windows desktop Auth users who depend on immediate search after unlocking with Windows Hello: issue 1296 remains open while a September 2026 nightly build is being retested.
Organizations whose licensing policy excludes AGPL-3.0 software: that is the repository's declared license.

Setup reality

Our fresh Debian sandbox installed 1,114 Rust packages in 48 seconds. Building commit 8f432da failed with exit 101 after 423 seconds, and the test command failed with exit 101 after 45 seconds. Both log tails called the missing rustfmt component non-fatal, then showed llama-cpp-sys asking CMake to build a directory with no Makefile and panicking. The log does not explain why that Makefile was absent.

The self-hosted service follows a different documented path. Its quick start needs Docker Compose 2.30 or newer, at least 1 CPU core and 1 GB of RAM, then starts Museum, Postgres, object storage, and web clients. SMTP is optional for a trial because the verification code can be read from container logs. Public deployment needs protected credentials, app endpoints, TLS, and either local MinIO or S3 credentials.

The measured target was ./rust/, one part of a 142.2 MB checkout with 10,522 files and about 419,095 source lines. Our scan recorded 37 CI workflow files but no Dockerfile or tests directory for that target. The server follows a separate packaged path, and its README says self-hosting support is not currently prioritized; operators should expect to diagnose storage, database, and client-endpoint problems themselves.

Photos, Auth, and Locker share one encrypted service

Ente's 10,522-file checkout also contains the clients, Museum server, infrastructure code, and shared Rust components behind its three apps. Photos handles encrypted backup, search, sharing, albums, and imports. Auth stores two-factor codes with encrypted sync. Locker covers documents, credentials, notes, private sharing, and emergency access. The common service gives users one account and lets developers inspect server and client code in the same repository. The README names external security reviews by Cure53, Symbolic Software, and Fallible.

The measured checkout was 142.2 MB and held roughly 419,095 lines of source. This is a product suite, far larger than a tidy server utility. Mobile, web, desktop, Apple, Android, Go, TypeScript, Dart, and Rust work coexist. A storage or encryption change may cross several clients. The short root README is an introduction; setup details live in the self-hosting documentation and component directories.

Prebuilt images sidestep the 142.2 MB source build

Our clone includes a quick-start script that pulls prebuilt images and keeps its setup in a local directory. Ente documents a minimum of 1 CPU core, 1 GB of RAM, and Docker Compose 2.30 or newer. Photos then opens on port 3000, public albums use port 3002, and the verification code can be read from the Compose logs. The packaged route avoids compiling the full workspace.

The service behind those clients is Museum, backed by Postgres and S3-compatible object storage. The default Compose path supplies local MinIO, while an external provider needs endpoints and credentials in the configuration. SMTP replaces log-based verification for normal users. A public deployment also needs TLS, correct app URLs, protected credentials, and a registration policy. This packaged route avoids the 1,114-package Rust build, but operators still own those settings. The server README says routine self-hosting support cannot be prioritized.

What happened when we ran it

We ran commit 8f432da in our sandbox, where the Rust workspace installed 1,114 packages in 48 seconds. The build then ran for 423 seconds and exited with code 101. Its tail first reported that rustfmt was missing for the Rust 1.98.0 toolchain, explicitly called that formatting error non-fatal, and continued. The final failure came from llama-cpp-sys: CMake tried to build its output directory, gmake found no Makefile, and the crate's build script panicked.

The test command also exited with code 101 after 45 seconds. Its last lines show the same two events, the non-fatal rustfmt warning followed by the llama-cpp-sys CMake build with no Makefile. No test summary appears in the supplied tail, so we cannot say how many tests started or passed. Our measurement setup was a fresh unprivileged Debian container with 3 CPUs, 12 GB RAM, no secrets, and the lab-rust:1 image.

Object storage alone cannot recover an Ente library

The backup guide names three required pieces: Museum configuration, Postgres data, and object storage. The 10,522-file checkout had 37 CI workflow files, while our scan recorded no Dockerfile or tests directory in the measured Rust target. The database holds encrypted file and collection material needed to use the bucket's objects, and the user's password supplies the master secret. Self-hosters still own data recovery, regardless of how many checks run upstream.

The 142.2 MB checkout includes deployment code, yet Ente advises new operators to keep a plaintext photo backup and test a full restoration before trusting instance backups. That warning should change the purchase decision. A household NAS admin who already snapshots databases and buckets can absorb the work. Someone seeking an appliance should use Ente's hosted service or choose a system whose recovery model matches an existing backup routine. Encryption raises the cost of an incomplete backup.

Windows Photos and Auth still have open platform reports

Issue 1296 has tracked broken typing in Ente Auth search on Windows since April 2024. Reports tie it to unlocking with Windows Hello or passkeys, and users say changing focus restores input. On September 8, 2026, a contributor asked users to retest a nightly build after a Flutter upgrade. Issue 12636 separately reports that the Photos v1.7.28 Arm64 installer failed on a Surface Laptop 7, while its x64 build installed. A maintainer said the team would investigate.

A repository with 37 CI workflow files still spans platform behavior that automation may miss. Neither open issue proves a general failure on every Windows machine, and the nightly retest may resolve the Auth case. Windows users should install on the actual hardware and exercise unlock, search, upload, and playback before migrating. The Arm64 report is a reason to keep the x64 installer or another photo client available until the issue closes.

A September 8 push and v1.3.63 release show current maintenance

GitHub recorded Ente's last push on September 8, 2026, and listed 28,708 stars, 217 open issues, and 14 open pull requests. Photos v1.3.63 was published on September 7 with Library Sharing and album slideshows, plus changes for large uploads and large libraries. Issue 1296 also received a contributor response on September 8. This monorepo ships several products, so one Photos tag cannot describe every component's pace.

Our 48-second install proves that Cargo could resolve and obtain the 1,114-package Rust dependency set, while the 423-second build failure blocks a clean source recommendation for commit 8f432da. The packaged apps and Compose route remain reasonable trials because they follow different delivery paths. For a private family photo service, start with the packaged Ente apps. For source development or long-term self-hosting, require a successful local build and a full restore rehearsal before moving the only copy of anything important.

Alternatives

ProjectWhat it isPick it when
Immich gh↗A self-hosted photo and video library with mobile backup and local search features.pick this instead when a Google Photos-like home server is the main goal and Ente's authenticator and document apps add no value.
PhotoPrism gh↗A browser-based photo manager focused on organizing and searching a private library.pick this instead when an existing server-side photo archive needs indexing more than encrypted multi-device storage.
AegisA free, open-source Android app dedicated to two-step verification tokens.pick this instead when you only need an Android authenticator and Ente's photo and document services add no value.
Nextcloud gh↗A broader self-hosted file and collaboration server with a large app ecosystem.pick this instead when photos are one part of a general file, calendar, and collaboration service.

What people are saying

  1. [velocity-scout] ente/ente

Sources

  1. Ente repository and README
  2. Ente self-hosting requirements
  3. Ente backup guide
  4. Ente Photos v1.3.63 release
  5. Museum server README
  6. Ente self-hosting quickstart
  7. Windows Auth search issue 1296
  8. Windows Arm64 installer issue 12636

More self-hosted reviews

playport · edge-smart-doh · Comma · ProsperoEden · zulu · node_exporter · the whole board →