Omnom
Omnom is a webpage bookmarking and snapshotting service.
Declared in: projects/Omnom/default.nix
Try the service in a VM
- 
    Install Nix
    
- Bash
 - 
  
$ apt install --yes curl git jq nix 
- Bash
 - 
  
$ apt install --yes curl git jq nix 
- Bash
 - 
  
$ pacman --sync --refresh --noconfirm curl git jq nix 
 - 
    Download a configuration file
    
# default.nix { ngipkgs ? import (fetchTarball "https://github.com/ngi-nix/ngipkgs/tarball/main") { }, }: ngipkgs.demo-vm ( let port = 8080; in { services.omnom = { enable = true; openFirewall = true; inherit port; settings = { server.address = "0.0.0.0:${toString port}"; }; }; } )
 - 
    Enable binary substituters
    
- Bash
 - 
  
$ export NIX_CONFIG='substituters = https://cache.nixos.org/ https://ngi.cachix.org/ trusted-public-keys = cache.nixos.org-1:6nchdd59x431o0gwypbmraurkbj16zpmqfgspcdshjy= ngi.cachix.org-1:n+cal72roc3qqulxihpv+tw5t42whxmmhpragkrsrow=' 
 - 
    Build and run a virtual machine
    
- Bash
 - 
  
$ nix-build ./default.nix && ./result 
- Bash
 - 
  
$ nix-build ./default.nix && ./result 
- Bash
 - 
  
$ rev=$(nix-instantiate --eval --attr sources.nixpkgs.rev https://github.com/ngi-nix/ngipkgs/archive/master.tar.gz | jq --raw-output)$ nix-shell -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/$rev.tar.gz --packages nix --run "nix-build ./default.nix && ./result" 
- Bash
 - 
  
$ nix-build ./default.nix && ./result 
 - Missing Contribute usage instructions.
 
Options
services.omnom
- 
  
  
The directory where Omnom stores its data files.
- Type:
 absolute path- Default:
 "/var/lib/omnom"- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Whether to enable Omnom, a webpage bookmarking and snapshotting service.
- Type:
 boolean- Default:
 false- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
The Omnom service group.
- Type:
 non-empty string- Default:
 "omnom"- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Whether to open ports in the firewall.
- Type:
 boolean- Default:
 false- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
The omnom package to use.
- Type:
 package- Default:
 pkgs.omnom- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
File containing the password for the SMTP user.
- Type:
 null or absolute path- Default:
 null- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
The Omnom service port.
- Type:
 16 bit unsigned integer; between 0 and 65535 (both inclusive)- Default:
 7331- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Configuration options for the /etc/omnom/config.yml file.
- Type:
 open submodule of (YAML 1.1 value)- Default:
 { }- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
ActivityPub private key. Will be generated, by default.
- Type:
 absolute path- Default:
 "${config.services.omnom.dataDir}/private.pem"- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
ActivityPub public key. Will be generated, by default.
- Type:
 absolute path- Default:
 "${config.services.omnom.dataDir}/public.pem"- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Whether to enable debug mode.
- Type:
 boolean- Default:
 false- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Whether to enable restricting user creation.
- Type:
 boolean- Default:
 false- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Number of results per page.
- Type:
 signed integer- Default:
 20- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Database connection URI.
- Type:
 string- Default:
 "${config.services.omnom.dataDir}/db.sqlite3"- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Database type.
- Type:
 value "sqlite" (singular enum)- Default:
 "sqlite"- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Server address.
- Type:
 string- Default:
 "127.0.0.1:${config.services.omnom.port}"- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Whether to limit cookies to a secure channel.
- Type:
 boolean- Default:
 true- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Connection timeout duration in seconds.
- Type:
 signed integer- Default:
 5- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
SMTP server hostname.
- Type:
 string- Default:
 ""- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
SMTP server port address.
- Type:
 16 bit unsigned integer; between 0 and 65535 (both inclusive)- Default:
 25- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Send timeout duration in seconds.
- Type:
 signed integer- Default:
 10- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Omnom sender e-mail.
- Type:
 string- Default:
 "Omnom" - Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Whether to enable Whether TLS encryption should be used..
- Type:
 boolean- Default:
 false- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Whether to enable Whether to allow insecure TLS..
- Type:
 boolean- Default:
 false- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
Storage type.
- Type:
 string- Default:
 "fs"- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 - 
  
  
The Omnom service user.
- Type:
 non-empty string- Default:
 "omnom"- Declared in:
 - nixos/modules/services/misc/omnom.nix
 
 
services.omnom.dataDir
services.omnom.enable
services.omnom.group
services.omnom.openFirewall
services.omnom.package
services.omnom.passwordFile
services.omnom.port
services.omnom.settings
services.omnom.settings.activitypub.privkey
services.omnom.settings.activitypub.pubkey
services.omnom.settings.app.debug
services.omnom.settings.app.disable_signup
services.omnom.settings.app.results_per_page
services.omnom.settings.db.connection
services.omnom.settings.db.type
services.omnom.settings.server.address
services.omnom.settings.server.secure_cookie
services.omnom.settings.smtp.connection_timeout
services.omnom.settings.smtp.host
services.omnom.settings.smtp.port
services.omnom.settings.smtp.send_timeout
services.omnom.settings.smtp.sender
services.omnom.settings.smtp.tls
services.omnom.settings.smtp.tls_allow_insecure
services.omnom.settings.storage.type
services.omnom.user
Examples
base
{ ... }: { services.omnom = { enable = true; openFirewall = true; port = 8080; settings = { app = { disable_signup = true; # restrict CLI user-creation results_per_page = 50; }; smtp = { tls = true; host = "127.0.0.1"; port = 1025; username = "testUser"; }; }; #Contains password for SMIP User passwordFile = "/etc/secrets/omnom.key"; }; }
Declared in: projects/Omnom/example.nix
This project is funded by NLnet through these subgrants:
- Core
 - Omnom-ActivityPub
 - Review
 - Omnom
 
Related links: