forked from marook/everarch
-
Notifications
You must be signed in to change notification settings - Fork 0
the hopefully ever lasting archive
License
ConfusedOnCOFFEE/everarch
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
everarch - the hopefully ever lasting archive 1) Introduction 2) Build & Installation 3) Podman Images 4) Usage 5) Tests 6) License 7) Contact ------------------------------------------------------------------------ Introduction everarch is a collection of applications to store your personal data. The goals of everarch are: - store your tiny and GB sized files - provide a customized index over your data - make backups complete and fast - access your files via a virtual file system - store your data in a format which you still can read in 20 years in _future programming language_ - store your data in a way that allows you to easily adopt new data structures without the need to migrate the existing data - detect corrupt or externally modified data and restore it with a partial backup What everarch is not: - a database which handles inserts every few milliseconds over a long amount of time very well - a multi user storage with fine grained access permissions everarch is right now in a pre alpha state. It's not intended to be used for your production data yet. Check out the backlog file to see what we are heading for in the v0.1 release. To get a more in depth overview about everarch watch the presentation at https://evr.ma300k.de The everarch source code is available at https://github.com/marook/everarch ------------------------------------------------------------------------ Build & Installation everarch uses some linux and GNU libc APIs which makes it POSIX incompatible. So you might not be able to compile it on Windows or BSD systems. Everarch is known to run at least on i686 and arm64 systems. Install at least the minimal required dependencies on Debian. For other distributions see the corresponding doc/BUILD.* files: $ apt install make automake pkg-config libtool texinfo libxml2-dev \ libxslt1-dev libssl-dev libgpgme-dev libgcrypt-dev libsqlite3-dev The minimum required dependencies will just build the evr-glacier-storage server. Usually you also want to build evr-attr-index which requires the following extra dependencies: $ apt install flex bison evr-fs let's you access everarch content from the file system instead of just via the evr command line interface. You need the following extra dependencies if you want te bouild evr-fs: $ apt install fuse3 libfuse3-dev Install the following if you want to use the emacs integration: $ apt install emacs elpa-helm elpa-s elpa-seq Install the following if you want to build the unfinished and experimental evr-attr-ui: $ apt install libgtk-3-dev On linux you can execute the following within the everarch directory to build the application. Setup the build system once after you clone the repository: $ autoreconf --install $ ./configure There are some feature toggles available with the configure script. For example --enable-futile-claim-set-tracking. List them with: $ ./configure --help Run every time you want to build the applications: $ make Install the applications: $ make install ------------------------------------------------------------------------ Podman Images Some parts of everarch are available as podman or docker images. These images can either be compiled by yourself or are available at https://hub.docker.com/u/ma300k Files for building the images are below etc/podman. Also there is a podman compose configuration for starting up an evr-websocket-server together with an evr-glacier-storage server. See etc/podman/standalone-glacier-websocket. ------------------------------------------------------------------------ Usage A detailed manual can be found in src/evr.texi. ------------------------------------------------------------------------ Tests Executing the tests requires more dependencies: $ apt install valgrind socat Executing the tests also requires a GPG key usable for signing. If you don't have one it can be created using: $ gpg --gen-key Execute the following to run the whole test suite with unit and integration tests: $ ./test.sh Test execution relies on valgrind ( https://www.valgrind.org ) and socat ( http://www.dest-unreach.org/socat/ ). You can customize some integration test variables for you local system's needs if you create the file testing/suite/config.local. See testing/suite/config for potential variables. ------------------------------------------------------------------------ License See COPYING for details about everarch files copying conditions. There are a few files which got a different license. See their header comments for more details. These files include at least: src/rollsum.h src/rollsum.c My sincere thank you goes out to the original authors Martin Pool and Donovan Baarda. ------------------------------------------------------------------------ Contact For questions about everarch you can contact me via email at Markus Peröbner <markus.peroebner@gmail.com>.
About
the hopefully ever lasting archive
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- C 80.5%
- JavaScript 5.8%
- Shell 3.6%
- Emacs Lisp 3.1%
- M4 2.6%
- Python 1.4%
- Other 3.0%