almir: also remove the corresponding module.
The almir package was removed in 30291227f2411abaca097773eedb49b8f259e297 at about 2017-08 This module can no more be used without it.
This commit is contained in:
parent
675dc1bfbf
commit
c948613a65
@ -106,7 +106,7 @@
|
|||||||
freenet = 79;
|
freenet = 79;
|
||||||
ircd = 80;
|
ircd = 80;
|
||||||
bacula = 81;
|
bacula = 81;
|
||||||
almir = 82;
|
#almir = 82; # removed 2018-03-25, the almir package was removed in 30291227f2411abaca097773eedb49b8f259e297 during 2017-08
|
||||||
deluge = 83;
|
deluge = 83;
|
||||||
mysql = 84;
|
mysql = 84;
|
||||||
rabbitmq = 85;
|
rabbitmq = 85;
|
||||||
@ -393,7 +393,7 @@
|
|||||||
freenet = 79;
|
freenet = 79;
|
||||||
ircd = 80;
|
ircd = 80;
|
||||||
bacula = 81;
|
bacula = 81;
|
||||||
almir = 82;
|
#almir = 82; # removed 2018-03-25, the almir package was removed in 30291227f2411abaca097773eedb49b8f259e297 during 2017-08
|
||||||
deluge = 83;
|
deluge = 83;
|
||||||
mysql = 84;
|
mysql = 84;
|
||||||
rabbitmq = 85;
|
rabbitmq = 85;
|
||||||
|
@ -158,7 +158,6 @@
|
|||||||
./services/audio/slimserver.nix
|
./services/audio/slimserver.nix
|
||||||
./services/audio/squeezelite.nix
|
./services/audio/squeezelite.nix
|
||||||
./services/audio/ympd.nix
|
./services/audio/ympd.nix
|
||||||
./services/backup/almir.nix
|
|
||||||
./services/backup/bacula.nix
|
./services/backup/bacula.nix
|
||||||
./services/backup/borgbackup.nix
|
./services/backup/borgbackup.nix
|
||||||
./services/backup/crashplan.nix
|
./services/backup/crashplan.nix
|
||||||
|
@ -1,173 +0,0 @@
|
|||||||
{ config, lib, pkgs, ... }:
|
|
||||||
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
let
|
|
||||||
cfg = config.services.almir;
|
|
||||||
|
|
||||||
bconsoleconf = pkgs.writeText "bconsole.conf"
|
|
||||||
''
|
|
||||||
Director {
|
|
||||||
Name = ${cfg.director_name}
|
|
||||||
DIRport = ${toString cfg.director_port}
|
|
||||||
address = ${cfg.director_address}
|
|
||||||
Password = "${cfg.director_password}"
|
|
||||||
}
|
|
||||||
'';
|
|
||||||
|
|
||||||
productionini = pkgs.writeText "production.ini"
|
|
||||||
''
|
|
||||||
[app:main]
|
|
||||||
use = egg:almir
|
|
||||||
|
|
||||||
pyramid.reload_templates = false
|
|
||||||
pyramid.debug_authorization = false
|
|
||||||
pyramid.debug_notfound = false
|
|
||||||
pyramid.debug_routematch = false
|
|
||||||
pyramid.debug_templates = false
|
|
||||||
pyramid.default_locale_name = en
|
|
||||||
pyramid.includes =
|
|
||||||
pyramid_exclog
|
|
||||||
exclog.extra_info = true
|
|
||||||
|
|
||||||
sqlalchemy.url = ${cfg.sqlalchemy_engine_url}
|
|
||||||
timezone = ${cfg.timezone}
|
|
||||||
bconsole_config = ${bconsoleconf}
|
|
||||||
|
|
||||||
[server:main]
|
|
||||||
use = egg:waitress#main
|
|
||||||
host = 127.0.0.1
|
|
||||||
port = ${toString cfg.port}
|
|
||||||
|
|
||||||
|
|
||||||
# Begin logging configuration
|
|
||||||
|
|
||||||
[loggers]
|
|
||||||
keys = root, almir, sqlalchemy, exc_logger
|
|
||||||
|
|
||||||
[handlers]
|
|
||||||
keys = console
|
|
||||||
|
|
||||||
[formatters]
|
|
||||||
keys = generic
|
|
||||||
|
|
||||||
[logger_root]
|
|
||||||
level = WARN
|
|
||||||
handlers = console
|
|
||||||
|
|
||||||
[logger_almir]
|
|
||||||
level = WARN
|
|
||||||
handlers =
|
|
||||||
qualname = almir
|
|
||||||
|
|
||||||
[logger_exc_logger]
|
|
||||||
level = ERROR
|
|
||||||
handlers =
|
|
||||||
qualname = exc_logger
|
|
||||||
|
|
||||||
[logger_sqlalchemy]
|
|
||||||
level = WARN
|
|
||||||
handlers =
|
|
||||||
qualname = sqlalchemy.engine
|
|
||||||
# "level = INFO" logs SQL queries.
|
|
||||||
# "level = DEBUG" logs SQL queries and results.
|
|
||||||
# "level = WARN" logs neither. (Recommended for production systems.)
|
|
||||||
|
|
||||||
[handler_console]
|
|
||||||
class = StreamHandler
|
|
||||||
args = (sys.stderr,)
|
|
||||||
level = NOTSET
|
|
||||||
formatter = generic
|
|
||||||
|
|
||||||
[formatter_generic]
|
|
||||||
format = %(asctime)s %(levelname)-5.5s [%(name)s][%(threadName)s] %(message)s
|
|
||||||
'';
|
|
||||||
in {
|
|
||||||
options = {
|
|
||||||
services.almir = {
|
|
||||||
enable = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = ''
|
|
||||||
Enable Almir web server. Also configures postgresql database and installs bacula.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
port = mkOption {
|
|
||||||
default = 35000;
|
|
||||||
type = types.int;
|
|
||||||
description = ''
|
|
||||||
Port for Almir web server to listen on.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
timezone = mkOption {
|
|
||||||
description = ''
|
|
||||||
Timezone as specified in https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
|
||||||
'';
|
|
||||||
example = "Europe/Ljubljana";
|
|
||||||
};
|
|
||||||
|
|
||||||
sqlalchemy_engine_url = mkOption {
|
|
||||||
default = "postgresql:///bacula";
|
|
||||||
example = ''
|
|
||||||
postgresql://bacula:bacula@localhost:5432/bacula
|
|
||||||
mysql+mysqlconnector://<user>:<password>@<hostname>/<database>'
|
|
||||||
sqlite:////var/lib/bacula/bacula.db'
|
|
||||||
'';
|
|
||||||
description = ''
|
|
||||||
Define SQL database connection to bacula catalog as specified in http://docs.sqlalchemy.org/en/latest/core/engines.html#database-urls
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
director_name = mkOption {
|
|
||||||
description = ''
|
|
||||||
Name of the Director to connect with bconsole.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
director_password = mkOption {
|
|
||||||
description = ''
|
|
||||||
Password for Director to connect with bconsole.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
director_port = mkOption {
|
|
||||||
default = 9101;
|
|
||||||
type = types.int;
|
|
||||||
description = ''
|
|
||||||
Port for Director to connect with bconsole.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
director_address = mkOption {
|
|
||||||
default = "127.0.0.1";
|
|
||||||
description = ''
|
|
||||||
IP/Hostname for Director to connect with bconsole.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
systemd.services.almir = {
|
|
||||||
after = [ "network.target" "postgresql.service" ];
|
|
||||||
description = "Almir web app";
|
|
||||||
wantedBy = [ "multi-user.target" ];
|
|
||||||
path = [ pkgs.pythonPackages.almir ];
|
|
||||||
environment.PYTHONPATH = "${pkgs.pythonPackages.almir}/lib/${pkgs.pythonPackages.python.libPrefix}/site-packages";
|
|
||||||
serviceConfig.ExecStart = "${pkgs.pythonPackages.pyramid}/bin/pserve ${productionini}";
|
|
||||||
};
|
|
||||||
|
|
||||||
environment.systemPackages = [ pkgs.pythonPackages.almir ];
|
|
||||||
|
|
||||||
users.extraUsers.almir = {
|
|
||||||
group = "almir";
|
|
||||||
uid = config.ids.uids.almir;
|
|
||||||
createHome = true;
|
|
||||||
shell = "${pkgs.bash}/bin/bash";
|
|
||||||
};
|
|
||||||
|
|
||||||
users.extraGroups.almir.gid = config.ids.gids.almir;
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user