Merge master into staging-next
This commit is contained in:
commit
60fbf92c10
5
.github/CODEOWNERS
vendored
5
.github/CODEOWNERS
vendored
@ -359,3 +359,8 @@ nixos/tests/zfs.nix @raitobezarius
|
||||
nixos/modules/services/continuous-integration/buildbot @Mic92 @zowoq
|
||||
nixos/tests/buildbot.nix @Mic92 @zowoq
|
||||
pkgs/development/tools/continuous-integration/buildbot @Mic92 @zowoq
|
||||
|
||||
# Pretix
|
||||
pkgs/by-name/pr/pretix/ @mweinelt
|
||||
nixos/modules/services/web-apps/pretix.nix @mweinelt
|
||||
nixos/tests/web-apps/pretix.nix @mweinelt
|
||||
|
@ -103,6 +103,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
||||
|
||||
- [Monado](https://monado.freedesktop.org/), an open source XR runtime. Available as [services.monado](#opt-services.monado.enable).
|
||||
|
||||
- [Pretix](https://pretix.eu/about/en/), an open source ticketing software for events. Available as [services.pretix]($opt-services-pretix.enable).
|
||||
|
||||
- [Clevis](https://github.com/latchset/clevis), a pluggable framework for automated decryption, used to unlock encrypted devices in initrd. Available as [boot.initrd.clevis.enable](#opt-boot.initrd.clevis.enable).
|
||||
|
||||
- [armagetronad](https://wiki.armagetronad.org), a mid-2000s 3D lightcycle game widely played at iD Tech Camps. You can define multiple servers using `services.armagetronad.<server>.enable`.
|
||||
@ -320,7 +322,12 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
||||
|
||||
- `addDriverRunpath` has been added to facilitate the deprecation of the old `addOpenGLRunpath` setuphook. This change is motivated by the evolution of the setuphook to include all hardware acceleration.
|
||||
|
||||
- Cinnamon has been updated to 6.0. Please beware that the [Wayland session](https://blog.linuxmint.com/?p=4591) is still experimental in this release.
|
||||
- Cinnamon has been updated to 6.0. Please beware that the [Wayland session](https://blog.linuxmint.com/?p=4591) is still experimental in this release and could potentially [affect Xorg sessions](https://blog.linuxmint.com/?p=4639). We suggest a reboot when switching between sessions.
|
||||
|
||||
- MATE has been updated to 1.28.
|
||||
- To properly support panel plugins built with Wayland (in-process) support, we are introducing `services.xserver.desktopManager.mate.extraPanelApplets` option, please use that for installing panel applets.
|
||||
- Similarly, please use `services.xserver.desktopManager.mate.extraCajaExtensions` option for installing Caja extensions.
|
||||
- To use the Wayland session, enable `services.xserver.desktopManager.mate.enableWaylandSession`. This is opt-in for now as it is in early stage and introduces a new set of Wayfire closure. Due to [known issues with LightDM](https://github.com/canonical/lightdm/issues/63), we suggest using SDDM for display manager.
|
||||
|
||||
- New `boot.loader.systemd-boot.xbootldrMountPoint` allows setting up a separate [XBOOTLDR partition](https://uapi-group.org/specifications/specs/boot_loader_specification/) to store boot files. Useful on systems with a small EFI System partition that cannot be easily repartitioned.
|
||||
|
||||
@ -347,6 +354,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
|
||||
|
||||
- [Lilypond](https://lilypond.org/index.html) and [Denemo](https://www.denemo.org) are now compiled with Guile 3.0.
|
||||
|
||||
- The EC2 image module now enables the [Amazon SSM Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html) by default.
|
||||
|
||||
- The following options of the Nextcloud module were moved into [`services.nextcloud.settings`](#opt-services.nextcloud.settings) and renamed to match the name from Nextcloud's `config.php`:
|
||||
- `logLevel` -> [`loglevel`](#opt-services.nextcloud.settings.loglevel),
|
||||
- `logType` -> [`log_type`](#opt-services.nextcloud.settings.log_type),
|
||||
|
@ -30,7 +30,10 @@ in
|
||||
ipu6-drivers
|
||||
];
|
||||
|
||||
hardware.firmware = [ pkgs.ipu6-camera-bins ];
|
||||
hardware.firmware = with pkgs; [
|
||||
ipu6-camera-bins
|
||||
ivsc-firmware
|
||||
];
|
||||
|
||||
services.udev.extraRules = ''
|
||||
SUBSYSTEM=="intel-ipu6-psys", MODE="0660", GROUP="video"
|
||||
|
@ -1358,6 +1358,7 @@
|
||||
./services/web-apps/plausible.nix
|
||||
./services/web-apps/powerdns-admin.nix
|
||||
./services/web-apps/pretalx.nix
|
||||
./services/web-apps/pretix.nix
|
||||
./services/web-apps/prosody-filer.nix
|
||||
./services/web-apps/rimgo.nix
|
||||
./services/web-apps/sftpgo.nix
|
||||
|
@ -600,6 +600,7 @@ in
|
||||
description = "Ensure that NetworkManager declarative profiles are created";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
before = [ "network-online.target" ];
|
||||
after = [ "NetworkManager.service" ];
|
||||
script = let
|
||||
path = id: "/run/NetworkManager/system-connections/${id}.nmconnection";
|
||||
in ''
|
||||
@ -609,9 +610,7 @@ in
|
||||
${pkgs.envsubst}/bin/envsubst -i ${ini.generate (lib.escapeShellArg profile.n) profile.v} > ${path (lib.escapeShellArg profile.n)}
|
||||
'') (lib.mapAttrsToList (n: v: { inherit n v; }) cfg.ensureProfiles.profiles)
|
||||
+ ''
|
||||
if systemctl is-active --quiet NetworkManager; then
|
||||
${pkgs.networkmanager}/bin/nmcli connection reload
|
||||
fi
|
||||
${pkgs.networkmanager}/bin/nmcli connection reload
|
||||
'';
|
||||
serviceConfig = {
|
||||
EnvironmentFile = cfg.ensureProfiles.environmentFiles;
|
||||
|
@ -1,99 +1,122 @@
|
||||
{ config, pkgs, lib, ... }:
|
||||
|
||||
with lib;
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
let
|
||||
cfg = config.services.komga;
|
||||
|
||||
in {
|
||||
inherit (lib) mkOption mkEnableOption maintainers;
|
||||
inherit (lib.types) port str bool;
|
||||
in
|
||||
{
|
||||
options = {
|
||||
services.komga = {
|
||||
enable = mkEnableOption (lib.mdDoc "Komga, a free and open source comics/mangas media server");
|
||||
enable = mkEnableOption "Komga, a free and open source comics/mangas media server";
|
||||
|
||||
port = mkOption {
|
||||
type = types.port;
|
||||
type = port;
|
||||
default = 8080;
|
||||
description = lib.mdDoc ''
|
||||
The port that Komga will listen on.
|
||||
'';
|
||||
description = "The port that Komga will listen on.";
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
type = str;
|
||||
default = "komga";
|
||||
description = lib.mdDoc ''
|
||||
User account under which Komga runs.
|
||||
'';
|
||||
description = "User account under which Komga runs.";
|
||||
};
|
||||
|
||||
group = mkOption {
|
||||
type = types.str;
|
||||
type = str;
|
||||
default = "komga";
|
||||
description = lib.mdDoc ''
|
||||
Group under which Komga runs.
|
||||
'';
|
||||
description = "Group under which Komga runs.";
|
||||
};
|
||||
|
||||
stateDir = mkOption {
|
||||
type = types.str;
|
||||
type = str;
|
||||
default = "/var/lib/komga";
|
||||
description = lib.mdDoc ''
|
||||
State and configuration directory Komga will use.
|
||||
'';
|
||||
description = "State and configuration directory Komga will use.";
|
||||
};
|
||||
|
||||
openFirewall = mkOption {
|
||||
type = types.bool;
|
||||
type = bool;
|
||||
default = false;
|
||||
description = lib.mdDoc ''
|
||||
Whether to open the firewall for the port in {option}`services.komga.port`.
|
||||
'';
|
||||
description = "Whether to open the firewall for the port in {option}`services.komga.port`.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
config =
|
||||
let
|
||||
inherit (lib) mkIf getExe;
|
||||
in
|
||||
mkIf cfg.enable {
|
||||
|
||||
networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ cfg.port ];
|
||||
networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ cfg.port ];
|
||||
|
||||
users.groups = mkIf (cfg.group == "komga") {
|
||||
komga = {};
|
||||
};
|
||||
users.groups = mkIf (cfg.group == "komga") { komga = { }; };
|
||||
|
||||
users.users = mkIf (cfg.user == "komga") {
|
||||
komga = {
|
||||
group = cfg.group;
|
||||
home = cfg.stateDir;
|
||||
description = "Komga Daemon user";
|
||||
isSystemUser = true;
|
||||
};
|
||||
};
|
||||
|
||||
systemd.services.komga = {
|
||||
environment = {
|
||||
SERVER_PORT = builtins.toString cfg.port;
|
||||
KOMGA_CONFIGDIR = cfg.stateDir;
|
||||
users.users = mkIf (cfg.user == "komga") {
|
||||
komga = {
|
||||
group = cfg.group;
|
||||
home = cfg.stateDir;
|
||||
description = "Komga Daemon user";
|
||||
isSystemUser = true;
|
||||
};
|
||||
};
|
||||
|
||||
description = "Komga is a free and open source comics/mangas media server";
|
||||
systemd.services.komga = {
|
||||
environment = {
|
||||
SERVER_PORT = builtins.toString cfg.port;
|
||||
KOMGA_CONFIGDIR = cfg.stateDir;
|
||||
};
|
||||
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
after = [ "network-online.target" ];
|
||||
description = "Komga is a free and open source comics/mangas media server";
|
||||
|
||||
serviceConfig = {
|
||||
User = cfg.user;
|
||||
Group = cfg.group;
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
after = [ "network-online.target" ];
|
||||
|
||||
Type = "simple";
|
||||
Restart = "on-failure";
|
||||
ExecStart = "${pkgs.komga}/bin/komga";
|
||||
serviceConfig = {
|
||||
User = cfg.user;
|
||||
Group = cfg.group;
|
||||
|
||||
StateDirectory = mkIf (cfg.stateDir == "/var/lib/komga") "komga";
|
||||
Type = "simple";
|
||||
Restart = "on-failure";
|
||||
ExecStart = getExe pkgs.komga;
|
||||
|
||||
StateDirectory = mkIf (cfg.stateDir == "/var/lib/komga") "komga";
|
||||
|
||||
RemoveIPC = true;
|
||||
NoNewPrivileges = true;
|
||||
CapabilityBoundingSet = "";
|
||||
SystemCallFilter = [ "@system-service" ];
|
||||
ProtectSystem = "full";
|
||||
PrivateTmp = true;
|
||||
ProtectProc = "invisible";
|
||||
ProtectClock = true;
|
||||
ProcSubset = "pid";
|
||||
PrivateUsers = true;
|
||||
PrivateDevices = true;
|
||||
ProtectHostname = true;
|
||||
ProtectKernelTunables = true;
|
||||
RestrictAddressFamilies = [
|
||||
"AF_INET"
|
||||
"AF_INET6"
|
||||
"AF_NETLINK"
|
||||
];
|
||||
LockPersonality = true;
|
||||
RestrictNamespaces = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectKernelModules = true;
|
||||
SystemCallArchitectures = "native";
|
||||
RestrictSUIDSGID = true;
|
||||
RestrictRealtime = true;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
meta.maintainers = with maintainers; [ govanify ];
|
||||
}
|
||||
|
579
nixos/modules/services/web-apps/pretix.nix
Normal file
579
nixos/modules/services/web-apps/pretix.nix
Normal file
@ -0,0 +1,579 @@
|
||||
{ config
|
||||
, lib
|
||||
, pkgs
|
||||
, utils
|
||||
, ...
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (lib)
|
||||
concatMapStringsSep
|
||||
escapeShellArgs
|
||||
filter
|
||||
filterAttrs
|
||||
getExe
|
||||
getExe'
|
||||
isAttrs
|
||||
isList
|
||||
literalExpression
|
||||
mapAttrs
|
||||
mkDefault
|
||||
mkEnableOption
|
||||
mkIf
|
||||
mkOption
|
||||
mkPackageOption
|
||||
optionals
|
||||
optionalString
|
||||
recursiveUpdate
|
||||
types
|
||||
;
|
||||
|
||||
filterRecursiveNull = o:
|
||||
if isAttrs o then
|
||||
mapAttrs (_: v: filterRecursiveNull v) (filterAttrs (_: v: v != null) o)
|
||||
else if isList o then
|
||||
map filterRecursiveNull (filter (v: v != null) o)
|
||||
else
|
||||
o;
|
||||
|
||||
cfg = config.services.pretix;
|
||||
format = pkgs.formats.ini { };
|
||||
|
||||
configFile = format.generate "pretix.cfg" (filterRecursiveNull cfg.settings);
|
||||
|
||||
finalPackage = cfg.package.override {
|
||||
inherit (cfg) plugins;
|
||||
};
|
||||
|
||||
pythonEnv = cfg.package.python.buildEnv.override {
|
||||
extraLibs = with cfg.package.python.pkgs; [
|
||||
(toPythonModule finalPackage)
|
||||
gunicorn
|
||||
]
|
||||
++ lib.optionals (cfg.settings.memcached.location != null)
|
||||
cfg.package.optional-dependencies.memcached
|
||||
;
|
||||
};
|
||||
|
||||
withRedis = cfg.settings.redis.location != null;
|
||||
in
|
||||
{
|
||||
meta = with lib; {
|
||||
maintainers = with maintainers; [ hexa ];
|
||||
};
|
||||
|
||||
options.services.pretix = {
|
||||
enable = mkEnableOption "pretix";
|
||||
|
||||
package = mkPackageOption pkgs "pretix" { };
|
||||
|
||||
group = mkOption {
|
||||
type = types.str;
|
||||
default = "pretix";
|
||||
description = ''
|
||||
Group under which pretix should run.
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "pretix";
|
||||
description = ''
|
||||
User under which pretix should run.
|
||||
'';
|
||||
};
|
||||
|
||||
environmentFile = mkOption {
|
||||
type = types.nullOr types.path;
|
||||
default = null;
|
||||
example = "/run/keys/pretix-secrets.env";
|
||||
description = ''
|
||||
Environment file to pass secret configuration values.
|
||||
|
||||
Each line must follow the `PRETIX_SECTION_KEY=value` pattern.
|
||||
'';
|
||||
};
|
||||
|
||||
plugins = mkOption {
|
||||
type = types.listOf types.package;
|
||||
default = [];
|
||||
example = literalExpression ''
|
||||
with config.services.pretix.package.plugins; [
|
||||
passbook
|
||||
pages
|
||||
];
|
||||
'';
|
||||
description = ''
|
||||
Pretix plugins to install into the Python environment.
|
||||
'';
|
||||
};
|
||||
|
||||
gunicorn.extraArgs = mkOption {
|
||||
type = with types; listOf str;
|
||||
default = [
|
||||
"--name=pretix"
|
||||
];
|
||||
example = [
|
||||
"--name=pretix"
|
||||
"--workers=4"
|
||||
"--max-requests=1200"
|
||||
"--max-requests-jitter=50"
|
||||
"--log-level=info"
|
||||
];
|
||||
description = ''
|
||||
Extra arguments to pass to gunicorn.
|
||||
See <https://docs.pretix.eu/en/latest/admin/installation/manual_smallscale.html#start-pretix-as-a-service> for details.
|
||||
'';
|
||||
apply = escapeShellArgs;
|
||||
};
|
||||
|
||||
celery = {
|
||||
extraArgs = mkOption {
|
||||
type = with types; listOf str;
|
||||
default = [ ];
|
||||
description = ''
|
||||
Extra arguments to pass to celery.
|
||||
|
||||
See <https://docs.celeryq.dev/en/stable/reference/cli.html#celery-worker> for more info.
|
||||
'';
|
||||
apply = utils.escapeSystemdExecArgs;
|
||||
};
|
||||
};
|
||||
|
||||
nginx = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
example = false;
|
||||
description = ''
|
||||
Whether to set up an nginx virtual host.
|
||||
'';
|
||||
};
|
||||
|
||||
domain = mkOption {
|
||||
type = types.str;
|
||||
example = "talks.example.com";
|
||||
description = ''
|
||||
The domain name under which to set up the virtual host.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
database.createLocally = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
example = false;
|
||||
description = ''
|
||||
Whether to automatically set up the database on the local DBMS instance.
|
||||
|
||||
Only supported for PostgreSQL. Not required for sqlite.
|
||||
'';
|
||||
};
|
||||
|
||||
settings = mkOption {
|
||||
type = types.submodule {
|
||||
freeformType = format.type;
|
||||
options = {
|
||||
pretix = {
|
||||
instance_name = mkOption {
|
||||
type = types.str;
|
||||
example = "tickets.example.com";
|
||||
description = ''
|
||||
The name of this installation.
|
||||
'';
|
||||
};
|
||||
|
||||
url = mkOption {
|
||||
type = types.str;
|
||||
example = "https://tickets.example.com";
|
||||
description = ''
|
||||
The installation’s full URL, without a trailing slash.
|
||||
'';
|
||||
};
|
||||
|
||||
cachedir = mkOption {
|
||||
type = types.path;
|
||||
default = "/var/cache/pretix";
|
||||
description = ''
|
||||
Directory for storing temporary files.
|
||||
'';
|
||||
};
|
||||
|
||||
datadir = mkOption {
|
||||
type = types.path;
|
||||
default = "/var/lib/pretix";
|
||||
description = ''
|
||||
Directory for storing user uploads and similar data.
|
||||
'';
|
||||
};
|
||||
|
||||
logdir = mkOption {
|
||||
type = types.path;
|
||||
default = "/var/log/pretix";
|
||||
description = ''
|
||||
Directory for storing log files.
|
||||
'';
|
||||
};
|
||||
|
||||
currency = mkOption {
|
||||
type = types.str;
|
||||
default = "EUR";
|
||||
example = "USD";
|
||||
description = ''
|
||||
Default currency for events in its ISO 4217 three-letter code.
|
||||
'';
|
||||
};
|
||||
|
||||
registration = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
example = true;
|
||||
description = ''
|
||||
Whether to allow registration of new admin users.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
database = {
|
||||
backend = mkOption {
|
||||
type = types.enum [
|
||||
"sqlite3"
|
||||
"postgresql"
|
||||
];
|
||||
default = "postgresql";
|
||||
description = ''
|
||||
Database backend to use.
|
||||
|
||||
Only postgresql is recommended for production setups.
|
||||
'';
|
||||
};
|
||||
|
||||
host = mkOption {
|
||||
type = with types; nullOr types.path;
|
||||
default = if cfg.settings.database.backend == "postgresql" then "/run/postgresql" else null;
|
||||
defaultText = literalExpression ''
|
||||
if config.services.pretix.settings..database.backend == "postgresql" then "/run/postgresql"
|
||||
else null
|
||||
'';
|
||||
description = ''
|
||||
Database host or socket path.
|
||||
'';
|
||||
};
|
||||
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
default = "pretix";
|
||||
description = ''
|
||||
Database name.
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "pretix";
|
||||
description = ''
|
||||
Database username.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
mail = {
|
||||
from = mkOption {
|
||||
type = types.str;
|
||||
example = "tickets@example.com";
|
||||
description = ''
|
||||
E-Mail address used in the `FROM` header of outgoing mails.
|
||||
'';
|
||||
};
|
||||
|
||||
host = mkOption {
|
||||
type = types.str;
|
||||
default = "localhost";
|
||||
example = "mail.example.com";
|
||||
description = ''
|
||||
Hostname of the SMTP server use for mail delivery.
|
||||
'';
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
type = types.port;
|
||||
default = 25;
|
||||
example = 587;
|
||||
description = ''
|
||||
Port of the SMTP server to use for mail delivery.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
celery = {
|
||||
backend = mkOption {
|
||||
type = types.str;
|
||||
default = "redis+socket://${config.services.redis.servers.pretix.unixSocket}?virtual_host=1";
|
||||
defaultText = literalExpression ''
|
||||
optionalString config.services.pretix.celery.enable "redis+socket://''${config.services.redis.servers.pretix.unixSocket}?virtual_host=1"
|
||||
'';
|
||||
description = ''
|
||||
URI to the celery backend used for the asynchronous job queue.
|
||||
'';
|
||||
};
|
||||
|
||||
broker = mkOption {
|
||||
type = types.str;
|
||||
default = "redis+socket://${config.services.redis.servers.pretix.unixSocket}?virtual_host=2";
|
||||
defaultText = literalExpression ''
|
||||
optionalString config.services.pretix.celery.enable "redis+socket://''${config.services.redis.servers.pretix.unixSocket}?virtual_host=2"
|
||||
'';
|
||||
description = ''
|
||||
URI to the celery broker used for the asynchronous job queue.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
redis = {
|
||||
location = mkOption {
|
||||
type = with types; nullOr str;
|
||||
default = "unix://${config.services.redis.servers.pretix.unixSocket}?db=0";
|
||||
defaultText = literalExpression ''
|
||||
"unix://''${config.services.redis.servers.pretix.unixSocket}?db=0"
|
||||
'';
|
||||
description = ''
|
||||
URI to the redis server, used to speed up locking, caching and session storage.
|
||||
'';
|
||||
};
|
||||
|
||||
sessions = mkOption {
|
||||
type = types.bool;
|
||||
default = true;
|
||||
example = false;
|
||||
description = ''
|
||||
Whether to use redis as the session storage.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
memcached = {
|
||||
location = mkOption {
|
||||
type = with types; nullOr str;
|
||||
default = null;
|
||||
example = "127.0.0.1:11211";
|
||||
description = ''
|
||||
The `host:port` combination or the path to the UNIX socket of a memcached instance.
|
||||
|
||||
Can be used instead of Redis for caching.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
tools = {
|
||||
pdftk = mkOption {
|
||||
type = types.path;
|
||||
default = getExe pkgs.pdftk;
|
||||
defaultText = literalExpression ''
|
||||
lib.getExe pkgs.pdftk
|
||||
'';
|
||||
description = ''
|
||||
Path to the pdftk executable.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
default = { };
|
||||
description = ''
|
||||
pretix configuration as a Nix attribute set. All settings can also be passed
|
||||
from the environment.
|
||||
|
||||
See <https://docs.pretix.eu/en/latest/admin/config.html> for possible options.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
# https://docs.pretix.eu/en/latest/admin/installation/index.html
|
||||
|
||||
environment.systemPackages = [
|
||||
(pkgs.writeScriptBin "pretix-manage" ''
|
||||
cd ${cfg.settings.pretix.datadir}
|
||||
sudo=exec
|
||||
if [[ "$USER" != ${cfg.user} ]]; then
|
||||
sudo='exec /run/wrappers/bin/sudo -u ${cfg.user} ${optionalString withRedis "-g redis-pretix"} --preserve-env=PRETIX_CONFIG_FILE'
|
||||
fi
|
||||
export PRETIX_CONFIG_FILE=${configFile}
|
||||
$sudo ${getExe' pythonEnv "pretix-manage"} "$@"
|
||||
'')
|
||||
];
|
||||
|
||||
services = {
|
||||
nginx = mkIf cfg.nginx.enable {
|
||||
enable = true;
|
||||
recommendedGzipSettings = mkDefault true;
|
||||
recommendedOptimisation = mkDefault true;
|
||||
recommendedProxySettings = mkDefault true;
|
||||
recommendedTlsSettings = mkDefault true;
|
||||
upstreams.pretix.servers."unix:/run/pretix/pretix.sock" = { };
|
||||
virtualHosts.${cfg.nginx.domain} = {
|
||||
# https://docs.pretix.eu/en/latest/admin/installation/manual_smallscale.html#ssl
|
||||
extraConfig = ''
|
||||
more_set_headers Referrer-Policy same-origin;
|
||||
more_set_headers X-Content-Type-Options nosniff;
|
||||
'';
|
||||
locations = {
|
||||
"/".proxyPass = "http://pretix";
|
||||
"/media/" = {
|
||||
alias = "${cfg.settings.pretix.datadir}/media/";
|
||||
extraConfig = ''
|
||||
access_log off;
|
||||
expires 7d;
|
||||
'';
|
||||
};
|
||||
"^~ /media/(cachedfiles|invoices)" = {
|
||||
extraConfig = ''
|
||||
deny all;
|
||||
return 404;
|
||||
'';
|
||||
};
|
||||
"/static/" = {
|
||||
alias = "${finalPackage}/${cfg.package.python.sitePackages}/pretix/static.dist/";
|
||||
extraConfig = ''
|
||||
access_log off;
|
||||
more_set_headers Cache-Control "public";
|
||||
expires 365d;
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
postgresql = mkIf (cfg.database.createLocally && cfg.settings.database.backend == "postgresql") {
|
||||
enable = true;
|
||||
ensureUsers = [ {
|
||||
name = cfg.settings.database.user;
|
||||
ensureDBOwnership = true;
|
||||
} ];
|
||||
ensureDatabases = [ cfg.settings.database.name ];
|
||||
};
|
||||
|
||||
redis.servers.pretix.enable = withRedis;
|
||||
};
|
||||
|
||||
systemd.services = let
|
||||
commonUnitConfig = {
|
||||
environment.PRETIX_CONFIG_FILE = configFile;
|
||||
serviceConfig = {
|
||||
User = "pretix";
|
||||
Group = "pretix";
|
||||
EnvironmentFile = optionals (cfg.environmentFile != null) [
|
||||
cfg.environmentFile
|
||||
];
|
||||
StateDirectory = [
|
||||
"pretix"
|
||||
];
|
||||
CacheDirectory = "pretix";
|
||||
LogsDirectory = "pretix";
|
||||
WorkingDirectory = cfg.settings.pretix.datadir;
|
||||
SupplementaryGroups = optionals withRedis [
|
||||
"redis-pretix"
|
||||
];
|
||||
AmbientCapabilities = "";
|
||||
CapabilityBoundingSet = [ "" ];
|
||||
DevicePolicy = "closed";
|
||||
LockPersonality = true;
|
||||
MemoryDenyWriteExecute = true;
|
||||
NoNewPrivileges = true;
|
||||
PrivateDevices = true;
|
||||
PrivateTmp = true;
|
||||
ProcSubset = "pid";
|
||||
ProtectControlGroups = true;
|
||||
ProtectHome = true;
|
||||
ProtectHostname = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectProc = "invisible";
|
||||
ProtectSystem = "strict";
|
||||
RemoveIPC = true;
|
||||
RestrictAddressFamilies = [
|
||||
"AF_INET"
|
||||
"AF_INET6"
|
||||
"AF_UNIX"
|
||||
];
|
||||
RestrictNamespaces = true;
|
||||
RestrictRealtime = true;
|
||||
RestrictSUIDSGID = true;
|
||||
SystemCallArchitectures = "native";
|
||||
SystemCallFilter = [
|
||||
"@system-service"
|
||||
"~@privileged"
|
||||
"@chown"
|
||||
];
|
||||
UMask = "0077";
|
||||
};
|
||||
};
|
||||
in {
|
||||
pretix-web = recursiveUpdate commonUnitConfig {
|
||||
description = "pretix web service";
|
||||
after = [
|
||||
"network.target"
|
||||
"redis-pretix.service"
|
||||
"postgresql.service"
|
||||
];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
preStart = ''
|
||||
versionFile="${cfg.settings.pretix.datadir}/.version"
|
||||
version=$(cat "$versionFile" 2>/dev/null || echo 0)
|
||||
|
||||
pluginsFile="${cfg.settings.pretix.datadir}/.plugins"
|
||||
plugins=$(cat "$pluginsFile" 2>/dev/null || echo "")
|
||||
configuredPlugins="${concatMapStringsSep "|" (package: package.name) cfg.plugins}"
|
||||
|
||||
if [[ $version != ${cfg.package.version} || $plugins != $configuredPlugins ]]; then
|
||||
${getExe' pythonEnv "pretix-manage"} migrate
|
||||
|
||||
echo "${cfg.package.version}" > "$versionFile"
|
||||
echo "$configuredPlugins" > "$pluginsFile"
|
||||
fi
|
||||
'';
|
||||
serviceConfig = {
|
||||
ExecStart = "${getExe' pythonEnv "gunicorn"} --bind unix:/run/pretix/pretix.sock ${cfg.gunicorn.extraArgs} pretix.wsgi";
|
||||
RuntimeDirectory = "pretix";
|
||||
};
|
||||
};
|
||||
|
||||
pretix-periodic = recursiveUpdate commonUnitConfig {
|
||||
description = "pretix periodic task runner";
|
||||
# every 15 minutes
|
||||
startAt = [ "*:3,18,33,48" ];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
ExecStart = "${getExe' pythonEnv "pretix-manage"} runperiodic";
|
||||
};
|
||||
};
|
||||
|
||||
pretix-worker = recursiveUpdate commonUnitConfig {
|
||||
description = "pretix asynchronous job runner";
|
||||
after = [
|
||||
"network.target"
|
||||
"redis-pretix.service"
|
||||
"postgresql.service"
|
||||
];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig.ExecStart = "${getExe' pythonEnv "celery"} -A pretix.celery_app worker ${cfg.celery.extraArgs}";
|
||||
};
|
||||
};
|
||||
|
||||
systemd.sockets.pretix-web.socketConfig = {
|
||||
ListenStream = "/run/pretix/pretix.sock";
|
||||
SocketUser = "nginx";
|
||||
};
|
||||
|
||||
users = {
|
||||
groups."${cfg.group}" = {};
|
||||
users."${cfg.user}" = {
|
||||
isSystemUser = true;
|
||||
createHome = true;
|
||||
home = cfg.settings.pretix.datadir;
|
||||
inherit (cfg) group;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -20,6 +20,22 @@ in
|
||||
};
|
||||
|
||||
debug = mkEnableOption (lib.mdDoc "mate-session debug messages");
|
||||
|
||||
extraPanelApplets = mkOption {
|
||||
default = [ ];
|
||||
example = literalExpression "with pkgs.mate; [ mate-applets ]";
|
||||
type = types.listOf types.package;
|
||||
description = lib.mdDoc "Extra applets to add to mate-panel.";
|
||||
};
|
||||
|
||||
extraCajaExtensions = mkOption {
|
||||
default = [ ];
|
||||
example = lib.literalExpression "with pkgs.mate; [ caja-extensions ]";
|
||||
type = types.listOf types.package;
|
||||
description = lib.mdDoc "Extra extensions to add to caja.";
|
||||
};
|
||||
|
||||
enableWaylandSession = mkEnableOption (lib.mdDoc "MATE Wayland session");
|
||||
};
|
||||
|
||||
environment.mate.excludePackages = mkOption {
|
||||
@ -31,55 +47,63 @@ in
|
||||
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
config = mkMerge [
|
||||
(mkIf (cfg.enable || cfg.enableWaylandSession) {
|
||||
services.xserver.displayManager.sessionPackages = [
|
||||
pkgs.mate.mate-session-manager
|
||||
];
|
||||
|
||||
services.xserver.displayManager.sessionPackages = [
|
||||
pkgs.mate.mate-session-manager
|
||||
];
|
||||
# Debugging
|
||||
environment.sessionVariables.MATE_SESSION_DEBUG = mkIf cfg.debug "1";
|
||||
|
||||
# Let caja find extensions
|
||||
environment.sessionVariables.CAJA_EXTENSION_DIRS = [ "${config.system.path}/lib/caja/extensions-2.0" ];
|
||||
environment.systemPackages = utils.removePackagesByName
|
||||
(pkgs.mate.basePackages ++
|
||||
pkgs.mate.extraPackages ++
|
||||
[
|
||||
(pkgs.mate.caja-with-extensions.override {
|
||||
extensions = cfg.extraCajaExtensions;
|
||||
})
|
||||
(pkgs.mate.mate-panel-with-applets.override {
|
||||
applets = cfg.extraPanelApplets;
|
||||
})
|
||||
pkgs.desktop-file-utils
|
||||
pkgs.glib
|
||||
pkgs.gtk3.out
|
||||
pkgs.shared-mime-info
|
||||
pkgs.xdg-user-dirs # Update user dirs as described in https://freedesktop.org/wiki/Software/xdg-user-dirs/
|
||||
pkgs.yelp # for 'Contents' in 'Help' menus
|
||||
])
|
||||
config.environment.mate.excludePackages;
|
||||
|
||||
# Let mate-panel find applets
|
||||
environment.sessionVariables."MATE_PANEL_APPLETS_DIR" = "${config.system.path}/share/mate-panel/applets";
|
||||
environment.sessionVariables."MATE_PANEL_EXTRA_MODULES" = "${config.system.path}/lib/mate-panel/applets";
|
||||
programs.dconf.enable = true;
|
||||
# Shell integration for VTE terminals
|
||||
programs.bash.vteIntegration = mkDefault true;
|
||||
programs.zsh.vteIntegration = mkDefault true;
|
||||
|
||||
# Debugging
|
||||
environment.sessionVariables.MATE_SESSION_DEBUG = mkIf cfg.debug "1";
|
||||
# Mate uses this for printing
|
||||
programs.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
|
||||
|
||||
environment.systemPackages = utils.removePackagesByName
|
||||
(pkgs.mate.basePackages ++
|
||||
pkgs.mate.extraPackages ++
|
||||
[
|
||||
pkgs.desktop-file-utils
|
||||
pkgs.glib
|
||||
pkgs.gtk3.out
|
||||
pkgs.shared-mime-info
|
||||
pkgs.xdg-user-dirs # Update user dirs as described in https://freedesktop.org/wiki/Software/xdg-user-dirs/
|
||||
pkgs.yelp # for 'Contents' in 'Help' menus
|
||||
])
|
||||
config.environment.mate.excludePackages;
|
||||
services.gnome.at-spi2-core.enable = true;
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
services.udev.packages = [ pkgs.mate.mate-settings-daemon ];
|
||||
services.gvfs.enable = true;
|
||||
services.upower.enable = config.powerManagement.enable;
|
||||
services.xserver.libinput.enable = mkDefault true;
|
||||
|
||||
programs.dconf.enable = true;
|
||||
# Shell integration for VTE terminals
|
||||
programs.bash.vteIntegration = mkDefault true;
|
||||
programs.zsh.vteIntegration = mkDefault true;
|
||||
security.pam.services.mate-screensaver.unixAuth = true;
|
||||
|
||||
# Mate uses this for printing
|
||||
programs.system-config-printer.enable = (mkIf config.services.printing.enable (mkDefault true));
|
||||
xdg.portal.configPackages = mkDefault [ pkgs.mate.mate-desktop ];
|
||||
|
||||
services.gnome.at-spi2-core.enable = true;
|
||||
services.gnome.gnome-keyring.enable = true;
|
||||
services.udev.packages = [ pkgs.mate.mate-settings-daemon ];
|
||||
services.gvfs.enable = true;
|
||||
services.upower.enable = config.powerManagement.enable;
|
||||
services.xserver.libinput.enable = mkDefault true;
|
||||
environment.pathsToLink = [ "/share" ];
|
||||
})
|
||||
(mkIf cfg.enableWaylandSession {
|
||||
programs.wayfire.enable = true;
|
||||
programs.wayfire.plugins = [ pkgs.wayfirePlugins.firedecor ];
|
||||
|
||||
security.pam.services.mate-screensaver.unixAuth = true;
|
||||
|
||||
xdg.portal.configPackages = mkDefault [ pkgs.mate.mate-desktop ];
|
||||
|
||||
environment.pathsToLink = [ "/share" ];
|
||||
};
|
||||
environment.sessionVariables.NIX_GSETTINGS_OVERRIDES_DIR = "${pkgs.mate.mate-gsettings-overrides}/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas";
|
||||
|
||||
environment.systemPackages = [ pkgs.mate.mate-wayland-session ];
|
||||
services.xserver.displayManager.sessionPackages = [ pkgs.mate.mate-wayland-session ];
|
||||
})
|
||||
];
|
||||
}
|
||||
|
@ -79,6 +79,10 @@ in
|
||||
serviceConfig.StandardOutput = "journal+console";
|
||||
};
|
||||
|
||||
# Amazon-issued AMIs include the SSM Agent by default, so we do the same.
|
||||
# https://docs.aws.amazon.com/systems-manager/latest/userguide/ami-preinstalled-agent.html
|
||||
services.amazon-ssm-agent.enable = true;
|
||||
|
||||
# Allow root logins only using the SSH key that the user specified
|
||||
# at instance creation time.
|
||||
services.openssh.enable = true;
|
||||
|
@ -513,6 +513,7 @@ in {
|
||||
mastodon = discoverTests (import ./web-apps/mastodon { inherit handleTestOn; });
|
||||
pixelfed = discoverTests (import ./web-apps/pixelfed { inherit handleTestOn; });
|
||||
mate = handleTest ./mate.nix {};
|
||||
mate-wayland = handleTest ./mate-wayland.nix {};
|
||||
matter-server = handleTest ./matter-server.nix {};
|
||||
matomo = handleTest ./matomo.nix {};
|
||||
matrix-appservice-irc = handleTest ./matrix/appservice-irc.nix {};
|
||||
@ -729,6 +730,7 @@ in {
|
||||
pppd = handleTest ./pppd.nix {};
|
||||
predictable-interface-names = handleTest ./predictable-interface-names.nix {};
|
||||
pretalx = runTest ./web-apps/pretalx.nix;
|
||||
pretix = runTest ./web-apps/pretix.nix;
|
||||
printing-socket = handleTest ./printing.nix { socket = true; };
|
||||
printing-service = handleTest ./printing.nix { socket = false; };
|
||||
privoxy = handleTest ./privoxy.nix {};
|
||||
|
63
nixos/tests/mate-wayland.nix
Normal file
63
nixos/tests/mate-wayland.nix
Normal file
@ -0,0 +1,63 @@
|
||||
import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
||||
name = "mate-wayland";
|
||||
|
||||
meta.maintainers = lib.teams.mate.members;
|
||||
|
||||
nodes.machine = { ... }: {
|
||||
imports = [
|
||||
./common/user-account.nix
|
||||
];
|
||||
|
||||
services.xserver.enable = true;
|
||||
services.xserver.displayManager = {
|
||||
sddm.enable = true; # https://github.com/canonical/lightdm/issues/63
|
||||
sddm.wayland.enable = true;
|
||||
defaultSession = "MATE";
|
||||
autoLogin = {
|
||||
enable = true;
|
||||
user = "alice";
|
||||
};
|
||||
};
|
||||
services.xserver.desktopManager.mate.enableWaylandSession = true;
|
||||
|
||||
hardware.pulseaudio.enable = true;
|
||||
|
||||
# Need to switch to a different GPU driver than the default one (-vga std) so that wayfire can launch:
|
||||
virtualisation.qemu.options = [ "-vga none -device virtio-gpu-pci" ];
|
||||
};
|
||||
|
||||
enableOCR = true;
|
||||
|
||||
testScript = { nodes, ... }:
|
||||
let
|
||||
user = nodes.machine.users.users.alice;
|
||||
in
|
||||
''
|
||||
machine.wait_for_unit("display-manager.service")
|
||||
|
||||
with subtest("Wait for Wayland server"):
|
||||
machine.wait_for_file("/run/user/${toString user.uid}/wayland-1")
|
||||
|
||||
with subtest("Check if MATE session components actually start"):
|
||||
for i in ["wayfire", "mate-panel", "mate-wayland.sh", "mate-wayland-components.sh"]:
|
||||
machine.wait_until_succeeds(f"pgrep -f {i}")
|
||||
machine.wait_for_text('(Applications|Places|System)')
|
||||
# It is expected that this applet doesn't work in Wayland
|
||||
machine.wait_for_text('WorkspaceSwitcherApplet')
|
||||
|
||||
with subtest("Check if various environment variables are set"):
|
||||
cmd = "xargs --null --max-args=1 echo < /proc/$(pgrep -xf mate-panel)/environ"
|
||||
machine.succeed(f"{cmd} | grep 'XDG_SESSION_TYPE' | grep 'wayland'")
|
||||
machine.succeed(f"{cmd} | grep 'XDG_SESSION_DESKTOP' | grep 'MATE'")
|
||||
machine.succeed(f"{cmd} | grep 'MATE_PANEL_APPLETS_DIR' | grep '${pkgs.mate.mate-panel-with-applets.pname}'")
|
||||
|
||||
with subtest("Check if Wayfire config is properly configured"):
|
||||
for i in ["button_style = mate", "firedecor", "mate-wayland-components.sh"]:
|
||||
machine.wait_until_succeeds(f"cat /home/${user.name}/.config/mate/wayfire.ini | grep '{i}'")
|
||||
|
||||
with subtest("Check if Wayfire has ever coredumped"):
|
||||
machine.fail("coredumpctl --json=short | grep wayfire")
|
||||
machine.sleep(10)
|
||||
machine.screenshot("screen")
|
||||
'';
|
||||
})
|
@ -54,6 +54,15 @@ import ./make-test-python.nix ({ pkgs, lib, ... }: {
|
||||
machine.wait_for_text('(Applications|Places|System)')
|
||||
machine.wait_for_text('(Computer|Home|Trash)')
|
||||
|
||||
with subtest("Check if various environment variables are set"):
|
||||
machine.succeed("xargs --null --max-args=1 echo < /proc/$(pgrep -xf marco)/environ | grep 'XDG_CURRENT_DESKTOP' | grep 'MATE'")
|
||||
# From mate-panel-with-applets packaging
|
||||
machine.succeed("xargs --null --max-args=1 echo < /proc/$(pgrep -xf mate-panel)/environ | grep 'MATE_PANEL_APPLETS_DIR' | grep '${pkgs.mate.mate-panel-with-applets.pname}'")
|
||||
|
||||
with subtest("Check if applets are built with in-process support"):
|
||||
# This is needed for Wayland support
|
||||
machine.fail("pgrep -fa clock-applet")
|
||||
|
||||
with subtest("Lock the screen"):
|
||||
machine.wait_until_succeeds("su - ${user.name} -c '${env} mate-screensaver-command -q' | grep 'The screensaver is inactive'")
|
||||
machine.succeed("su - ${user.name} -c '${env} mate-screensaver-command -l >&2 &'")
|
||||
|
47
nixos/tests/web-apps/pretix.nix
Normal file
47
nixos/tests/web-apps/pretix.nix
Normal file
@ -0,0 +1,47 @@
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
{
|
||||
name = "pretix";
|
||||
meta.maintainers = with lib.maintainers; [ hexa ];
|
||||
|
||||
nodes = {
|
||||
pretix = {
|
||||
networking.extraHosts = ''
|
||||
127.0.0.1 tickets.local
|
||||
'';
|
||||
|
||||
services.pretix = {
|
||||
enable = true;
|
||||
nginx.domain = "tickets.local";
|
||||
plugins = with pkgs.pretix.plugins; [
|
||||
passbook
|
||||
pages
|
||||
];
|
||||
settings = {
|
||||
pretix = {
|
||||
instance_name = "NixOS Test";
|
||||
url = "http://tickets.local";
|
||||
};
|
||||
mail.from = "hello@tickets.local";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
start_all()
|
||||
|
||||
pretix.wait_for_unit("pretix-web.service")
|
||||
pretix.wait_for_unit("pretix-worker.service")
|
||||
|
||||
pretix.wait_until_succeeds("curl -q --fail http://tickets.local")
|
||||
|
||||
pretix.succeed("pretix-manage --help")
|
||||
|
||||
pretix.log(pretix.succeed("systemd-analyze security pretix-web.service"))
|
||||
'';
|
||||
}
|
@ -6625,14 +6625,14 @@ final: prev:
|
||||
|
||||
neotest-pest = buildVimPlugin {
|
||||
pname = "neotest-pest";
|
||||
version = "2024-02-16";
|
||||
version = "2024-03-04";
|
||||
src = fetchFromGitHub {
|
||||
owner = "theutz";
|
||||
owner = "V13Axel";
|
||||
repo = "neotest-pest";
|
||||
rev = "94ed941af4ea6e7d0caa4de8afbf966f3cfe35e4";
|
||||
sha256 = "1655rpr007ix9z4nxkabnvdk8c0kj080waxddaq656dhdzdj7l1q";
|
||||
rev = "25501800b5b8da578a03bb178a007d6f8abe7ae3";
|
||||
sha256 = "sha256-S36yvNrg6rroZbySOt9SKrHGSV6HUgRlSPUh79RNZ7M=";
|
||||
};
|
||||
meta.homepage = "https://github.com/theutz/neotest-pest/";
|
||||
meta.homepage = "https://github.com/V13Axel/neotest-pest/";
|
||||
};
|
||||
|
||||
neotest-phpunit = buildVimPlugin {
|
||||
|
@ -555,7 +555,7 @@ https://github.com/jfpedroza/neotest-elixir/,HEAD,
|
||||
https://github.com/nvim-neotest/neotest-go/,HEAD,
|
||||
https://github.com/MrcJkb/neotest-haskell/,HEAD,
|
||||
https://github.com/haydenmeade/neotest-jest/,HEAD,
|
||||
https://github.com/theutz/neotest-pest/,HEAD,
|
||||
https://github.com/V13Axel/neotest-pest/,HEAD,
|
||||
https://github.com/olimorris/neotest-phpunit/,HEAD,
|
||||
https://github.com/nvim-neotest/neotest-plenary/,HEAD,
|
||||
https://github.com/nvim-neotest/neotest-python/,HEAD,
|
||||
|
@ -98,9 +98,9 @@ in mkDerivation rec {
|
||||
wrapGAppsHook
|
||||
wrapQtAppsHook
|
||||
|
||||
bison
|
||||
cmake
|
||||
flex
|
||||
bison
|
||||
ninja
|
||||
];
|
||||
|
||||
|
@ -23,16 +23,18 @@ stdenv.mkDerivation rec {
|
||||
checkTarget = "test";
|
||||
nativeCheckInputs = [ which zstd pbzip2 ];
|
||||
|
||||
sharePath = "$out/share/${pname}";
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
installManPage makeself.1
|
||||
install -Dm555 makeself.sh $out/bin/makeself
|
||||
install -Dm444 -t $out/share/${pname}/ makeself.lsm README.md makeself-header.sh
|
||||
install -Dm444 -t ${sharePath}/ makeself.lsm README.md makeself-header.sh
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
fixupPhase = ''
|
||||
sed -e "s|^HEADER=.*|HEADER=$out/share/${pname}-${version}/makeself-header.sh|" -i $out/bin/makeself
|
||||
sed -e "s|^HEADER=.*|HEADER=${sharePath}/makeself-header.sh|" -i $out/bin/makeself
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -8,13 +8,13 @@
|
||||
buildGoModule rec {
|
||||
pname = "bosh-cli";
|
||||
|
||||
version = "7.5.4";
|
||||
version = "7.5.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cloudfoundry";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-aNzKp7QwyhC/ado0NrCyxrRZu+ePGBNSq31/Iw6k6n0=";
|
||||
sha256 = "sha256-LjqMCkEIl+0psxIys/tvJPkEQqDRzLOsaFUfAVG+RrE=";
|
||||
};
|
||||
vendorHash = null;
|
||||
|
||||
|
@ -15,13 +15,13 @@
|
||||
}:
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "pjsip";
|
||||
version = "2.14";
|
||||
version = "2.14.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = finalAttrs.pname;
|
||||
repo = "pjproject";
|
||||
rev = "refs/tags/${finalAttrs.version}";
|
||||
hash = "sha256-PWCeIvnBAOqbcNYPhIY7hykdvLzoD9lssSViCCPNT68=";
|
||||
hash = "sha256-LDA3o1QMrAxcGuOi/YRoMzXmw/wFkfDs2wweZuIJ2RY=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -8,34 +8,18 @@
|
||||
|
||||
mkDerivation rec {
|
||||
pname = "mythtv";
|
||||
version = "32.0";
|
||||
version = "34.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "MythTV";
|
||||
repo = "mythtv";
|
||||
rev = "v${version}";
|
||||
sha256 = "0i4fs3rbk1jggh62wflpa2l03na9i1ihpz2vsdic9vfahqqjxff1";
|
||||
hash = "sha256-6/TEoyYIRq6pufYzGOmO5DB05JuDo9lqRAYT5N5M/L4=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Disable sourcing /etc/os-release
|
||||
./dont-source-os-release.patch
|
||||
|
||||
# Fix QMake variable substitution syntax - MythTV/mythtv#550
|
||||
(fetchpatch {
|
||||
name = "fix-qmake-var-syntax.patch";
|
||||
url = "https://github.com/MythTV/mythtv/commit/a8da7f7e7ec069164adbef65a8104adc9bb52e36.patch";
|
||||
stripLen = 1;
|
||||
hash = "sha256-JfRME00YNNjl6SKs1HBa0wBa/lR/Rt3zbQtWhsC36JM=";
|
||||
})
|
||||
|
||||
# Bachport the build against binutils-2.41
|
||||
(fetchpatch {
|
||||
name = "binutils-2.41.patch";
|
||||
url = "https://github.com/MythTV/mythtv/commit/f9f9bba62ee2743c816cb2b9634b6b4397e5e2e3.patch";
|
||||
stripLen = 1;
|
||||
hash = "sha256-IcXgBtfqPZ42inYFe7l8mWvKUV13S/YEQAHcOFaDivI=";
|
||||
})
|
||||
];
|
||||
|
||||
setSourceRoot = "sourceRoot=$(echo */mythtv)";
|
||||
|
@ -1,6 +1,6 @@
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -5894,9 +5894,9 @@ else
|
||||
@@ -5451,9 +5451,9 @@ else
|
||||
die "ERROR: cannot find soundtouch 1.8.0 or later."
|
||||
fi
|
||||
|
||||
|
@ -19,12 +19,12 @@
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "vdr-markad";
|
||||
version = "3.4.6";
|
||||
version = "3.4.12";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
repo = "vdr-plugin-markad";
|
||||
owner = "kfb77";
|
||||
sha256 = "sha256-fixkalZAPz0iO1SmshsO0vYc2sksH2lrStsSOEcdZ1g=";
|
||||
sha256 = "sha256-yc/zWMGzsfZl3n+Qt5Se2duo3jwntCWaYq1yACsrPzM=";
|
||||
rev = "V${version}";
|
||||
};
|
||||
|
||||
|
@ -14,12 +14,12 @@
|
||||
}:
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "vdr-softhddevice";
|
||||
version = "2.1.1";
|
||||
version = "2.1.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ua0lnj";
|
||||
repo = "vdr-plugin-softhddevice";
|
||||
sha256 = "sha256-d/Cl0sE4laDdjMhd3xTHcY4OT5tWWCFCvLsNF157+zw=";
|
||||
sha256 = "sha256-y6b0nOf597uxS9zDh0NQOwLN81nk4U7lHK2CalyVi8s=";
|
||||
rev = "v${version}";
|
||||
};
|
||||
|
||||
|
73
pkgs/applications/window-managers/wayfire/firedecor.nix
Normal file
73
pkgs/applications/window-managers/wayfire/firedecor.nix
Normal file
@ -0,0 +1,73 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, meson
|
||||
, ninja
|
||||
, pkg-config
|
||||
, boost
|
||||
, cairo
|
||||
, glib
|
||||
, libGL
|
||||
, libinput
|
||||
, librsvg
|
||||
, libxkbcommon
|
||||
, pango
|
||||
, udev
|
||||
, wayfire
|
||||
, wayland
|
||||
, wf-config
|
||||
, xcbutilwm
|
||||
, mate
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "firedecor";
|
||||
version = "2023-10-23";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mntmn";
|
||||
repo = "Firedecor";
|
||||
rev = finalAttrs.version;
|
||||
hash = "sha256-7or8HkmIZnLpXEZzUhJ3u8SIPfIQFgn32Ju/5OzK06Y=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
boost
|
||||
cairo
|
||||
glib
|
||||
libGL
|
||||
libinput
|
||||
librsvg
|
||||
libxkbcommon
|
||||
pango
|
||||
udev
|
||||
wayfire
|
||||
wayland
|
||||
wf-config
|
||||
xcbutilwm
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/firedecor-theme.cpp \
|
||||
--replace-fail "/usr/share" "/run/current-system/sw/share"
|
||||
'';
|
||||
|
||||
env = {
|
||||
PKG_CONFIG_WAYFIRE_PLUGINDIR = "${placeholder "out"}/lib/wayfire";
|
||||
PKG_CONFIG_WAYFIRE_METADATADIR = "${placeholder "out"}/share/wayfire/metadata";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/mntmn/Firedecor";
|
||||
description = "Advanced window decoration plugin for the Wayfire window manager";
|
||||
license = licenses.mit;
|
||||
inherit (mate.mate-wayland-session.meta) maintainers;
|
||||
inherit (wayfire.meta) platforms;
|
||||
};
|
||||
})
|
@ -4,6 +4,7 @@ lib.makeScope pkgs.newScope (self:
|
||||
let
|
||||
inherit (self) callPackage;
|
||||
in {
|
||||
firedecor = callPackage ./firedecor.nix { };
|
||||
wayfire-plugins-extra = callPackage ./wayfire-plugins-extra.nix { };
|
||||
wcm = callPackage ./wcm.nix { };
|
||||
wf-shell = callPackage ./wf-shell.nix { };
|
||||
|
@ -44,13 +44,13 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cockpit";
|
||||
version = "312";
|
||||
version = "313";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cockpit-project";
|
||||
repo = "cockpit";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-X3IsUaqXlg/SlqHo9jK+hONY/6LAIAfRO9rAwCQcq64=";
|
||||
hash = "sha256-k/JbvotOcVs2OXwGOrnjY0xYRRgvk61p0o7VQTTPqz4=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
@ -1,8 +1,9 @@
|
||||
{ lib
|
||||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, installShellFiles
|
||||
, nix-update-script
|
||||
{
|
||||
lib,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
installShellFiles,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
@ -18,17 +19,15 @@ rustPlatform.buildRustPackage rec {
|
||||
|
||||
cargoHash = "sha256-hgcGzRLB1L3yxJjw1ECDJPmbl1W+2OS4KDojclyVYrc=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
];
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
postInstall = ''
|
||||
installManPage target/man/hyprdim.1
|
||||
|
||||
installShellCompletion --cmd hyprdim \
|
||||
--bash <(cat target/completions/hyprdim.bash) \
|
||||
--fish <(cat target/completions/hyprdim.fish) \
|
||||
--zsh <(cat target/completions/_hyprdim)
|
||||
--bash target/completions/hyprdim.bash \
|
||||
--fish target/completions/hyprdim.fish \
|
||||
--zsh target/completions/_hyprdim
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
@ -1,8 +1,9 @@
|
||||
{ lib
|
||||
, rustPlatform
|
||||
, fetchFromGitHub
|
||||
, installShellFiles
|
||||
, nix-update-script
|
||||
{
|
||||
lib,
|
||||
rustPlatform,
|
||||
fetchFromGitHub,
|
||||
installShellFiles,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
@ -18,17 +19,15 @@ rustPlatform.buildRustPackage rec {
|
||||
|
||||
cargoHash = "sha256-DpbRs97sr5wpJSrYF99ZiQ0SZOZdoQjfaLhKIAU95HA=";
|
||||
|
||||
nativeBuildInputs = [
|
||||
installShellFiles
|
||||
];
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
postInstall = ''
|
||||
installManPage target/man/hyprnome.1
|
||||
|
||||
installShellCompletion --cmd hyprnome \
|
||||
--bash <(cat target/completions/hyprnome.bash) \
|
||||
--fish <(cat target/completions/hyprnome.fish) \
|
||||
--zsh <(cat target/completions/_hyprnome)
|
||||
--bash target/completions/hyprnome.bash \
|
||||
--fish target/completions/hyprnome.fish \
|
||||
--zsh target/completions/_hyprnome
|
||||
'';
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
232
pkgs/by-name/my/mycelium/Cargo.lock
generated
232
pkgs/by-name/my/mycelium/Cargo.lock
generated
@ -146,18 +146,19 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
|
||||
|
||||
[[package]]
|
||||
name = "axum"
|
||||
version = "0.6.20"
|
||||
version = "0.7.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf"
|
||||
checksum = "1236b4b292f6c4d6dc34604bb5120d85c3fe1d1aa596bd5cc52ca054d13e7b9e"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"axum-core",
|
||||
"bitflags 1.3.2",
|
||||
"bytes",
|
||||
"futures-util",
|
||||
"http",
|
||||
"http-body",
|
||||
"hyper",
|
||||
"http 1.1.0",
|
||||
"http-body 1.0.0",
|
||||
"http-body-util",
|
||||
"hyper 1.2.0",
|
||||
"hyper-util",
|
||||
"itoa",
|
||||
"matchit",
|
||||
"memchr",
|
||||
@ -178,17 +179,20 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "axum-core"
|
||||
version = "0.3.4"
|
||||
version = "0.4.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c"
|
||||
checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"bytes",
|
||||
"futures-util",
|
||||
"http",
|
||||
"http-body",
|
||||
"http 1.1.0",
|
||||
"http-body 1.0.0",
|
||||
"http-body-util",
|
||||
"mime",
|
||||
"pin-project-lite",
|
||||
"rustversion",
|
||||
"sync_wrapper",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
]
|
||||
@ -310,6 +314,12 @@ version = "1.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
|
||||
[[package]]
|
||||
name = "cfg_aliases"
|
||||
version = "0.1.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
|
||||
|
||||
[[package]]
|
||||
name = "cipher"
|
||||
version = "0.4.4"
|
||||
@ -504,9 +514,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "etherparse"
|
||||
version = "0.13.0"
|
||||
version = "0.14.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "827292ea592108849932ad8e30218f8b1f21c0dfd0696698a18b5d0aed62d990"
|
||||
checksum = "24890603eb4b43aa788f02261ce21714449033e3e2ab93692f0ab18480c3c9b1"
|
||||
dependencies = [
|
||||
"arrayvec",
|
||||
]
|
||||
@ -691,7 +701,26 @@ dependencies = [
|
||||
"futures-core",
|
||||
"futures-sink",
|
||||
"futures-util",
|
||||
"http",
|
||||
"http 0.2.11",
|
||||
"indexmap",
|
||||
"slab",
|
||||
"tokio",
|
||||
"tokio-util",
|
||||
"tracing",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "h2"
|
||||
version = "0.4.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "31d030e59af851932b72ceebadf4a2b5986dba4c3b99dd2493f8273a0f151943"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"fnv",
|
||||
"futures-core",
|
||||
"futures-sink",
|
||||
"futures-util",
|
||||
"http 1.1.0",
|
||||
"indexmap",
|
||||
"slab",
|
||||
"tokio",
|
||||
@ -728,6 +757,17 @@ dependencies = [
|
||||
"itoa",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "http"
|
||||
version = "1.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"fnv",
|
||||
"itoa",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "http-body"
|
||||
version = "0.4.6"
|
||||
@ -735,7 +775,30 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"http",
|
||||
"http 0.2.11",
|
||||
"pin-project-lite",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "http-body"
|
||||
version = "1.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"http 1.1.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "http-body-util"
|
||||
version = "0.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "41cb79eb393015dadd30fc252023adb0b2400a0caee0fa2a077e6e21a551e840"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"futures-util",
|
||||
"http 1.1.0",
|
||||
"http-body 1.0.0",
|
||||
"pin-project-lite",
|
||||
]
|
||||
|
||||
@ -767,9 +830,9 @@ dependencies = [
|
||||
"futures-channel",
|
||||
"futures-core",
|
||||
"futures-util",
|
||||
"h2",
|
||||
"http",
|
||||
"http-body",
|
||||
"h2 0.3.24",
|
||||
"http 0.2.11",
|
||||
"http-body 0.4.6",
|
||||
"httparse",
|
||||
"httpdate",
|
||||
"itoa",
|
||||
@ -782,17 +845,39 @@ dependencies = [
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "hyper-rustls"
|
||||
version = "0.24.2"
|
||||
name = "hyper"
|
||||
version = "1.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590"
|
||||
checksum = "186548d73ac615b32a73aafe38fb4f56c0d340e110e5a200bcadbaf2e199263a"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"futures-channel",
|
||||
"futures-util",
|
||||
"http",
|
||||
"hyper",
|
||||
"rustls",
|
||||
"h2 0.4.2",
|
||||
"http 1.1.0",
|
||||
"http-body 1.0.0",
|
||||
"httparse",
|
||||
"httpdate",
|
||||
"itoa",
|
||||
"pin-project-lite",
|
||||
"smallvec",
|
||||
"tokio",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "hyper-util"
|
||||
version = "0.1.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ca38ef113da30126bbff9cd1705f9273e15d45498615d138b0c20279ac7a76aa"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"futures-util",
|
||||
"http 1.1.0",
|
||||
"http-body 1.0.0",
|
||||
"hyper 1.2.0",
|
||||
"pin-project-lite",
|
||||
"socket2",
|
||||
"tokio",
|
||||
"tokio-rustls",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -886,9 +971,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "libc"
|
||||
version = "0.2.152"
|
||||
version = "0.2.153"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "13e3bf6590cbc649f4d1a3eefc9d5d6eb746f5200ffb04e5e142700b8faa56e7"
|
||||
checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd"
|
||||
|
||||
[[package]]
|
||||
name = "libloading"
|
||||
@ -908,9 +993,9 @@ checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c"
|
||||
|
||||
[[package]]
|
||||
name = "log"
|
||||
version = "0.4.20"
|
||||
version = "0.4.21"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f"
|
||||
checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
|
||||
|
||||
[[package]]
|
||||
name = "loom"
|
||||
@ -972,9 +1057,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "mio"
|
||||
version = "0.8.10"
|
||||
version = "0.8.11"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09"
|
||||
checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"wasi",
|
||||
@ -983,7 +1068,7 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "mycelium"
|
||||
version = "0.4.2"
|
||||
version = "0.4.3"
|
||||
dependencies = [
|
||||
"aes-gcm",
|
||||
"axum",
|
||||
@ -1002,7 +1087,7 @@ dependencies = [
|
||||
"libc",
|
||||
"log",
|
||||
"network-interface",
|
||||
"nix 0.27.1",
|
||||
"nix 0.28.0",
|
||||
"pretty_env_logger",
|
||||
"quinn",
|
||||
"rand",
|
||||
@ -1119,6 +1204,18 @@ dependencies = [
|
||||
"bitflags 2.4.2",
|
||||
"cfg-if",
|
||||
"libc",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "nix"
|
||||
version = "0.28.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ab2156c4fce2f8df6c499cc1c763e4394b7482525bf2a9701c9d79d215f519e4"
|
||||
dependencies = [
|
||||
"bitflags 2.4.2",
|
||||
"cfg-if",
|
||||
"cfg_aliases",
|
||||
"libc",
|
||||
"memoffset",
|
||||
]
|
||||
|
||||
@ -1360,9 +1457,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "rcgen"
|
||||
version = "0.12.0"
|
||||
version = "0.12.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5d918c80c5a4c7560db726763020bd16db179e4d5b828078842274a443addb5d"
|
||||
checksum = "48406db8ac1f3cbc7dcdb56ec355343817958a356ff430259bb07baf7607e1e1"
|
||||
dependencies = [
|
||||
"pem",
|
||||
"ring 0.17.7",
|
||||
@ -1425,11 +1522,10 @@ dependencies = [
|
||||
"encoding_rs",
|
||||
"futures-core",
|
||||
"futures-util",
|
||||
"h2",
|
||||
"http",
|
||||
"http-body",
|
||||
"hyper",
|
||||
"hyper-rustls",
|
||||
"h2 0.3.24",
|
||||
"http 0.2.11",
|
||||
"http-body 0.4.6",
|
||||
"hyper 0.14.28",
|
||||
"ipnet",
|
||||
"js-sys",
|
||||
"log",
|
||||
@ -1437,20 +1533,16 @@ dependencies = [
|
||||
"once_cell",
|
||||
"percent-encoding",
|
||||
"pin-project-lite",
|
||||
"rustls",
|
||||
"rustls-pemfile",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"serde_urlencoded",
|
||||
"system-configuration",
|
||||
"tokio",
|
||||
"tokio-rustls",
|
||||
"tower-service",
|
||||
"url",
|
||||
"wasm-bindgen",
|
||||
"wasm-bindgen-futures",
|
||||
"web-sys",
|
||||
"webpki-roots",
|
||||
"winreg",
|
||||
]
|
||||
|
||||
@ -1541,21 +1633,11 @@ version = "0.21.10"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba"
|
||||
dependencies = [
|
||||
"log",
|
||||
"ring 0.17.7",
|
||||
"rustls-webpki",
|
||||
"sct",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rustls-pemfile"
|
||||
version = "1.0.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
|
||||
dependencies = [
|
||||
"base64",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rustls-webpki"
|
||||
version = "0.101.7"
|
||||
@ -1602,18 +1684,18 @@ checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0"
|
||||
|
||||
[[package]]
|
||||
name = "serde"
|
||||
version = "1.0.195"
|
||||
version = "1.0.197"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02"
|
||||
checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2"
|
||||
dependencies = [
|
||||
"serde_derive",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "serde_derive"
|
||||
version = "1.0.195"
|
||||
version = "1.0.197"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c"
|
||||
checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
@ -1622,9 +1704,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "serde_json"
|
||||
version = "1.0.111"
|
||||
version = "1.0.114"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "176e46fa42316f18edd598015a5166857fc835ec732f5215eac6b7bdbf0a84f4"
|
||||
checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0"
|
||||
dependencies = [
|
||||
"itoa",
|
||||
"ryu",
|
||||
@ -1879,16 +1961,6 @@ dependencies = [
|
||||
"syn 2.0.48",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tokio-rustls"
|
||||
version = "0.24.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081"
|
||||
dependencies = [
|
||||
"rustls",
|
||||
"tokio",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tokio-stream"
|
||||
version = "0.1.14"
|
||||
@ -1929,9 +2001,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "toml"
|
||||
version = "0.7.8"
|
||||
version = "0.8.10"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257"
|
||||
checksum = "9a9aad4a3066010876e8dcf5a8a06e70a558751117a145c6ce2b82c2e2054290"
|
||||
dependencies = [
|
||||
"serde",
|
||||
"serde_spanned",
|
||||
@ -1950,9 +2022,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "toml_edit"
|
||||
version = "0.19.15"
|
||||
version = "0.22.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421"
|
||||
checksum = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6"
|
||||
dependencies = [
|
||||
"indexmap",
|
||||
"serde",
|
||||
@ -2241,12 +2313,6 @@ dependencies = [
|
||||
"wasm-bindgen",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "webpki-roots"
|
||||
version = "0.25.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10"
|
||||
|
||||
[[package]]
|
||||
name = "winapi"
|
||||
version = "0.3.9"
|
||||
@ -2459,9 +2525,9 @@ checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04"
|
||||
|
||||
[[package]]
|
||||
name = "winnow"
|
||||
version = "0.5.34"
|
||||
version = "0.6.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b7cf47b659b318dccbd69cc4797a39ae128f533dce7902a1096044d1967b9c16"
|
||||
checksum = "dffa400e67ed5a4dd237983829e66475f0a4a26938c4b04c21baede6262215b8"
|
||||
dependencies = [
|
||||
"memchr",
|
||||
]
|
||||
@ -2504,9 +2570,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "x25519-dalek"
|
||||
version = "2.0.0"
|
||||
version = "2.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fb66477291e7e8d2b0ff1bcb900bf29489a9692816d79874bea351e7a8b6de96"
|
||||
checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277"
|
||||
dependencies = [
|
||||
"curve25519-dalek",
|
||||
"rand_core",
|
||||
|
@ -7,13 +7,13 @@
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "mycelium";
|
||||
version = "0.4.2";
|
||||
version = "0.4.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "threefoldtech";
|
||||
repo = "mycelium";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-VWrWg9UpBSug0cvY/zuzGFI6Y0CRFcrh1Cy4mbYtg9Q=";
|
||||
hash = "sha256-bA3ci+vqXBCPBaxMvfUdFcqdaZbAw/+r5UbH/as/fnc=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
@ -33,7 +33,7 @@ rustPlatform.buildRustPackage rec {
|
||||
homepage = "https://github.com/threefoldtech/mycelium";
|
||||
changelog = "https://github.com/threefoldtech/mycelium/blob/${src.rev}/CHANGELOG.md";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ matthewcroughan ];
|
||||
maintainers = with maintainers; [ flokli matthewcroughan ];
|
||||
mainProgram = "mycelium";
|
||||
};
|
||||
}
|
||||
|
264
pkgs/by-name/pr/pretix/package.nix
Normal file
264
pkgs/by-name/pr/pretix/package.nix
Normal file
@ -0,0 +1,264 @@
|
||||
{ lib
|
||||
, buildNpmPackage
|
||||
, fetchFromGitHub
|
||||
, fetchPypi
|
||||
, fetchpatch2
|
||||
, nodejs
|
||||
, python3
|
||||
, gettext
|
||||
, nixosTests
|
||||
, plugins ? [ ]
|
||||
}:
|
||||
|
||||
let
|
||||
python = python3.override {
|
||||
packageOverrides = self: super: {
|
||||
django = super.django_4;
|
||||
|
||||
stripe = super.stripe.overridePythonAttrs rec {
|
||||
version = "7.9.0";
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "stripe";
|
||||
inherit version;
|
||||
hash = "sha256-hOXkMINaSwzU/SpXzjhTJp0ds0OREc2mtu11LjSc9KE=";
|
||||
};
|
||||
};
|
||||
|
||||
pretix-plugin-build = self.callPackage ./plugin-build.nix { };
|
||||
};
|
||||
};
|
||||
|
||||
pname = "pretix";
|
||||
version = "2024.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pretix";
|
||||
repo = "pretix";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-emtF5dDXEXN8GIucHbjF+m9Vkg1Jj6nmQdHhBOkXMAs=";
|
||||
};
|
||||
|
||||
npmDeps = buildNpmPackage {
|
||||
pname = "pretix-node-modules";
|
||||
inherit version src;
|
||||
|
||||
sourceRoot = "${src.name}/src/pretix/static/npm_dir";
|
||||
npmDepsHash = "sha256-kE13dcTdWZZNHPMcHEiK0a2dEcu3Z3/q815YhaVkLbQ=";
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir $out
|
||||
cp -R node_modules $out/
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
in
|
||||
python.pkgs.buildPythonApplication rec {
|
||||
inherit pname version src;
|
||||
pyproject = true;
|
||||
|
||||
patches = [
|
||||
# Discover pretix.plugin entrypoints during build and add them into
|
||||
# INSTALLED_APPS, so that their static files are collected.
|
||||
./plugin-build.patch
|
||||
|
||||
(fetchpatch2 {
|
||||
# Allow customization of cache and log directory
|
||||
# https://github.com/pretix/pretix/pull/3997
|
||||
name = "pretix-directory-customization.patch";
|
||||
url = "https://github.com/pretix/pretix/commit/e151d1d1f08917e547df49da0779b36bb73b7294.patch";
|
||||
hash = "sha256-lO5eCKSqUaCwSm7rouMTFMwauWl9Tz/Yf0JE/IO+bnI=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
NODE_PREFIX=src/pretix/static.dist/node_prefix
|
||||
mkdir -p $NODE_PREFIX
|
||||
cp -R ${npmDeps}/node_modules $NODE_PREFIX/
|
||||
chmod -R u+w $NODE_PREFIX/
|
||||
|
||||
# unused
|
||||
sed -i "/setuptools-rust/d" pyproject.toml
|
||||
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail phonenumberslite phonenumbers \
|
||||
--replace-fail psycopg2-binary psycopg2 \
|
||||
--replace-fail vat_moss_forked==2020.3.20.0.11.0 vat-moss \
|
||||
--replace-fail "bleach==5.0.*" bleach \
|
||||
--replace-fail "dnspython==2.5.*" dnspython \
|
||||
--replace-fail "importlib_metadata==7.*" importlib_metadata \
|
||||
--replace-fail "protobuf==4.25.*" protobuf \
|
||||
--replace-fail "pycryptodome==3.20.*" pycryptodome \
|
||||
--replace-fail "pypdf==3.9.*" pypdf \
|
||||
--replace-fail "python-dateutil==2.8.*" python-dateutil \
|
||||
--replace-fail "sentry-sdk==1.40.*" sentry-sdk \
|
||||
--replace-fail "stripe==7.9.*" stripe
|
||||
'';
|
||||
|
||||
build-system = with python.pkgs; [
|
||||
gettext
|
||||
nodejs
|
||||
pythonRelaxDepsHook
|
||||
setuptools
|
||||
tomli
|
||||
];
|
||||
|
||||
dependencies = with python.pkgs; [
|
||||
arabic-reshaper
|
||||
babel
|
||||
beautifulsoup4
|
||||
bleach
|
||||
celery
|
||||
chardet
|
||||
cryptography
|
||||
css-inline
|
||||
defusedcsv
|
||||
dj-static
|
||||
django
|
||||
django-bootstrap3
|
||||
django-compressor
|
||||
django-countries
|
||||
django-filter
|
||||
django-formset-js-improved
|
||||
django-formtools
|
||||
django-hierarkey
|
||||
django-hijack
|
||||
django-i18nfield
|
||||
django-libsass
|
||||
django-localflavor
|
||||
django-markup
|
||||
django-oauth-toolkit
|
||||
django-otp
|
||||
django-phonenumber-field
|
||||
django-redis
|
||||
django-scopes
|
||||
django-statici18n
|
||||
djangorestframework
|
||||
dnspython
|
||||
drf-ujson2
|
||||
geoip2
|
||||
importlib-metadata
|
||||
isoweek
|
||||
jsonschema
|
||||
kombu
|
||||
libsass
|
||||
lxml
|
||||
markdown
|
||||
mt-940
|
||||
oauthlib
|
||||
openpyxl
|
||||
packaging
|
||||
paypalrestsdk
|
||||
paypal-checkout-serversdk
|
||||
pyjwt
|
||||
phonenumbers
|
||||
pillow
|
||||
pretix-plugin-build
|
||||
protobuf
|
||||
psycopg2
|
||||
pycountry
|
||||
pycparser
|
||||
pycryptodome
|
||||
pypdf
|
||||
python-bidi
|
||||
python-dateutil
|
||||
pytz
|
||||
pytz-deprecation-shim
|
||||
pyuca
|
||||
qrcode
|
||||
redis
|
||||
reportlab
|
||||
requests
|
||||
sentry-sdk
|
||||
sepaxml
|
||||
slimit
|
||||
static3
|
||||
stripe
|
||||
text-unidecode
|
||||
tlds
|
||||
tqdm
|
||||
vat-moss
|
||||
vobject
|
||||
webauthn
|
||||
zeep
|
||||
] ++ plugins;
|
||||
|
||||
optional-dependencies = with python.pkgs; {
|
||||
memcached = [
|
||||
pylibmc
|
||||
];
|
||||
};
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/bin
|
||||
cp ./src/manage.py $out/bin/pretix-manage
|
||||
|
||||
# Trim packages size
|
||||
rm -rfv $out/${python.sitePackages}/pretix/static.dist/node_prefix
|
||||
'';
|
||||
|
||||
dontStrip = true; # no binaries
|
||||
|
||||
nativeCheckInputs = with python.pkgs; [
|
||||
pytestCheckHook
|
||||
pytest-xdist
|
||||
pytest-mock
|
||||
pytest-django
|
||||
pytest-asyncio
|
||||
pytest-rerunfailures
|
||||
freezegun
|
||||
fakeredis
|
||||
responses
|
||||
] ++ lib.flatten (lib.attrValues optional-dependencies);
|
||||
|
||||
pytestFlagsArray = [
|
||||
"--reruns" "3"
|
||||
|
||||
# tests fail when run before 4:30am
|
||||
# https://github.com/pretix/pretix/pull/3987
|
||||
"--deselect=src/tests/base/test_orders.py::PaymentReminderTests::test_sent_days"
|
||||
"--deselect=src/tests/plugins/sendmail/test_rules.py::test_sendmail_rule_specified_subevent"
|
||||
];
|
||||
|
||||
preCheck = ''
|
||||
export PYTHONPATH=$(pwd)/src:$PYTHONPATH
|
||||
export DJANGO_SETTINGS_MODULE=tests.settings
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
inherit
|
||||
npmDeps
|
||||
python
|
||||
;
|
||||
plugins = lib.recurseIntoAttrs
|
||||
(python.pkgs.callPackage ./plugins {
|
||||
inherit (python.pkgs) callPackage;
|
||||
}
|
||||
);
|
||||
tests = {
|
||||
inherit (nixosTests) pretix;
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Ticketing software that cares about your event—all the way";
|
||||
homepage = "https://github.com/pretix/pretix";
|
||||
license = with licenses; [
|
||||
agpl3Only
|
||||
# 3rd party components below src/pretix/static
|
||||
bsd2
|
||||
isc
|
||||
mit
|
||||
ofl # fontawesome
|
||||
unlicense
|
||||
# all other files below src/pretix/static and src/pretix/locale and aux scripts
|
||||
asl20
|
||||
];
|
||||
maintainers = with maintainers; [ hexa ];
|
||||
};
|
||||
}
|
37
pkgs/by-name/pr/pretix/plugin-build.nix
Normal file
37
pkgs/by-name/pr/pretix/plugin-build.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchPypi,
|
||||
setuptools,
|
||||
django,
|
||||
gettext,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pretix-plugin-build";
|
||||
version = "1.0.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-iLbqcCAbeK4PyLXiebpdE27rt6bOP7eXczIG2bdvvYo=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
django
|
||||
gettext
|
||||
];
|
||||
|
||||
doCheck = false; # no tests
|
||||
|
||||
meta = with lib; {
|
||||
description = "";
|
||||
homepage = "https://github.com/pretix/pretix-plugin-build";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ hexa ];
|
||||
};
|
||||
}
|
20
pkgs/by-name/pr/pretix/plugin-build.patch
Normal file
20
pkgs/by-name/pr/pretix/plugin-build.patch
Normal file
@ -0,0 +1,20 @@
|
||||
diff --git a/src/pretix/_build_settings.py b/src/pretix/_build_settings.py
|
||||
index c03f56a1a..d1ea73b84 100644
|
||||
--- a/src/pretix/_build_settings.py
|
||||
+++ b/src/pretix/_build_settings.py
|
||||
@@ -24,6 +24,8 @@
|
||||
This file contains settings that we need at wheel require time. All settings that we only need at runtime are set
|
||||
in settings.py.
|
||||
"""
|
||||
+from importlib_metadata import entry_points
|
||||
+
|
||||
from ._base_settings import * # NOQA
|
||||
|
||||
ENTROPY = {
|
||||
@@ -47,3 +49,6 @@ HAS_MEMCACHED = False
|
||||
HAS_CELERY = False
|
||||
HAS_GEOIP = False
|
||||
SENTRY_ENABLED = False
|
||||
+
|
||||
+for entry_point in entry_points(group='pretix.plugin'):
|
||||
+ INSTALLED_APPS.append(entry_point.module) # noqa: F405
|
13
pkgs/by-name/pr/pretix/plugins/default.nix
Normal file
13
pkgs/by-name/pr/pretix/plugins/default.nix
Normal file
@ -0,0 +1,13 @@
|
||||
{ callPackage
|
||||
, ...
|
||||
}:
|
||||
|
||||
{
|
||||
pages = callPackage ./pages.nix { };
|
||||
|
||||
passbook = callPackage ./passbook.nix { };
|
||||
|
||||
reluctant-stripe = callPackage ./reluctant-stripe.nix { };
|
||||
|
||||
stretchgoals = callPackage ./stretchgoals.nix { };
|
||||
}
|
37
pkgs/by-name/pr/pretix/plugins/pages.nix
Normal file
37
pkgs/by-name/pr/pretix/plugins/pages.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, pretix-plugin-build
|
||||
, setuptools
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pretix-pages";
|
||||
version = "1.6.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pretix";
|
||||
repo = "pretix-pages";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-cO5tAiOifLpqFEQwYgrGoByUecpzvue8YmChpPwm+y0=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
pretix-plugin-build
|
||||
setuptools
|
||||
];
|
||||
|
||||
doCheck = false; # no tests
|
||||
|
||||
pythonImportsCheck = [
|
||||
"pretix_pages"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Plugin to add static pages to your pretix event";
|
||||
homepage = "https://github.com/pretix/pretix-pages";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ hexa ];
|
||||
};
|
||||
}
|
33
pkgs/by-name/pr/pretix/plugins/passbook-openssl.patch
Normal file
33
pkgs/by-name/pr/pretix/plugins/passbook-openssl.patch
Normal file
@ -0,0 +1,33 @@
|
||||
diff --git a/pretix_passbook/apps.py b/pretix_passbook/apps.py
|
||||
index e34eee1..a7ad382 100644
|
||||
--- a/pretix_passbook/apps.py
|
||||
+++ b/pretix_passbook/apps.py
|
||||
@@ -22,15 +22,6 @@ class PassbookApp(AppConfig):
|
||||
def ready(self):
|
||||
from . import signals # NOQA
|
||||
|
||||
- @cached_property
|
||||
- def compatibility_errors(self):
|
||||
- import shutil
|
||||
-
|
||||
- errs = []
|
||||
- if not shutil.which("openssl"):
|
||||
- errs.append("The OpenSSL binary is not installed or not in the PATH.")
|
||||
- return errs
|
||||
-
|
||||
@cached_property
|
||||
def compatibility_warnings(self):
|
||||
errs = []
|
||||
diff --git a/pretix_passbook/forms.py b/pretix_passbook/forms.py
|
||||
index 2a38604..aec38de 100644
|
||||
--- a/pretix_passbook/forms.py
|
||||
+++ b/pretix_passbook/forms.py
|
||||
@@ -41,7 +41,7 @@ class CertificateFileField(forms.FileField):
|
||||
return SimpleUploadedFile("cert.pem", content, "text/plain")
|
||||
|
||||
openssl_cmd = [
|
||||
- "openssl",
|
||||
+ "@openssl@",
|
||||
"x509",
|
||||
"-inform",
|
||||
"DER",
|
59
pkgs/by-name/pr/pretix/plugins/passbook.nix
Normal file
59
pkgs/by-name/pr/pretix/plugins/passbook.nix
Normal file
@ -0,0 +1,59 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, substituteAll
|
||||
|
||||
# build-system
|
||||
, pretix-plugin-build
|
||||
, setuptools
|
||||
|
||||
# runtime
|
||||
, openssl
|
||||
|
||||
# dependencies
|
||||
, googlemaps
|
||||
, wallet-py3k
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pretix-passbook";
|
||||
version = "1.13.1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pretix";
|
||||
repo = "pretix-passbook";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-bp64wCEMon05JhOaDr/cVbqUxc+7ndcsSuSesxJt8GE=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./passbook-openssl.patch;
|
||||
openssl = lib.getExe openssl;
|
||||
})
|
||||
];
|
||||
|
||||
build-system = [
|
||||
pretix-plugin-build
|
||||
setuptools
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
googlemaps
|
||||
wallet-py3k
|
||||
];
|
||||
|
||||
doCheck = false; # no tests
|
||||
|
||||
pythonImportsCheck = [
|
||||
"pretix_passbook"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Support for Apple Wallet/Passbook files in pretix";
|
||||
homepage = "https://github.com/pretix/pretix-passbook";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ hexa ];
|
||||
};
|
||||
}
|
37
pkgs/by-name/pr/pretix/plugins/reluctant-stripe.nix
Normal file
37
pkgs/by-name/pr/pretix/plugins/reluctant-stripe.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, pretix-plugin-build
|
||||
, setuptools
|
||||
}:
|
||||
|
||||
buildPythonPackage {
|
||||
pname = "pretix-reluctant-stripe";
|
||||
version = "unstable-2023-08-03";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "metarheinmain";
|
||||
repo = "pretix-reluctant-stripe";
|
||||
rev = "ae2d770442553e5fc00815ff4521a8fd2c113fd9";
|
||||
hash = "sha256-bw9aDMxl4/uar5KHjj+wwkYkaGMRxHWY/c1N75bxu0o=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
pretix-plugin-build
|
||||
setuptools
|
||||
];
|
||||
|
||||
doCheck = false; # no tests
|
||||
|
||||
pythonImportsCheck = [
|
||||
"pretix_reluctant_stripe"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Nudge users to not use Stripe as a payment provider";
|
||||
homepage = "https://github.com/metarheinmain/pretix-reluctant-stripe";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ hexa ];
|
||||
};
|
||||
}
|
37
pkgs/by-name/pr/pretix/plugins/stretchgoals.nix
Normal file
37
pkgs/by-name/pr/pretix/plugins/stretchgoals.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, pretix-plugin-build
|
||||
, setuptools
|
||||
}:
|
||||
|
||||
buildPythonPackage {
|
||||
pname = "pretix-avgchart";
|
||||
version = "unstable-2023-11-27";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rixx";
|
||||
repo = "pretix-avgchart";
|
||||
rev = "219816c7ec523a5c23778523b2616ac0c835cb3a";
|
||||
hash = "sha256-1V/0PUvStgQeBQ0v6GoofAgyPmWs3RD+v5ekmAO9vFU=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
pretix-plugin-build
|
||||
setuptools
|
||||
];
|
||||
|
||||
doCheck = false; # no tests
|
||||
|
||||
pythonImportsCheck = [
|
||||
"pretix_stretchgoals"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Display the average ticket sales price over time";
|
||||
homepage = "https://github.com/rixx/pretix-avgchart";
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ hexa ];
|
||||
};
|
||||
}
|
@ -6,14 +6,14 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication {
|
||||
pname = "renode-dts2repl";
|
||||
version = "unstable-2024-02-29";
|
||||
version = "unstable-2024-03-12";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "antmicro";
|
||||
repo = "dts2repl";
|
||||
rev = "a53f2f01039a462bdd7322d1fb315edd95033b6d";
|
||||
hash = "sha256-DsHNS9pZu3ZWM3teG3pUi0EM+8znmCPTSGuzGmJ4IgU=";
|
||||
rev = "eff98d616e3541e54ca783c84f598c9e348a76a8";
|
||||
hash = "sha256-qNHj5WOSca04ceGeRNa60M6cH9/rRHLEF1YX75yYDO8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -6,18 +6,18 @@
|
||||
, withNativeLibs ? false
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage {
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "wl-clipboard-rs";
|
||||
version = "0.8.0-unstable-2023-11-27";
|
||||
version = "0.8.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "YaLTeR";
|
||||
repo = "wl-clipboard-rs";
|
||||
rev = "be851408e0f91edffdc2f1a76805035847f9f8a9";
|
||||
hash = "sha256-OfLn7izG1KSUjdd2gO4aaSCDlcaWoFiFmgwwhR1hRsQ=";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-tNmpGBg21IuhKEzY15O2MKVpMB+eCjvRVwVUahADuJU=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-rYFCPyWTUhyrEcoRM8I+iX7IaY/6i1tBVjhs47m3XY8=";
|
||||
cargoHash = "sha256-0Ix+fF1QO1KU8FIOb8EV4iYXe4S69sZOxCdxYccL8m0=";
|
||||
|
||||
cargoBuildFlags = [
|
||||
"--package=wl-clipboard-rs"
|
||||
@ -47,14 +47,13 @@ rustPlatform.buildRustPackage {
|
||||
"--skip=tests::copy::copy_test"
|
||||
];
|
||||
|
||||
meta = {
|
||||
meta = with lib; {
|
||||
description = "Command-line copy/paste utilities for Wayland, written in Rust";
|
||||
homepage = "https://github.com/YaLTeR/wl-clipboard-rs";
|
||||
# TODO: add `${version}` once we switch to tagged release
|
||||
changelog = "https://github.com/YaLTeR/wl-clipboard-rs/blob/master/CHANGELOG.md";
|
||||
platforms = lib.platforms.linux;
|
||||
license = with lib.licenses; [ asl20 mit ];
|
||||
changelog = "https://github.com/YaLTeR/wl-clipboard-rs/blob/v${version}/CHANGELOG.md";
|
||||
platforms = platforms.linux;
|
||||
license = with licenses; [ asl20 mit ];
|
||||
mainProgram = "wl-clip";
|
||||
maintainers = with lib.maintainers; [ thiagokokada ];
|
||||
maintainers = with maintainers; [ thiagokokada donovanglover ];
|
||||
};
|
||||
}
|
||||
|
@ -3,16 +3,17 @@
|
||||
, fetchurl
|
||||
, pkg-config
|
||||
, gettext
|
||||
, caja
|
||||
, gtk3
|
||||
, glib
|
||||
, libxml2
|
||||
, libarchive
|
||||
, libsecret
|
||||
, poppler
|
||||
, mate-desktop
|
||||
, itstool
|
||||
, hicolor-icon-theme
|
||||
, texlive
|
||||
, mate
|
||||
, wrapGAppsHook
|
||||
, enableEpub ? true
|
||||
, webkitgtk_4_1
|
||||
@ -28,11 +29,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "atril";
|
||||
version = "1.26.2";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "wwW51fVxP0Jiau4DggkTA0IrPXGlbd1lkyzNsjx86SY=";
|
||||
sha256 = "ztRyX26bccTqY2dr/DzDvgnSnboIqnp6uXlk4LQ1UWI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -42,6 +43,7 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
caja
|
||||
gtk3
|
||||
glib
|
||||
itstool
|
||||
@ -49,8 +51,7 @@ stdenv.mkDerivation rec {
|
||||
libsecret
|
||||
libxml2
|
||||
poppler
|
||||
mate.caja
|
||||
mate.mate-desktop
|
||||
mate-desktop
|
||||
hicolor-icon-theme
|
||||
texlive.bin.core # for synctex, used by the pdf back-end
|
||||
]
|
||||
|
@ -5,8 +5,8 @@
|
||||
, pkg-config
|
||||
, gobject-introspection
|
||||
, gdk-pixbuf
|
||||
, caja
|
||||
, gtk3
|
||||
, mate
|
||||
, python3
|
||||
, dropbox
|
||||
, mateUpdateScript
|
||||
@ -17,11 +17,11 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "caja-dropbox";
|
||||
version = "1.26.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "16w4r0zjps12lmzwiwpb9qnmbvd0p391q97296sxa8k88b1x14wn";
|
||||
sha256 = "t0w4qZQlS9PPfLxxK8LsdRagypQqpleFJs29aqYgGWM=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@ -44,8 +44,8 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
caja
|
||||
gtk3
|
||||
mate.caja
|
||||
python3
|
||||
];
|
||||
|
||||
|
@ -3,23 +3,24 @@
|
||||
, fetchurl
|
||||
, pkg-config
|
||||
, gettext
|
||||
, caja
|
||||
, glib
|
||||
, gst_all_1
|
||||
, gtk3
|
||||
, gupnp
|
||||
, mate
|
||||
, imagemagick
|
||||
, mate-desktop
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
, glib
|
||||
, substituteAll
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "caja-extensions";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "WJwZ4/oQJC1iOaXMuVhVmENqVuvpTS6ypQtZUMzh1SA=";
|
||||
sha256 = "0phsXgdAg1/icc+9WCPu6vAyka8XYyA/RwCruBCeMXU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -29,31 +30,20 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
caja
|
||||
glib
|
||||
gst_all_1.gstreamer
|
||||
gst_all_1.gst-plugins-base
|
||||
gst_all_1.gst-plugins-good
|
||||
gtk3
|
||||
gupnp
|
||||
mate.caja
|
||||
mate.mate-desktop
|
||||
imagemagick
|
||||
];
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./hardcode-gsettings.patch;
|
||||
caja_gsetttings_path = glib.getSchemaPath mate.caja;
|
||||
desktop_gsetttings_path = glib.getSchemaPath mate.mate-desktop;
|
||||
})
|
||||
mate-desktop
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace open-terminal/caja-open-terminal.c --subst-var-by \
|
||||
GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"}
|
||||
substituteInPlace sendto/caja-sendto-command.c --subst-var-by \
|
||||
GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"}
|
||||
substituteInPlace wallpaper/caja-wallpaper-extension.c --subst-var-by \
|
||||
GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"}
|
||||
|
||||
for f in image-converter/caja-image-{resizer,rotator}.c; do
|
||||
substituteInPlace $f --replace "/usr/bin/convert" "${imagemagick}/bin/convert"
|
||||
substituteInPlace $f --replace-fail 'argv[0] = "convert"' 'argv[0] = "${imagemagick}/bin/convert"'
|
||||
done
|
||||
'';
|
||||
|
||||
|
@ -1,169 +0,0 @@
|
||||
diff --git a/open-terminal/caja-open-terminal.c b/open-terminal/caja-open-terminal.c
|
||||
index e14a9bf..691afab 100644
|
||||
--- a/open-terminal/caja-open-terminal.c
|
||||
+++ b/open-terminal/caja-open-terminal.c
|
||||
@@ -135,8 +135,18 @@ desktop_opens_home_dir (void)
|
||||
{
|
||||
gboolean result;
|
||||
GSettings* settings;
|
||||
-
|
||||
- settings = g_settings_new (COT_SCHEMA);
|
||||
+ GSettingsSchemaSource* schema_source;
|
||||
+ GSettingsSchema* schema;
|
||||
+
|
||||
+ schema_source = g_settings_schema_source_new_from_directory("@GSETTINGS_PATH@",
|
||||
+ g_settings_schema_source_get_default(),
|
||||
+ TRUE, NULL);
|
||||
+ schema = g_settings_schema_source_lookup(schema_source,
|
||||
+ COT_SCHEMA,
|
||||
+ FALSE);
|
||||
+ settings = g_settings_new_full(schema, NULL, NULL);
|
||||
+ g_settings_schema_source_unref(schema_source);
|
||||
+ g_settings_schema_unref(schema);
|
||||
result = g_settings_get_boolean (settings, COT_DESKTOP_KEY);
|
||||
g_object_unref (settings);
|
||||
return result;
|
||||
@@ -147,8 +157,18 @@ set_desktop_opens_home_dir (gboolean val)
|
||||
{
|
||||
gboolean result;
|
||||
GSettings* settings;
|
||||
-
|
||||
- settings = g_settings_new (COT_SCHEMA);
|
||||
+ GSettingsSchemaSource* schema_source;
|
||||
+ GSettingsSchema* schema;
|
||||
+
|
||||
+ schema_source = g_settings_schema_source_new_from_directory("@GSETTINGS_PATH@",
|
||||
+ g_settings_schema_source_get_default(),
|
||||
+ TRUE, NULL);
|
||||
+ schema = g_settings_schema_source_lookup(schema_source,
|
||||
+ COT_SCHEMA,
|
||||
+ FALSE);
|
||||
+ settings = g_settings_new_full(schema, NULL, NULL);
|
||||
+ g_settings_schema_source_unref(schema_source);
|
||||
+ g_settings_schema_unref(schema);
|
||||
result = g_settings_set_boolean (settings, COT_DESKTOP_KEY, val);
|
||||
g_object_unref (settings);
|
||||
return result;
|
||||
@@ -159,8 +179,18 @@ desktop_is_home_dir (void)
|
||||
{
|
||||
gboolean result;
|
||||
GSettings* settings;
|
||||
-
|
||||
- settings = g_settings_new (CAJA_SCHEMA);
|
||||
+ GSettingsSchemaSource* schema_source;
|
||||
+ GSettingsSchema* schema;
|
||||
+
|
||||
+ schema_source = g_settings_schema_source_new_from_directory("@caja_gsetttings_path@",
|
||||
+ g_settings_schema_source_get_default(),
|
||||
+ TRUE, NULL);
|
||||
+ schema = g_settings_schema_source_lookup(schema_source,
|
||||
+ CAJA_SCHEMA,
|
||||
+ FALSE);
|
||||
+ settings = g_settings_new_full(schema, NULL, NULL);
|
||||
+ g_settings_schema_source_unref(schema_source);
|
||||
+ g_settings_schema_unref(schema);
|
||||
result = g_settings_get_boolean (settings, CAJA_DESKTOP_KEY);
|
||||
g_object_unref (settings);
|
||||
return result;
|
||||
@@ -171,8 +201,18 @@ default_terminal_application (void)
|
||||
{
|
||||
gchar *result;
|
||||
GSettings* settings;
|
||||
-
|
||||
- settings = g_settings_new (TERM_SCHEMA);
|
||||
+ GSettingsSchemaSource* schema_source;
|
||||
+ GSettingsSchema* schema;
|
||||
+
|
||||
+ schema_source = g_settings_schema_source_new_from_directory("@desktop_gsetttings_path@",
|
||||
+ g_settings_schema_source_get_default(),
|
||||
+ TRUE, NULL);
|
||||
+ schema = g_settings_schema_source_lookup(schema_source,
|
||||
+ TERM_SCHEMA,
|
||||
+ FALSE);
|
||||
+ settings = g_settings_new_full(schema, NULL, NULL);
|
||||
+ g_settings_schema_source_unref(schema_source);
|
||||
+ g_settings_schema_unref(schema);
|
||||
result = g_settings_get_string (settings, TERM_EXEC_KEY);
|
||||
g_object_unref (settings);
|
||||
|
||||
@@ -189,8 +229,18 @@ set_default_terminal_application (const gchar* exec)
|
||||
{
|
||||
gboolean result;
|
||||
GSettings* settings;
|
||||
-
|
||||
- settings = g_settings_new (TERM_SCHEMA);
|
||||
+ GSettingsSchemaSource* schema_source;
|
||||
+ GSettingsSchema* schema;
|
||||
+
|
||||
+ schema_source = g_settings_schema_source_new_from_directory("@desktop_gsetttings_path@",
|
||||
+ g_settings_schema_source_get_default(),
|
||||
+ TRUE, NULL);
|
||||
+ schema = g_settings_schema_source_lookup(schema_source,
|
||||
+ TERM_SCHEMA,
|
||||
+ FALSE);
|
||||
+ settings = g_settings_new_full(schema, NULL, NULL);
|
||||
+ g_settings_schema_source_unref(schema_source);
|
||||
+ g_settings_schema_unref(schema);
|
||||
result = g_settings_set_string (settings, TERM_EXEC_KEY, exec);
|
||||
g_object_unref (settings);
|
||||
return result;
|
||||
diff --git a/sendto/caja-sendto-command.c b/sendto/caja-sendto-command.c
|
||||
index 8181db6..579dc81 100644
|
||||
--- a/sendto/caja-sendto-command.c
|
||||
+++ b/sendto/caja-sendto-command.c
|
||||
@@ -801,6 +801,8 @@ caja_sendto_init (void)
|
||||
int main (int argc, char **argv)
|
||||
{
|
||||
GOptionContext *context;
|
||||
+ GSettingsSchemaSource* schema_source;
|
||||
+ GSettingsSchema* schema;
|
||||
GError *error = NULL;
|
||||
|
||||
#ifdef ENABLE_NLS
|
||||
@@ -818,7 +820,15 @@ int main (int argc, char **argv)
|
||||
return 1;
|
||||
}
|
||||
|
||||
- settings = g_settings_new ("org.mate.Caja.Sendto");
|
||||
+ schema_source = g_settings_schema_source_new_from_directory("@GSETTINGS_PATH@",
|
||||
+ g_settings_schema_source_get_default(),
|
||||
+ TRUE, NULL);
|
||||
+ schema = g_settings_schema_source_lookup(schema_source,
|
||||
+ "org.mate.Caja.Sendto",
|
||||
+ FALSE);
|
||||
+ settings = g_settings_new_full(schema, NULL, NULL);
|
||||
+ g_settings_schema_source_unref(schema_source);
|
||||
+ g_settings_schema_unref(schema);
|
||||
caja_sendto_init ();
|
||||
if (caja_sendto_plugin_init () == FALSE) {
|
||||
GtkWidget *error_dialog;
|
||||
diff --git a/wallpaper/caja-wallpaper-extension.c b/wallpaper/caja-wallpaper-extension.c
|
||||
index 3119e9f..4f80c88 100644
|
||||
--- a/wallpaper/caja-wallpaper-extension.c
|
||||
+++ b/wallpaper/caja-wallpaper-extension.c
|
||||
@@ -47,6 +47,8 @@ set_wallpaper_callback (CajaMenuItem *item,
|
||||
{
|
||||
GList *files;
|
||||
GSettings *settings;
|
||||
+ GSettingsSchemaSource* schema_source;
|
||||
+ GSettingsSchema* schema;
|
||||
CajaFileInfo *file;
|
||||
gchar *uri;
|
||||
gchar *filename;
|
||||
@@ -57,7 +59,15 @@ set_wallpaper_callback (CajaMenuItem *item,
|
||||
uri = caja_file_info_get_uri (file);
|
||||
filename = g_filename_from_uri(uri, NULL, NULL);
|
||||
|
||||
- settings = g_settings_new (WP_SCHEMA);
|
||||
+ schema_source = g_settings_schema_source_new_from_directory("@desktop_gsetttings_path@",
|
||||
+ g_settings_schema_source_get_default(),
|
||||
+ TRUE, NULL);
|
||||
+ schema = g_settings_schema_source_lookup(schema_source,
|
||||
+ WP_SCHEMA,
|
||||
+ FALSE);
|
||||
+ settings = g_settings_new_full(schema, NULL, NULL);
|
||||
+ g_settings_schema_source_unref(schema_source);
|
||||
+ g_settings_schema_unref(schema);
|
||||
|
||||
g_settings_set_string (settings, WP_FILE_KEY, filename);
|
||||
|
@ -1,29 +0,0 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, makeWrapper
|
||||
, caja-extensions
|
||||
, caja
|
||||
, extensions ? [ caja-extensions ]
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "${caja.pname}-with-extensions";
|
||||
version = caja.version;
|
||||
|
||||
dontUnpack = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
makeWrapper
|
||||
];
|
||||
|
||||
inherit caja;
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
makeWrapper $caja/bin/caja $out/bin/caja \
|
||||
--set CAJA_EXTENSION_DIRS ${lib.concatMapStringsSep ":" (x: "${x.outPath}/lib/caja/extensions-2.0") extensions}
|
||||
'';
|
||||
|
||||
inherit (caja.meta);
|
||||
}
|
@ -3,24 +3,26 @@
|
||||
, fetchurl
|
||||
, pkg-config
|
||||
, gettext
|
||||
, gtk-layer-shell
|
||||
, gtk3
|
||||
, libnotify
|
||||
, libxml2
|
||||
, libexif
|
||||
, exempi
|
||||
, mate
|
||||
, mate-desktop
|
||||
, hicolor-icon-theme
|
||||
, wayland
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "caja";
|
||||
version = "1.26.3";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "gT7fCKNvmV7DwVBBMf+K+70CH24VhmQ/5dztXnPleQ0=";
|
||||
sha256 = "HjAUzhRVgX7C73TQnv37aDXYo3LtmhbvtZGe97ghlXo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -30,13 +32,15 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk-layer-shell
|
||||
gtk3
|
||||
libnotify
|
||||
libxml2
|
||||
libexif
|
||||
exempi
|
||||
mate.mate-desktop
|
||||
mate-desktop
|
||||
hicolor-icon-theme
|
||||
wayland
|
||||
];
|
||||
|
||||
configureFlags = [ "--disable-update-mimedb" ];
|
||||
|
61
pkgs/desktops/mate/caja/with-extensions.nix
Normal file
61
pkgs/desktops/mate/caja/with-extensions.nix
Normal file
@ -0,0 +1,61 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, glib
|
||||
, wrapGAppsHook
|
||||
, xorg
|
||||
, caja
|
||||
, cajaExtensions
|
||||
, extensions ? [ ]
|
||||
, useDefaultExtensions ? true
|
||||
}:
|
||||
|
||||
let
|
||||
selectedExtensions = extensions ++ (lib.optionals useDefaultExtensions cajaExtensions);
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "${caja.pname}-with-extensions";
|
||||
version = caja.version;
|
||||
|
||||
src = null;
|
||||
|
||||
nativeBuildInputs = [
|
||||
glib
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = lib.forEach selectedExtensions (x: x.buildInputs) ++ selectedExtensions
|
||||
++ [ caja ] ++ caja.buildInputs;
|
||||
|
||||
dontUnpack = true;
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
|
||||
preferLocalBuild = true;
|
||||
allowSubstitutes = false;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out
|
||||
${xorg.lndir}/bin/lndir -silent ${caja} $out
|
||||
|
||||
dbus_service_path="share/dbus-1/services/org.mate.freedesktop.FileManager1.service"
|
||||
rm -f $out/share/applications/* "$out/$dbus_service_path"
|
||||
for file in ${caja}/share/applications/*; do
|
||||
substitute "$file" "$out/share/applications/$(basename $file)" \
|
||||
--replace-fail "${caja}" "$out"
|
||||
done
|
||||
substitute "${caja}/$dbus_service_path" "$out/$dbus_service_path" \
|
||||
--replace-fail "${caja}" "$out"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
preFixup = lib.optionalString (selectedExtensions != [ ]) ''
|
||||
gappsWrapperArgs+=(
|
||||
--set CAJA_EXTENSION_DIRS ${lib.concatMapStringsSep ":" (x: "${x.outPath}/lib/caja/extensions-2.0") selectedExtensions}
|
||||
)
|
||||
'';
|
||||
|
||||
inherit (caja.meta);
|
||||
}
|
@ -14,7 +14,7 @@ let
|
||||
caja = callPackage ./caja { };
|
||||
caja-dropbox = callPackage ./caja-dropbox { };
|
||||
caja-extensions = callPackage ./caja-extensions { };
|
||||
caja-with-extensions = callPackage ./caja-with-extensions { };
|
||||
caja-with-extensions = callPackage ./caja/with-extensions.nix { };
|
||||
engrampa = callPackage ./engrampa { };
|
||||
eom = callPackage ./eom { };
|
||||
libmatekbd = callPackage ./libmatekbd { };
|
||||
@ -27,6 +27,7 @@ let
|
||||
mate-common = callPackage ./mate-common { };
|
||||
mate-control-center = callPackage ./mate-control-center { };
|
||||
mate-desktop = callPackage ./mate-desktop { };
|
||||
mate-gsettings-overrides = callPackage ./mate-gsettings-overrides { };
|
||||
mate-icon-theme = callPackage ./mate-icon-theme { };
|
||||
mate-icon-theme-faenza = callPackage ./mate-icon-theme-faenza { };
|
||||
mate-indicator-applet = callPackage ./mate-indicator-applet { };
|
||||
@ -35,6 +36,7 @@ let
|
||||
mate-netbook = callPackage ./mate-netbook { };
|
||||
mate-notification-daemon = callPackage ./mate-notification-daemon { };
|
||||
mate-panel = callPackage ./mate-panel { };
|
||||
mate-panel-with-applets = callPackage ./mate-panel/with-applets.nix { };
|
||||
mate-polkit = callPackage ./mate-polkit { };
|
||||
mate-power-manager = callPackage ./mate-power-manager { };
|
||||
mate-sensors-applet = callPackage ./mate-sensors-applet { };
|
||||
@ -49,12 +51,13 @@ let
|
||||
mate-user-guide = callPackage ./mate-user-guide { };
|
||||
mate-user-share = callPackage ./mate-user-share { };
|
||||
mate-utils = callPackage ./mate-utils { };
|
||||
mate-wayland-session = callPackage ./mate-wayland-session { };
|
||||
mozo = callPackage ./mozo { };
|
||||
pluma = callPackage ./pluma { inherit (pkgs.gnome) adwaita-icon-theme; };
|
||||
pluma = callPackage ./pluma { };
|
||||
python-caja = callPackage ./python-caja { };
|
||||
|
||||
# Caja and mate-panel are managed in NixOS module.
|
||||
basePackages = [
|
||||
caja
|
||||
libmatekbd
|
||||
libmatemixer
|
||||
libmateweather
|
||||
@ -65,7 +68,6 @@ let
|
||||
mate-icon-theme
|
||||
mate-menus
|
||||
mate-notification-daemon
|
||||
mate-panel
|
||||
mate-polkit
|
||||
mate-session-manager
|
||||
mate-settings-daemon
|
||||
@ -75,7 +77,7 @@ let
|
||||
|
||||
extraPackages = [
|
||||
atril
|
||||
caja-extensions
|
||||
caja-extensions # for caja-sendto
|
||||
engrampa
|
||||
eom
|
||||
mate-applets
|
||||
@ -86,7 +88,6 @@ let
|
||||
mate-netbook
|
||||
mate-power-manager
|
||||
mate-screensaver
|
||||
mate-sensors-applet
|
||||
mate-system-monitor
|
||||
mate-terminal
|
||||
mate-user-guide
|
||||
@ -96,6 +97,20 @@ let
|
||||
pluma
|
||||
];
|
||||
|
||||
cajaExtensions = [
|
||||
caja-extensions
|
||||
];
|
||||
|
||||
panelApplets = [
|
||||
mate-applets
|
||||
mate-indicator-applet
|
||||
mate-netbook
|
||||
mate-notification-daemon
|
||||
mate-media
|
||||
mate-power-manager
|
||||
mate-sensors-applet
|
||||
mate-utils
|
||||
];
|
||||
};
|
||||
|
||||
in lib.makeScope pkgs.newScope packages
|
||||
|
@ -5,22 +5,24 @@
|
||||
, gettext
|
||||
, itstool
|
||||
, libxml2
|
||||
, caja
|
||||
, gtk3
|
||||
, mate
|
||||
, hicolor-icon-theme
|
||||
, json-glib
|
||||
, mate-desktop
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
# can be defaulted to true once engrampa builds with meson (version > 1.27.0)
|
||||
# can be defaulted to true once switch to meson
|
||||
, withMagic ? stdenv.buildPlatform.canExecute stdenv.hostPlatform, file
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "engrampa";
|
||||
version = "1.26.2";
|
||||
version = "1.28.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "cx9cR7UfNvyMiWUrbnfbT7K0Zjid6ZkMmFUpo9T/iEw=";
|
||||
sha256 = "nFxMm8+LCO6qjydVONJLTJVQidWK7AMx6JwCuE2FOGo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -32,10 +34,11 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
caja
|
||||
gtk3
|
||||
mate.caja
|
||||
hicolor-icon-theme
|
||||
mate.mate-desktop
|
||||
json-glib
|
||||
mate-desktop
|
||||
] ++ lib.optionals withMagic [
|
||||
file
|
||||
];
|
||||
|
@ -13,7 +13,7 @@
|
||||
, libpeas
|
||||
, shared-mime-info
|
||||
, gtk3
|
||||
, mate
|
||||
, mate-desktop
|
||||
, hicolor-icon-theme
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
@ -21,11 +21,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "eom";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "tSUSKUlPfmxi4J+yEeQzCN9PB0xVG6CiM9ws1oZLmWA=";
|
||||
sha256 = "mgHKsplaGoxyWMhl6uXxgu1HMMRGcq/cOgfkI+3VOrw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
|
||||
shared-mime-info
|
||||
gtk3
|
||||
libpeas
|
||||
mate.mate-desktop
|
||||
mate-desktop
|
||||
hicolor-icon-theme
|
||||
];
|
||||
|
||||
|
@ -10,11 +10,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libmatekbd";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "Y5ONkSUpRe7qiP2DdNEjG9g9As2WXGu6F8GF7bOXvO0=";
|
||||
sha256 = "XS5YSDwrI9M1A9JMiPi5CijMAYnX5AAbPic6YE9v6A4=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -7,6 +7,7 @@
|
||||
, glib
|
||||
, alsaSupport ? stdenv.isLinux
|
||||
, alsa-lib
|
||||
, udev
|
||||
, pulseaudioSupport ? config.pulseaudio or true
|
||||
, libpulseaudio
|
||||
, ossSupport ? false
|
||||
@ -15,11 +16,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libmatemixer";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "SWD1mmufr4KgHUpLjMJgtIaN2ZHv1Kmxe10KFaHToa4=";
|
||||
sha256 = "XXO5Ijl/YGiOPJUw61MrzkbDDiYtsbU1L6MsQNhwoMc=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -29,9 +30,12 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
]
|
||||
++ lib.optional alsaSupport alsa-lib
|
||||
++ lib.optional pulseaudioSupport libpulseaudio;
|
||||
] ++ lib.optionals alsaSupport [
|
||||
alsa-lib
|
||||
udev
|
||||
] ++ lib.optionals pulseaudioSupport [
|
||||
libpulseaudio
|
||||
];
|
||||
|
||||
configureFlags = lib.optional ossSupport "--enable-oss";
|
||||
|
||||
|
@ -14,11 +14,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "libmateweather";
|
||||
version = "1.26.3";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "XmzSRBiEfLRazxfaW0NacTHLTsKs/2joKPNCob8T70o=";
|
||||
sha256 = "VUNz3rWzk7nYSydd0spmyaSi0ObskgRPq4qlPjAy0rU=";
|
||||
};
|
||||
|
||||
strictDeps = true;
|
||||
|
@ -14,6 +14,7 @@
|
||||
, gnome
|
||||
, glib
|
||||
, gtk3
|
||||
, mate-desktop
|
||||
, mate-settings-daemon
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
@ -21,11 +22,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "marco";
|
||||
version = "1.26.2";
|
||||
version = "1.28.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "EvGiVP4QcvAwSIRxHgiaVoJ4CgEVk0Au043muUgOB6M=";
|
||||
sha256 = "JJbl5A7pgM1oSUk6w+D4/Q3si4HGdNqNm6GaV38KwuE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -45,9 +46,15 @@ stdenv.mkDerivation rec {
|
||||
libstartup_notification
|
||||
gtk3
|
||||
gnome.zenity
|
||||
mate-desktop
|
||||
mate-settings-daemon
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace src/core/util.c \
|
||||
--replace-fail 'argvl[i++] = "zenity"' 'argvl[i++] = "${gnome.zenity}/bin/zenity"'
|
||||
'';
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
@ -7,7 +7,7 @@
|
||||
, dbus-glib
|
||||
, glib
|
||||
, gtk3
|
||||
, gtksourceview3
|
||||
, gtksourceview4
|
||||
, gucharmap
|
||||
, libmateweather
|
||||
, libnl
|
||||
@ -20,7 +20,6 @@
|
||||
, polkit
|
||||
, upower
|
||||
, wirelesstools
|
||||
, mate
|
||||
, hicolor-icon-theme
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
@ -28,11 +27,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-applets";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "Orj2HbN23DM85MGHIsY6B/qz6OEnK34OCXrUWXsXwsI=";
|
||||
sha256 = "G2vva9XTJvudyCj/kQ5LG5KUtGYMMR3ByQMQ/Zw1ZoY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -45,7 +44,7 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [
|
||||
dbus-glib
|
||||
gtk3
|
||||
gtksourceview3
|
||||
gtksourceview4
|
||||
gucharmap
|
||||
hicolor-icon-theme
|
||||
libgtop
|
||||
@ -61,7 +60,7 @@ stdenv.mkDerivation rec {
|
||||
wirelesstools
|
||||
];
|
||||
|
||||
configureFlags = [ "--enable-suid=no" ];
|
||||
configureFlags = [ "--enable-suid=no" "--enable-in-process" ];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
|
||||
|
||||
|
@ -1,31 +1,21 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, stdenvNoCC
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, meson
|
||||
, ninja
|
||||
, gettext
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "mate-backgrounds";
|
||||
version = "1.26.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0379hngy3ap1r5kmqvmzs9r710k2c9nal2ps3hq765df4ir15j8d";
|
||||
sha256 = "UNGv0CSGvQesIqWmtu+jAxFI8NSKguSI2QmtVwA6aUM=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Fix build with meson 0.61, can be removed on next update.
|
||||
# https://github.com/mate-desktop/mate-backgrounds/pull/39
|
||||
(fetchpatch {
|
||||
url = "https://github.com/mate-desktop/mate-backgrounds/commit/0096e237d420e6247a75a1c6940a818e309ac2a7.patch";
|
||||
sha256 = "HEF8VWunFO+NCG18fZA7lbE2l8pc6Z3jcD+rSZ1Jsqg=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
gettext
|
||||
meson
|
||||
|
@ -14,11 +14,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-calc";
|
||||
version = "1.26.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0mddfh9ixhh60nfgx5kcprcl9liavwqyina11q3pnpfs3n02df3y";
|
||||
sha256 = "gEsSXR4oZLHnSvgW2psquLGUcrmvl0Q37nNVraXmKPU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -1,16 +1,16 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, stdenvNoCC
|
||||
, fetchurl
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "mate-common";
|
||||
version = "1.26.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "014wpfqpqmfkzv81paap4fz15mj1gsyvaxlrfqsp9a3yxw4f7jaf";
|
||||
sha256 = "QrfCzuJo9x1+HBrU9pvNoOzWVXipZyIYfGt2N40mugo=";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
@ -5,17 +5,27 @@
|
||||
, gettext
|
||||
, itstool
|
||||
, libxml2
|
||||
, accountsservice
|
||||
, caja
|
||||
, dbus-glib
|
||||
, libxklavier
|
||||
, libcanberra-gtk3
|
||||
, libgtop
|
||||
, libmatekbd
|
||||
, librsvg
|
||||
, libappindicator-gtk3
|
||||
, libayatana-appindicator
|
||||
, glib
|
||||
, desktop-file-utils
|
||||
, dconf
|
||||
, gtk3
|
||||
, polkit
|
||||
, mate
|
||||
, marco
|
||||
, mate-desktop
|
||||
, mate-menus
|
||||
, mate-panel
|
||||
, mate-settings-daemon
|
||||
, udisks2
|
||||
, systemd
|
||||
, hicolor-icon-theme
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
@ -23,11 +33,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-control-center";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "4F9JKjtleqVvxY989xvIyA344lNR/eTbT1I6uNtbVgg=";
|
||||
sha256 = "6/LHBP1SSNwvmDb/KQKIae8p1QVJB8xhVzS2ODp5FLw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -39,32 +49,41 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
accountsservice
|
||||
libxml2
|
||||
dbus-glib
|
||||
libxklavier
|
||||
libcanberra-gtk3
|
||||
libgtop
|
||||
libmatekbd
|
||||
librsvg
|
||||
libappindicator-gtk3
|
||||
libayatana-appindicator
|
||||
gtk3
|
||||
dconf
|
||||
polkit
|
||||
hicolor-icon-theme
|
||||
mate.mate-desktop
|
||||
mate.libmatekbd
|
||||
mate.mate-menus
|
||||
mate.mate-panel # for org.mate.panel schema, see m-c-c#678
|
||||
mate.marco
|
||||
mate.mate-settings-daemon
|
||||
marco
|
||||
mate-desktop
|
||||
mate-menus
|
||||
mate-panel # for org.mate.panel schema, see m-c-c#678
|
||||
mate-settings-daemon
|
||||
udisks2
|
||||
systemd
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace capplets/system-info/mate-system-info.c \
|
||||
--replace-fail "/usr/bin/mate-about" "${mate-desktop}/bin/mate-about"
|
||||
'';
|
||||
|
||||
configureFlags = [ "--disable-update-mimedb" ];
|
||||
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
# WM keyboard shortcuts
|
||||
--prefix XDG_DATA_DIRS : "${mate.marco}/share"
|
||||
--prefix XDG_DATA_DIRS : "${marco}/share"
|
||||
# Desktop font, works only when passed after gtk3 schemas in the wrapper for some reason
|
||||
--prefix XDG_DATA_DIRS : "${glib.getSchemaDataDirPath mate.caja}"
|
||||
--prefix XDG_DATA_DIRS : "${glib.getSchemaDataDirPath caja}"
|
||||
)
|
||||
'';
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
, pkg-config
|
||||
, gettext
|
||||
, isocodes
|
||||
, gnome
|
||||
, libstartup_notification
|
||||
, gtk3
|
||||
, dconf
|
||||
, wrapGAppsHook
|
||||
@ -13,11 +13,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-desktop";
|
||||
version = "1.26.2";
|
||||
version = "1.28.2";
|
||||
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "XtA/fFLXt+zknKHnNqp2au/rXGOeqz5oxwkMUw0CN2o=";
|
||||
sha256 = "MrtLeSAUs5HB4biunBioK01EdlCYS0y6fSjpVWSWSqI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -28,10 +30,14 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
dconf
|
||||
gtk3
|
||||
isocodes
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
gtk3
|
||||
libstartup_notification
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru.updateScript = mateUpdateScript { inherit pname; };
|
||||
|
24
pkgs/desktops/mate/mate-gsettings-overrides/default.nix
Normal file
24
pkgs/desktops/mate/mate-gsettings-overrides/default.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ lib
|
||||
, runCommand
|
||||
, gsettings-desktop-schemas
|
||||
, mate-wayland-session
|
||||
, glib
|
||||
}:
|
||||
|
||||
let
|
||||
gsettingsOverridePackages = [
|
||||
gsettings-desktop-schemas
|
||||
mate-wayland-session
|
||||
];
|
||||
in
|
||||
runCommand "mate-gsettings-overrides" { preferLocalBuild = true; } ''
|
||||
data_dir="$out/share/gsettings-schemas/nixos-gsettings-overrides"
|
||||
schema_dir="$data_dir/glib-2.0/schemas"
|
||||
mkdir -p "$schema_dir"
|
||||
|
||||
${lib.concatMapStringsSep "\n" (pkg: "cp -rf \"${glib.getSchemaPath pkg}\"/*.xml \"${glib.getSchemaPath pkg}\"/*.gschema.override \"$schema_dir\"") gsettingsOverridePackages}
|
||||
|
||||
chmod -R a+w "$data_dir"
|
||||
|
||||
${glib.dev}/bin/glib-compile-schemas --strict "$schema_dir"
|
||||
''
|
@ -12,11 +12,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-icon-theme";
|
||||
version = "1.26.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0nha555fhhn0j5wmzmdc7bh93ckzwwdm8mwmzma5whkzslv09xa1";
|
||||
sha256 = "lNYHkGDKXfdFQpId5O6ji30C0HVhyRk1bZXeh2+abTo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -5,7 +5,7 @@
|
||||
, gettext
|
||||
, gtk3
|
||||
, libayatana-indicator
|
||||
, mate
|
||||
, mate-panel
|
||||
, hicolor-icon-theme
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
@ -13,17 +13,17 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-indicator-applet";
|
||||
version = "1.26.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "144fh9f3lag2cqnmb6zxlh8k83ya8kha6rmd7r8gg3z5w3nzpyz4";
|
||||
sha256 = "zrPXA5cKPlWNfNffCxwhceOvdSolSVrO0uIiwemtSc0=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
# Find installed Unity & Ayatana (new-style) indicators
|
||||
substituteInPlace src/applet-main.c \
|
||||
--replace '/usr/share' '/run/current-system/sw/share'
|
||||
--replace-fail '/usr/share' '/run/current-system/sw/share'
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = [
|
||||
gtk3
|
||||
libayatana-indicator
|
||||
mate.mate-panel
|
||||
mate-panel
|
||||
hicolor-icon-theme
|
||||
];
|
||||
|
||||
|
@ -4,32 +4,27 @@
|
||||
, pkg-config
|
||||
, gettext
|
||||
, libtool
|
||||
, libxml2
|
||||
, libcanberra-gtk3
|
||||
, gtk-layer-shell
|
||||
, gtk3
|
||||
, mate
|
||||
, libcanberra-gtk3
|
||||
, libmatemixer
|
||||
, libxml2
|
||||
, mate-desktop
|
||||
, mate-panel
|
||||
, wayland
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-media";
|
||||
version = "1.26.2";
|
||||
version = "1.28.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "r0ZjlXTMOIUTCJyhC7FB/8Pm0awz5zDkII21dZZChQ8=";
|
||||
sha256 = "vNwQLiL2P1XmMWbVxwjpHBE1cOajCodDRaiGCeg6mRI=";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
libxml2
|
||||
libcanberra-gtk3
|
||||
gtk3
|
||||
mate.libmatemixer
|
||||
mate.mate-panel
|
||||
mate.mate-desktop
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
gettext
|
||||
@ -37,6 +32,19 @@ stdenv.mkDerivation rec {
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk-layer-shell
|
||||
gtk3
|
||||
libcanberra-gtk3
|
||||
libmatemixer
|
||||
libxml2
|
||||
mate-desktop
|
||||
mate-panel
|
||||
wayland
|
||||
];
|
||||
|
||||
configureFlags = [ "--enable-in-process" ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru.updateScript = mateUpdateScript { inherit pname; };
|
||||
|
@ -11,11 +11,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-menus";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "RY1ZmuW2UMfSF0D5/pVMSoOL5F7WKrQOIOMG+vXdHYw=";
|
||||
sha256 = "z0DHXH1vCq0dSWmCj8YgJcYiK8aoTwu51urX5FlwUI0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -7,6 +7,7 @@
|
||||
, libcanberra-gtk3
|
||||
, libnotify
|
||||
, libwnck
|
||||
, gtk-layer-shell
|
||||
, gtk3
|
||||
, libxml2
|
||||
, mate-desktop
|
||||
@ -17,11 +18,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-notification-daemon";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "Dq6SlsSKPHH9VvGTGWH5LSnkWgRf5fGgX4PHQAwxmSQ=";
|
||||
sha256 = "pDEDSOrYZsvLm0xGP00mXMapahp4KpQRoIsjvWXbsuA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -35,11 +36,14 @@ stdenv.mkDerivation rec {
|
||||
libcanberra-gtk3
|
||||
libnotify
|
||||
libwnck
|
||||
gtk-layer-shell
|
||||
gtk3
|
||||
mate-desktop
|
||||
mate-panel
|
||||
];
|
||||
|
||||
configureFlags = [ "--enable-in-process" ];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
@ -5,25 +5,31 @@
|
||||
, gettext
|
||||
, itstool
|
||||
, glib
|
||||
, gnome
|
||||
, gtk-layer-shell
|
||||
, gtk3
|
||||
, libmateweather
|
||||
, libwnck
|
||||
, librsvg
|
||||
, libxml2
|
||||
, dconf
|
||||
, gtk3
|
||||
, mate
|
||||
, mate-desktop
|
||||
, mate-menus
|
||||
, hicolor-icon-theme
|
||||
, wayland
|
||||
, gobject-introspection
|
||||
, wrapGAppsHook
|
||||
, marco
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-panel";
|
||||
version = "1.26.4";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "IHD51RVlfl3c2g2H73KXE9upy3sq0GIjvWdKIcxrPa8=";
|
||||
sha256 = "s70EoJTQ61vX3DOA728MSdmp1SCXM9fM17RtBmogjLo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -35,18 +41,29 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
glib
|
||||
gtk-layer-shell
|
||||
libmateweather
|
||||
libwnck
|
||||
librsvg
|
||||
libxml2
|
||||
gtk3
|
||||
dconf
|
||||
mate.libmateweather
|
||||
mate.mate-desktop
|
||||
mate.mate-menus
|
||||
mate-desktop
|
||||
mate-menus
|
||||
hicolor-icon-theme
|
||||
wayland
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
glib
|
||||
gtk3
|
||||
# See https://github.com/mate-desktop/mate-panel/issues/1402
|
||||
# This is propagated for mate_panel_applet_settings_new and applet's wrapGAppsHook
|
||||
gnome.dconf-editor
|
||||
];
|
||||
|
||||
# Needed for Wayland support.
|
||||
configureFlags = [ "--with-in-process-applets=all" ];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
|
||||
|
||||
makeFlags = [
|
||||
@ -57,7 +74,7 @@ stdenv.mkDerivation rec {
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
# Workspace switcher settings, works only when passed after gtk3 schemas in the wrapper for some reason
|
||||
--prefix XDG_DATA_DIRS : "${glib.getSchemaDataDirPath mate.marco}"
|
||||
--prefix XDG_DATA_DIRS : "${glib.getSchemaDataDirPath marco}"
|
||||
)
|
||||
'';
|
||||
|
||||
|
61
pkgs/desktops/mate/mate-panel/with-applets.nix
Normal file
61
pkgs/desktops/mate/mate-panel/with-applets.nix
Normal file
@ -0,0 +1,61 @@
|
||||
{ stdenv
|
||||
, lib
|
||||
, glib
|
||||
, wrapGAppsHook
|
||||
, xorg
|
||||
, marco
|
||||
, mate-panel
|
||||
, panelApplets
|
||||
, applets ? [ ]
|
||||
, useDefaultApplets ? true
|
||||
}:
|
||||
|
||||
let
|
||||
selectedApplets = applets ++ (lib.optionals useDefaultApplets panelApplets);
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "${mate-panel.pname}-with-applets";
|
||||
version = mate-panel.version;
|
||||
|
||||
src = null;
|
||||
|
||||
paths = [ mate-panel ] ++ selectedApplets;
|
||||
passAsFile = [ "paths" ];
|
||||
|
||||
nativeBuildInputs = [
|
||||
glib
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
buildInputs = lib.forEach selectedApplets (x: x.buildInputs) ++ selectedApplets
|
||||
++ [ mate-panel ] ++ mate-panel.buildInputs ++ mate-panel.propagatedBuildInputs;
|
||||
|
||||
dontUnpack = true;
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
|
||||
preferLocalBuild = true;
|
||||
allowSubstitutes = false;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out
|
||||
for i in $(cat $pathsPath); do
|
||||
${xorg.lndir}/bin/lndir -silent $i $out
|
||||
done
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--set MATE_PANEL_APPLETS_DIR "$out/share/mate-panel/applets"
|
||||
--set MATE_PANEL_EXTRA_MODULES "$out/lib/mate-panel/applets"
|
||||
# Workspace switcher settings
|
||||
--prefix XDG_DATA_DIRS : "${glib.getSchemaDataDirPath marco}"
|
||||
)
|
||||
'';
|
||||
|
||||
inherit (mate-panel.meta);
|
||||
}
|
@ -5,19 +5,18 @@
|
||||
, gettext
|
||||
, gtk3
|
||||
, gobject-introspection
|
||||
, libappindicator-gtk3
|
||||
, libindicator-gtk3
|
||||
, libayatana-appindicator
|
||||
, polkit
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-polkit";
|
||||
version = "1.26.1";
|
||||
version = "1.28.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "9bewtd/FMwLEBAMkWZjrkSGvP1DnFmagmrc7slRSA1c=";
|
||||
sha256 = "NQod0KjtaiycGDz/KiHzlCmelo/MauLoyTxWXa5gSug=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -28,8 +27,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
gtk3
|
||||
libappindicator-gtk3
|
||||
libindicator-gtk3
|
||||
libayatana-appindicator
|
||||
polkit
|
||||
];
|
||||
|
||||
|
@ -6,6 +6,7 @@
|
||||
, glib
|
||||
, itstool
|
||||
, libxml2
|
||||
, mate-desktop
|
||||
, mate-panel
|
||||
, libnotify
|
||||
, libcanberra-gtk3
|
||||
@ -21,11 +22,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-power-manager";
|
||||
version = "1.26.1";
|
||||
version = "1.28.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "IM2dIu0Eur+Yu1DnGg7F14qKR2KHcjJ4+H2nbKv7EEI=";
|
||||
sha256 = "jr3LdLYH6Ggza6moFGze+Pl7zlNcKwyzv2UMWPce7iE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -46,6 +47,7 @@ stdenv.mkDerivation rec {
|
||||
dbus-glib
|
||||
upower
|
||||
polkit
|
||||
mate-desktop
|
||||
mate-panel
|
||||
];
|
||||
|
||||
|
@ -8,20 +8,22 @@
|
||||
, libXScrnSaver
|
||||
, libnotify
|
||||
, libxml2
|
||||
, mate-desktop
|
||||
, mate-menus
|
||||
, mate-panel
|
||||
, pam
|
||||
, systemd
|
||||
, mate
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-screensaver";
|
||||
version = "1.26.2";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "2pcAziQUW9VdJJJ+7P5tMdClLq6G5WOyxlBUs1al/34=";
|
||||
sha256 = "ag8kqPhKL5XhARSrU+Y/1KymiKVf3FA+1lDgpBDj6nA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -36,11 +38,11 @@ stdenv.mkDerivation rec {
|
||||
dbus-glib
|
||||
libXScrnSaver
|
||||
libnotify
|
||||
mate-desktop
|
||||
mate-menus
|
||||
mate-panel
|
||||
pam
|
||||
systemd
|
||||
mate.mate-desktop
|
||||
mate.mate-menus
|
||||
mate.mate-panel
|
||||
];
|
||||
|
||||
configureFlags = [ "--without-console-kit" ];
|
||||
|
@ -10,29 +10,26 @@
|
||||
, libatasmart
|
||||
, libnotify
|
||||
, lm_sensors
|
||||
, mate
|
||||
, mate-panel
|
||||
, hicolor-icon-theme
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-sensors-applet";
|
||||
version = "1.26.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "0s19r30fsicqvvcnz57lv158pi35w9zn5i7h5hz59224y0zpqhsc";
|
||||
sha256 = "1GU2ZoKvj+uGGCg8l4notw22/RfKj6lQrG9xAQIxWoE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
gettext
|
||||
itstool
|
||||
wrapGAppsHook
|
||||
];
|
||||
|
||||
# maybe add nvidia-settings later on
|
||||
buildInputs = [
|
||||
gtk3
|
||||
libxml2
|
||||
@ -40,10 +37,12 @@ stdenv.mkDerivation rec {
|
||||
libatasmart
|
||||
libnotify
|
||||
lm_sensors
|
||||
mate.mate-panel
|
||||
mate-panel
|
||||
hicolor-icon-theme
|
||||
];
|
||||
|
||||
configureFlags = [ "--enable-in-process" ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
passthru.updateScript = mateUpdateScript { inherit pname; };
|
||||
|
@ -8,11 +8,13 @@
|
||||
, systemd
|
||||
, libSM
|
||||
, libXtst
|
||||
, glib
|
||||
, gtk3
|
||||
, libepoxy
|
||||
, polkit
|
||||
, hicolor-icon-theme
|
||||
, mate
|
||||
, mate-desktop
|
||||
, mate-screensaver
|
||||
, wrapGAppsHook
|
||||
, fetchpatch
|
||||
, mateUpdateScript
|
||||
@ -20,11 +22,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-session-manager";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "W4x9ZEH9nCk8hjiCq2enSTxTzfZOqyfAlFdfQj69Qng=";
|
||||
sha256 = "0yzkWVuh2mUpB3cgPyvIK9lzshSjoECAoe9caJkKLXs=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@ -48,7 +50,8 @@ stdenv.mkDerivation rec {
|
||||
libSM
|
||||
libXtst
|
||||
gtk3
|
||||
mate.mate-desktop
|
||||
mate-desktop
|
||||
mate-screensaver # for gsm_manager_init
|
||||
hicolor-icon-theme
|
||||
libepoxy
|
||||
polkit
|
||||
@ -56,9 +59,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
|
||||
|
||||
postFixup = ''
|
||||
substituteInPlace $out/share/xsessions/mate.desktop \
|
||||
--replace "Exec=mate-session" "Exec=$out/bin/mate-session"
|
||||
--replace-fail "Exec=mate-session" "Exec=$out/bin/mate-session"
|
||||
'';
|
||||
|
||||
passthru.providedSessions = [ "mate" ];
|
||||
|
@ -4,15 +4,16 @@
|
||||
, pkg-config
|
||||
, gettext
|
||||
, glib
|
||||
, dbus-glib
|
||||
, libxklavier
|
||||
, libcanberra-gtk3
|
||||
, libnotify
|
||||
, libmatekbd
|
||||
, libmatemixer
|
||||
, nss
|
||||
, polkit
|
||||
, dconf
|
||||
, gtk3
|
||||
, mate
|
||||
, mate-desktop
|
||||
, pulseaudioSupport ? stdenv.config.pulseaudio or true
|
||||
, libpulseaudio
|
||||
, wrapGAppsHook
|
||||
@ -21,11 +22,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-settings-daemon";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "aX6mW1QpIcK3ZhRSktJo0wCcwtqDFtKnhphpBV5LGFk=";
|
||||
sha256 = "TtfNraqkyZ7//AKCuEEXA7t24HLEHEtXmJ+MW0BhGjo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -35,17 +36,16 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
dbus-glib
|
||||
libxklavier
|
||||
libcanberra-gtk3
|
||||
libnotify
|
||||
libmatekbd
|
||||
libmatemixer
|
||||
nss
|
||||
polkit
|
||||
gtk3
|
||||
dconf
|
||||
mate.mate-desktop
|
||||
mate.libmatekbd
|
||||
mate.libmatemixer
|
||||
mate-desktop
|
||||
] ++ lib.optional pulseaudioSupport libpulseaudio;
|
||||
|
||||
configureFlags = lib.optional pulseaudioSupport "--enable-pulse";
|
||||
|
@ -7,21 +7,21 @@
|
||||
, gtkmm3
|
||||
, libxml2
|
||||
, libgtop
|
||||
, libwnck
|
||||
, librsvg
|
||||
, polkit
|
||||
, systemd
|
||||
, wrapGAppsHook
|
||||
, mate-desktop
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-system-monitor";
|
||||
version = "1.26.3";
|
||||
version = "1.28.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "WFthNBX3bucDt7XlK1WWKUKVB+A8kwVKSq3Pb5xlIkk=";
|
||||
sha256 = "QtZj1rkPtTYevBP2VHmD1vHirHXcKuTxysbqYymWWiU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -35,13 +35,16 @@ stdenv.mkDerivation rec {
|
||||
gtkmm3
|
||||
libxml2
|
||||
libgtop
|
||||
libwnck
|
||||
librsvg
|
||||
polkit
|
||||
systemd
|
||||
];
|
||||
|
||||
configureFlags = [ "--enable-systemd" ];
|
||||
postPatch = ''
|
||||
# This package does not provide mate-version.xml.
|
||||
substituteInPlace src/sysinfo.cpp \
|
||||
--replace-fail 'DATADIR "/mate-about/mate-version.xml"' '"${mate-desktop}/share/mate-about/mate-version.xml"'
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
|
@ -16,11 +16,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-terminal";
|
||||
version = "1.26.1";
|
||||
version = "1.28.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "fBMCBvC0eIfoySdOc/jBn65RETRXKGmnwjERt4nh4dA=";
|
||||
sha256 = "8TXrGp4q4ieY7LLcGRT9tM/XdOa7ZcAVK+N8xslGnpI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -10,11 +10,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-user-guide";
|
||||
version = "1.26.2";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "TTK241ZKyPTqqysVSC33+XaXUN+IEavtg30KLn7jgIs=";
|
||||
sha256 = "U+8IFPUGVEYU7WGre+UiHMjTqfFPfvlpjJD+fkYBS54=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace mate-user-guide.desktop.in.in \
|
||||
--replace "Exec=yelp" "Exec=${yelp}/bin/yelp"
|
||||
--replace-fail "Exec=yelp" "Exec=${yelp}/bin/yelp"
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
@ -5,6 +5,7 @@
|
||||
, gettext
|
||||
, itstool
|
||||
, gtk3
|
||||
, caja
|
||||
, dbus-glib
|
||||
, libnotify
|
||||
, libxml2
|
||||
@ -21,11 +22,11 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-user-share";
|
||||
version = "1.26.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "1wh0b4qw5wzpl7sg44lpwjb9r6xllch3xfz8c2cchl8rcgbh2kph";
|
||||
sha256 = "iYVgmZkXllE0jkl+8I81C4YIG5expKcwQHfurlc5rjg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -38,10 +39,10 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildInputs = [
|
||||
gtk3
|
||||
caja
|
||||
dbus-glib
|
||||
libnotify
|
||||
libcanberra-gtk3
|
||||
mate.caja
|
||||
hicolor-icon-theme
|
||||
# Should mod_dnssd and apacheHttpd be runtime dependencies?
|
||||
# In gnome-user-share they are not.
|
||||
|
@ -1,43 +1,34 @@
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, pkg-config
|
||||
, gettext
|
||||
, itstool
|
||||
, glib
|
||||
, gtk-layer-shell
|
||||
, gtk3
|
||||
, libxml2
|
||||
, libgtop
|
||||
, libcanberra-gtk3
|
||||
, inkscape
|
||||
, udisks2
|
||||
, mate
|
||||
, mate-desktop
|
||||
, mate-panel
|
||||
, hicolor-icon-theme
|
||||
, wayland
|
||||
, wrapGAppsHook
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mate-utils";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "L1NHWxoJkd1ak9ndpY/KTkFvJZJTWG2UpbEQjxI3BiA=";
|
||||
sha256 = "WESdeg0dkA/wO3jKn36Ywh6X9H/Ca+5/8cYYNPIviNM=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# Hopefully helps "libxml2.treeError: xmlSetProp() failed"
|
||||
# This patch is not part of upstream yet.
|
||||
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=919058
|
||||
# https://github.com/mate-desktop/mate-utils/issues/210
|
||||
(fetchpatch {
|
||||
url = "https://salsa.debian.org/debian-mate-team/mate-utils/-/raw/2b43d78f3fdbf0aa50716b62bcada2ef015957c6/debian/patches/1001_fix-gsearchtool-pt-help-translation.patch";
|
||||
sha256 = "SZVpdup/bNv+3hEGQ0L13mgXyNm+wRcL53t9/Oi24wA=";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
gettext
|
||||
@ -47,15 +38,28 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
gtk-layer-shell
|
||||
gtk3
|
||||
libgtop
|
||||
libcanberra-gtk3
|
||||
libxml2
|
||||
udisks2
|
||||
mate.mate-panel
|
||||
mate-desktop
|
||||
mate-panel
|
||||
hicolor-icon-theme
|
||||
wayland
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# Workaround undefined version requirements
|
||||
# https://github.com/mate-desktop/mate-utils/issues/361
|
||||
substituteInPlace configure \
|
||||
--replace-fail '>= $GTK_LAYER_SHELL_REQUIRED_VERSION' "" \
|
||||
--replace-fail '>= $GDK_WAYLAND_REQUIRED_VERSION' ""
|
||||
'';
|
||||
|
||||
configureFlags = [ "--enable-wayland" ];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = "-I${glib.dev}/include/gio-unix-2.0";
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
58
pkgs/desktops/mate/mate-wayland-session/default.nix
Normal file
58
pkgs/desktops/mate/mate-wayland-session/default.nix
Normal file
@ -0,0 +1,58 @@
|
||||
{ stdenvNoCC
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, meson
|
||||
, ninja
|
||||
, glib
|
||||
, mate-polkit
|
||||
, mate-notification-daemon
|
||||
, wayfire
|
||||
, wayfirePlugins
|
||||
, gitUpdater
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "mate-wayland-session";
|
||||
version = "1.28.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mate-desktop";
|
||||
repo = "mate-wayland-session";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-sUAq2BylsvjYn8Lt+nm4yIfVhzIEefxKZYnhJnuxjs0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
meson
|
||||
ninja
|
||||
glib
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace session/mate-wayland-components.sh \
|
||||
--replace-fail "polkit-mate-authentication-agent-1" "${mate-polkit}/libexec/polkit-mate-authentication-agent-1" \
|
||||
--replace-fail "mate-notification-daemon" "${mate-notification-daemon}/libexec/mate-notification-daemon" \
|
||||
--replace-fail "cat /usr/bin/blueman-applet" "command -v blueman-applet" \
|
||||
--replace-fail "cat /usr/bin/gnome-keyring-daemon" "command -v gnome-keyring-daemon"
|
||||
|
||||
# Ensure wayfire.ini is writable, as this script tries to modify it later.
|
||||
substituteInPlace session/mate-wayland.sh \
|
||||
--replace-fail "cp /usr/share/doc/wayfire/examples/wayfire.ini" "cp --no-preserve=mode,ownership ${wayfire.src}/wayfire.ini" \
|
||||
--replace-fail "/usr/share/doc/wayfire/examples/wayfire.ini" "${wayfire.src}/wayfire.ini" \
|
||||
--replace-fail "/usr/lib/x86_64-linux-gnu/wayfire/libfiredecor.so" "${wayfirePlugins.firedecor}/lib/wayfire/libfiredecor.so" \
|
||||
--replace-fail "/usr/share/doc/firedecor/firedecor.config" "$out/share/doc/firedecor/firedecor.config"
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
providedSessions = [ "MATE" ];
|
||||
updateScript = gitUpdater { rev-prefix = "v"; };
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Wayland session using Wayfire for the MATE desktop";
|
||||
homepage = "https://mate-desktop.org";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.unix;
|
||||
maintainers = teams.mate.members;
|
||||
};
|
||||
}
|
@ -3,7 +3,7 @@
|
||||
, fetchurl
|
||||
, pkg-config
|
||||
, gettext
|
||||
, mate
|
||||
, mate-menus
|
||||
, gtk3
|
||||
, glib
|
||||
, wrapGAppsHook
|
||||
@ -13,14 +13,14 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "mozo";
|
||||
version = "1.26.2";
|
||||
version = "1.28.0";
|
||||
|
||||
format = "other";
|
||||
doCheck = false;
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "RyxILg7y+xYp5h4X2qoaSH9kOSsCmEncmkCCr7OLye4=";
|
||||
sha256 = "/piYT/1qqMNtBZS879ugPeObQtQeAHJRaAOE8870SSQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -31,7 +31,7 @@ python3.pkgs.buildPythonApplication rec {
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
mate.mate-menus
|
||||
mate-menus
|
||||
python3.pkgs.pygobject3
|
||||
];
|
||||
|
||||
|
@ -9,7 +9,6 @@
|
||||
, enchant
|
||||
, libxml2
|
||||
, python3
|
||||
, adwaita-icon-theme
|
||||
, gtksourceview4
|
||||
, libpeas
|
||||
, mate-desktop
|
||||
@ -19,11 +18,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pluma";
|
||||
version = "1.26.1";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "WVns49cRjhBmWfZNIC0O0XY60Qu7ul0qzYy/ui45lPE=";
|
||||
sha256 = "qorflYk0UJOlDjCyft5KeKJCHRcnwn9GX8h8Q1llodQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -37,7 +36,6 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
adwaita-icon-theme
|
||||
enchant
|
||||
gtksourceview4
|
||||
libpeas
|
||||
|
@ -3,19 +3,19 @@
|
||||
, fetchurl
|
||||
, pkg-config
|
||||
, gettext
|
||||
, caja
|
||||
, gtk3
|
||||
, mate
|
||||
, python3Packages
|
||||
, mateUpdateScript
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "python-caja";
|
||||
version = "1.26.0";
|
||||
version = "1.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://pub.mate-desktop.org/releases/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
|
||||
sha256 = "181zcs1pi3762chm4xraqs8048jm7jzwnvgwla1v3z2nqzpp3xr1";
|
||||
sha256 = "sFbCOdvf4z7QzIQx+zUAqTj3h7Weh19f+TV4umb2gNY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
@ -25,8 +25,8 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
caja
|
||||
gtk3
|
||||
mate.caja
|
||||
python3Packages.python
|
||||
python3Packages.pygobject3
|
||||
];
|
||||
|
@ -39,20 +39,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"tools"
|
||||
];
|
||||
|
||||
env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isGNU [
|
||||
"-Wno-error=deprecated-copy"
|
||||
"-Wno-error=pessimizing-move"
|
||||
# Needed with GCC 12
|
||||
"-Wno-error=format-truncation"
|
||||
"-Wno-error=maybe-uninitialized"
|
||||
] ++ lib.optionals stdenv.cc.isClang [
|
||||
"-Wno-error=unused-private-field"
|
||||
"-faligned-allocation"
|
||||
] ++ lib.optionals (lib.versionOlder finalAttrs.version "8") [
|
||||
"-Wno-error=unused-but-set-variable"
|
||||
] ++ lib.optionals (lib.versionOlder finalAttrs.version "7") [
|
||||
"-Wno-error=deprecated-copy"
|
||||
]);
|
||||
env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [
|
||||
"-faligned-allocation"
|
||||
]);
|
||||
|
||||
cmakeFlags = [
|
||||
"-DPORTABLE=1"
|
||||
@ -71,12 +60,25 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"-DUSE_RTTI=1"
|
||||
"-DROCKSDB_INSTALL_ON_WINDOWS=YES" # harmless elsewhere
|
||||
(lib.optional sse42Support "-DFORCE_SSE42=1")
|
||||
"-DFAIL_ON_WARNINGS=${if stdenv.hostPlatform.isMinGW then "NO" else "YES"}"
|
||||
"-DFAIL_ON_WARNINGS=NO"
|
||||
] ++ lib.optional (!enableShared) "-DROCKSDB_BUILD_SHARED=0";
|
||||
|
||||
# otherwise "cc1: error: -Wformat-security ignored without -Wformat [-Werror=format-security]"
|
||||
hardeningDisable = lib.optional stdenv.hostPlatform.isWindows "format";
|
||||
|
||||
postPatch = lib.optionalString (lib.versionOlder finalAttrs.version "8") ''
|
||||
# Fix gcc-13 build failures due to missing <cstdint> and
|
||||
# <system_error> includes, fixed upstyream sice 8.x
|
||||
sed -e '1i #include <cstdint>' -i db/compaction/compaction_iteration_stats.h
|
||||
sed -e '1i #include <cstdint>' -i table/block_based/data_block_hash_index.h
|
||||
sed -e '1i #include <cstdint>' -i util/string_util.h
|
||||
sed -e '1i #include <cstdint>' -i include/rocksdb/utilities/checkpoint.h
|
||||
'' + lib.optionalString (lib.versionOlder finalAttrs.version "7") ''
|
||||
# Fix gcc-13 build failures due to missing <cstdint> and
|
||||
# <system_error> includes, fixed upstyream sice 7.x
|
||||
sed -e '1i #include <system_error>' -i third-party/folly/folly/synchronization/detail/ProxyLockable-inl.h
|
||||
'';
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p $tools/bin
|
||||
cp tools/{ldb,sst_dump}${stdenv.hostPlatform.extensions.executable} $tools/bin/
|
||||
|
@ -31,7 +31,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "arviz";
|
||||
version = "0.17.0";
|
||||
version = "0.17.1";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@ -40,7 +40,7 @@ buildPythonPackage rec {
|
||||
owner = "arviz-devs";
|
||||
repo = "arviz";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-DqVwbiNJHdRxK3Ppfa6sqPJzDqMaj1mtlAJHFq09u2Y=";
|
||||
hash = "sha256-V0/yboKpK/4QuCOzKDiyFpu/J2JLu0aQxRZ+rpMS9eY=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "axis";
|
||||
version = "54";
|
||||
version = "55";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
||||
owner = "Kane610";
|
||||
repo = "axis";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-Atx9Lg0WgKcdnXqHieJFadjMPhK1F2qifSa89XxT8J8=";
|
||||
hash = "sha256-WId4+xLr6VD79r5K+fgrxfyJGWmobTMpYGGNkFrlerQ=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -9,6 +9,7 @@
|
||||
# native darwin dependencies
|
||||
, libiconv
|
||||
, Security
|
||||
, SystemConfiguration
|
||||
|
||||
# tests
|
||||
, pytestCheckHook
|
||||
@ -52,6 +53,7 @@ buildPythonPackage rec {
|
||||
buildInputs = lib.optionals stdenv.isDarwin [
|
||||
libiconv
|
||||
Security
|
||||
SystemConfiguration
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
@ -66,6 +68,9 @@ buildPythonPackage rec {
|
||||
disabledTests = [
|
||||
# fails to connect to local server
|
||||
"test_remote_stylesheet"
|
||||
] ++ lib.optionals (stdenv.isDarwin) [
|
||||
# pyo3_runtime.PanicException: event loop thread panicked
|
||||
"test_invalid_href"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
|
@ -1,24 +1,32 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, pythonRelaxDepsHook
|
||||
|
||||
# build-system
|
||||
, setuptools
|
||||
|
||||
# dependencies
|
||||
, calmjs
|
||||
, django-appconf
|
||||
, jinja2
|
||||
, rcssmin
|
||||
, rjsmin
|
||||
, django-appconf
|
||||
|
||||
# tests
|
||||
, beautifulsoup4
|
||||
, brotli
|
||||
, pytestCheckHook
|
||||
, django-sekizai
|
||||
, pytest-django
|
||||
, csscompressor
|
||||
, calmjs
|
||||
, jinja2
|
||||
, python
|
||||
, django-sekizai
|
||||
, pytestCheckHook
|
||||
, pytest-django
|
||||
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "django-compressor";
|
||||
version = "4.4";
|
||||
format = "setuptools";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
pname = "django_compressor";
|
||||
@ -26,7 +34,17 @@ buildPythonPackage rec {
|
||||
hash = "sha256-GwrMnPup9pvDjnxB2psNcKILyVWHtkP/75YJz0YGT2c=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
build-system = [
|
||||
setuptools
|
||||
pythonRelaxDepsHook
|
||||
];
|
||||
|
||||
pythonRelaxDeps = [
|
||||
"rcssmin"
|
||||
"rjsmin"
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
beautifulsoup4
|
||||
calmjs
|
||||
django-appconf
|
||||
@ -35,7 +53,9 @@ buildPythonPackage rec {
|
||||
rjsmin
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
env.DJANGO_SETTINGS_MODULE = "compressor.test_settings";
|
||||
|
||||
nativeCheckInputs = [
|
||||
beautifulsoup4
|
||||
brotli
|
||||
csscompressor
|
||||
@ -53,8 +73,6 @@ buildPythonPackage rec {
|
||||
|
||||
pythonImportsCheck = [ "compressor" ];
|
||||
|
||||
DJANGO_SETTINGS_MODULE = "compressor.test_settings";
|
||||
|
||||
meta = with lib; {
|
||||
description = "Compresses linked and inline JavaScript or CSS into single cached files";
|
||||
homepage = "https://django-compressor.readthedocs.org/";
|
||||
|
@ -1,46 +1,63 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
, hatchling
|
||||
, django
|
||||
, freezegun
|
||||
, pythonOlder
|
||||
, qrcode
|
||||
, pytest
|
||||
, python
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "django-otp";
|
||||
version = "1.1.3";
|
||||
format = "setuptools";
|
||||
disabled = pythonOlder "3";
|
||||
version = "1.3.0post1";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "django-otp";
|
||||
repo = "django-otp";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-Ac9p7q9yaUr3WTTGxCY16Yo/Z8i1RtnD2g0Aj2pqSXY=";
|
||||
hash = "sha256-Q8YTCYERyoAXenSiDabxuxaWiD6ZeJKKKgaR/Rg3y20=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs manage.py
|
||||
'';
|
||||
build-system = [
|
||||
hatchling
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
dependencies = [
|
||||
django
|
||||
qrcode
|
||||
];
|
||||
|
||||
env.DJANGO_SETTINGS_MODUOLE = "test.test_project.settings";
|
||||
|
||||
nativeCheckInputs = [
|
||||
freezegun
|
||||
pytest
|
||||
];
|
||||
|
||||
checkPhase = ''
|
||||
./manage.py test django_otp
|
||||
runHook preCheck
|
||||
|
||||
export PYTHONPATH=$PYTHONPATH:test
|
||||
export DJANGO_SETTINGS_MODULE=test_project.settings
|
||||
${python.interpreter} -m django test django_otp
|
||||
|
||||
runHook postCheck
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "django_otp" ];
|
||||
pytestFlagsArray = [
|
||||
"src/django_otp/test.py"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"django_otp"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/jazzband/django-model-utils";
|
||||
homepage = "https://github.com/django-otp/django-otp";
|
||||
changelog = "https://github.com/django-otp/django-otp/blob/${src.rev}/CHANGES.rst";
|
||||
description = "Pluggable framework for adding two-factor authentication to Django using one-time passwords";
|
||||
license = licenses.bsd2;
|
||||
maintainers = with maintainers; [ ];
|
||||
|
@ -1,25 +1,37 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchFromGitHub
|
||||
|
||||
# build-system
|
||||
, setuptools
|
||||
|
||||
# dependencies
|
||||
, django
|
||||
, django-appconf
|
||||
|
||||
# tests
|
||||
, pytest-django
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "django-statici18n";
|
||||
version = "2.3.1";
|
||||
format = "setuptools";
|
||||
version = "2.4.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "zyegfryed";
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-2fFJJNdF0jspS7djDL8sToPTetzNR6pfNp5ohCNa30I=";
|
||||
repo = "django-statici18n";
|
||||
# https://github.com/zyegfryed/django-statici18n/issues/59
|
||||
rev = "9b83a8f0f2e625dd5f56d53cfe4e07aca9479ab6";
|
||||
hash = "sha256-KrIlWmN7um9ad2avfANOza579bjYkxTo9F0UFpvLu3A=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
build-system = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
django
|
||||
django-appconf
|
||||
];
|
||||
@ -28,7 +40,7 @@ buildPythonPackage rec {
|
||||
"statici18n"
|
||||
];
|
||||
|
||||
DJANGO_SETTINGS_MODULE = "tests.test_project.project.settings";
|
||||
env.DJANGO_SETTINGS_MODULE = "tests.test_project.project.settings";
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-django
|
||||
|
@ -25,7 +25,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "jsonargparse";
|
||||
version = "4.27.5";
|
||||
version = "4.27.6";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.11";
|
||||
@ -34,7 +34,7 @@ buildPythonPackage rec {
|
||||
owner = "omni-us";
|
||||
repo = "jsonargparse";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-MSvgOF/5X78HSSRvv1TBmaYZgcUVMKGaHfzXu3lIGVY=";
|
||||
hash = "sha256-N34DRWty3QiXDPpHGUvLpQXtU4TQHxI32rizcwQdHBU=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "langchain-core";
|
||||
version = "0.1.31";
|
||||
version = "0.1.32";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||
src = fetchPypi {
|
||||
pname = "langchain_core";
|
||||
inherit version;
|
||||
hash = "sha256-1mDPIJu2zmHLHIUxB7CRqqgJAVpV3Ongzhm1HUyPKnA=";
|
||||
hash = "sha256-1iaDvsvyD1HxKHV5GgQjIPReqgyHomfTC8A7waB/XsI=";
|
||||
};
|
||||
|
||||
pythonRelaxDeps = [
|
||||
|
@ -15,7 +15,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "langsmith";
|
||||
version = "0.1.23";
|
||||
version = "0.1.26";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
@ -24,7 +24,7 @@ buildPythonPackage rec {
|
||||
owner = "langchain-ai";
|
||||
repo = "langsmith-sdk";
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-AiXTIk20T9symFUenCxnOUXhyNAkffbEt8acEU0EMBg=";
|
||||
hash = "sha256-bvG4B7xUESbj3iX/SjsManv4itR2kkfixzxkKuZgPfw=";
|
||||
};
|
||||
|
||||
sourceRoot = "${src.name}/python";
|
||||
|
@ -59,7 +59,7 @@ rec {
|
||||
|
||||
mypy-boto3-amp = buildMypyBoto3Package "amp" "1.34.39" "sha256-XOousDfEQsZ9z48iH2wVHuUaIwoECwbkHvIAlV3+zu4=";
|
||||
|
||||
mypy-boto3-amplify = buildMypyBoto3Package "amplify" "1.34.45" "sha256-hV0fg6Y39NkZ6Qa6GyIYicMERjCBAjZYcSsJ+1jXAfA=";
|
||||
mypy-boto3-amplify = buildMypyBoto3Package "amplify" "1.34.63" "sha256-alOtCCZwBcx6g3lm80AzI5aF8WbEABd44A0e6gfZ42o=";
|
||||
|
||||
mypy-boto3-amplifybackend = buildMypyBoto3Package "amplifybackend" "1.34.0" "sha256-wP6fOHAUg4dvrlQ2rUNk/lgIr6JnpWu/0Tr2prTckOk=";
|
||||
|
||||
@ -105,7 +105,7 @@ rec {
|
||||
|
||||
mypy-boto3-autoscaling-plans = buildMypyBoto3Package "autoscaling-plans" "1.34.0" "sha256-16siojcxNe5MuSZSRJXPAz2UudJozEEyCYUrsGNDAM8=";
|
||||
|
||||
mypy-boto3-backup = buildMypyBoto3Package "backup" "1.34.0" "sha256-H4wIDyA+/6sH6X5zp/HGP2vfWIY5HzgTfa1ThXfXwYM=";
|
||||
mypy-boto3-backup = buildMypyBoto3Package "backup" "1.34.64" "sha256-RvxhEmrOtkvagjaj8x2H7AAp+uK9qDIDe7T9p52rKRc=";
|
||||
|
||||
mypy-boto3-backup-gateway = buildMypyBoto3Package "backup-gateway" "1.34.0" "sha256-nSIEEDKJfI852/WBQ7OuDPuVijEiMr1vhpkzODbhRRc=";
|
||||
|
||||
@ -161,7 +161,7 @@ rec {
|
||||
|
||||
mypy-boto3-codeartifact = buildMypyBoto3Package "codeartifact" "1.34.0" "sha256-iUgoanqMSyxRopVctyFLiu+otFSgRvdgQPw4mKX3QIk=";
|
||||
|
||||
mypy-boto3-codebuild = buildMypyBoto3Package "codebuild" "1.34.59" "sha256-dkX5QeHjfBrY8mU+/5tKVkJlqAodBYqkW8oei1iqTl0=";
|
||||
mypy-boto3-codebuild = buildMypyBoto3Package "codebuild" "1.34.64" "sha256-ZsTKKDanTLB4jFOGLQTLPEterhabpShrchHvvWcUBMo=";
|
||||
|
||||
mypy-boto3-codecatalyst = buildMypyBoto3Package "codecatalyst" "1.34.0" "sha256-TsXVy8bx6kaj84PJiNNU+075Tx3WW0mrtZFOyLx9yT4=";
|
||||
|
||||
@ -197,7 +197,7 @@ rec {
|
||||
|
||||
mypy-boto3-config = buildMypyBoto3Package "config" "1.34.45" "sha256-LN1CcIOj9cgzSNCvnUVwLRNPXlitHAlt+5jj6wu6i8E=";
|
||||
|
||||
mypy-boto3-connect = buildMypyBoto3Package "connect" "1.34.61" "sha256-LbiRcZWmULytWtEy0J2mXqQtHofbbfbRV2PyvEFcRfA=";
|
||||
mypy-boto3-connect = buildMypyBoto3Package "connect" "1.34.64" "sha256-ijgvxHI9taQXYZa1d4yLMp63bCrEFfE0Ug/vmKUGaNM=";
|
||||
|
||||
mypy-boto3-connect-contact-lens = buildMypyBoto3Package "connect-contact-lens" "1.34.0" "sha256-Wx9vcjlgXdWZ2qP3Y/hTY2LAeTd+hyyV5JSIuKQ5I5k=";
|
||||
|
||||
@ -251,9 +251,9 @@ rec {
|
||||
|
||||
mypy-boto3-ebs = buildMypyBoto3Package "ebs" "1.34.0" "sha256-xIrrXOayZed+Jcn4CFXXNgKz/G+RdiuwA04wq+Ry/fs=";
|
||||
|
||||
mypy-boto3-ec2 = buildMypyBoto3Package "ec2" "1.34.61" "sha256-rRK8Q3zUJuelfYvaUhrqxbsFUn1Xl6oxCahaRhI3+W8=";
|
||||
mypy-boto3-ec2 = buildMypyBoto3Package "ec2" "1.34.64" "sha256-fDsnEbTo5UAgPGCoUqGbvk68+9RNN8qZpScW7t/Bq+Q=";
|
||||
|
||||
mypy-boto3-ec2-instance-connect = buildMypyBoto3Package "ec2-instance-connect" "1.34.0" "sha256-95TXW9HJHciM+lZCdlUYOwcLhkKE8RJpRx9/dEnu3FU=";
|
||||
mypy-boto3-ec2-instance-connect = buildMypyBoto3Package "ec2-instance-connect" "1.34.63" "sha256-kExmGXEJ5jrvOewmWx7AjVb3boD5GU0cEUp/2PQhzlw=";
|
||||
|
||||
mypy-boto3-ecr = buildMypyBoto3Package "ecr" "1.34.0" "sha256-uD+wMR6WikLUyoIbAGwY1KPj42S4zr7nWOpPqXxaw0U=";
|
||||
|
||||
@ -275,7 +275,7 @@ rec {
|
||||
|
||||
mypy-boto3-elb = buildMypyBoto3Package "elb" "1.34.0" "sha256-5Eh5D872pVDd7Q+DDh3zpGMVgS8fUJsV+63H1fet73s=";
|
||||
|
||||
mypy-boto3-elbv2 = buildMypyBoto3Package "elbv2" "1.34.32" "sha256-jDrQb4A0PVBSxH7vuPXehpEYdU8Hwgv2Sc2+j0OGVJg=";
|
||||
mypy-boto3-elbv2 = buildMypyBoto3Package "elbv2" "1.34.63" "sha256-snXMLMHLEpJjfX1GJp6FfYgIjkS8vkbf/hESBdhxIfk=";
|
||||
|
||||
mypy-boto3-emr = buildMypyBoto3Package "emr" "1.34.44" "sha256-zM1VpAaBSxqdZiSrNiaAKfvliNRXMLEmvFvXcFmkZO0=";
|
||||
|
||||
@ -297,7 +297,7 @@ rec {
|
||||
|
||||
mypy-boto3-firehose = buildMypyBoto3Package "firehose" "1.34.46" "sha256-Fgs7wrwKPK79cYduCR/RYQ2FEZvghDuWI1hXKzFLfJo=";
|
||||
|
||||
mypy-boto3-fis = buildMypyBoto3Package "fis" "1.34.0" "sha256-0TJ7iAF9hTOiKoW305p8a5fE0lZrdtoFDj/jjZzfdf0=";
|
||||
mypy-boto3-fis = buildMypyBoto3Package "fis" "1.34.63" "sha256-TJnzgQGDcybpVqg+p7Tuvw/RoY79cQPPChyHWlMxhiY=";
|
||||
|
||||
mypy-boto3-fms = buildMypyBoto3Package "fms" "1.34.0" "sha256-tzaSecIXzkC+Zr5MGpU7GaoiGHGsywEglZ8+Ja0XDDo=";
|
||||
|
||||
@ -411,7 +411,7 @@ rec {
|
||||
|
||||
mypy-boto3-kinesisanalytics = buildMypyBoto3Package "kinesisanalytics" "1.34.0" "sha256-eEoSmwMTa/hsbKbuKuzAZv4jHljGKq3b5Rw7K2Pgc50=";
|
||||
|
||||
mypy-boto3-kinesisanalyticsv2 = buildMypyBoto3Package "kinesisanalyticsv2" "1.34.62" "sha256-bL6EKRjfIIUUIMSpoE0BWeAg3xb2xbKi8NBpHSaEEFg=";
|
||||
mypy-boto3-kinesisanalyticsv2 = buildMypyBoto3Package "kinesisanalyticsv2" "1.34.64" "sha256-7sJyrWtBcbrWlCjR7pLdBLgW7sXcRazDPBW+OGwh4Xg=";
|
||||
|
||||
mypy-boto3-kinesisvideo = buildMypyBoto3Package "kinesisvideo" "1.34.48" "sha256-uYSkwOuYKF3B+sj5IWbDL789Xue2yNY9g14j/2b6k6w=";
|
||||
|
||||
@ -581,7 +581,7 @@ rec {
|
||||
|
||||
mypy-boto3-rbin = buildMypyBoto3Package "rbin" "1.34.0" "sha256-Y+a/p3r5IgWk4oH6MOeq0e7rMiNvLCqoz1ZE+xXNtOw=";
|
||||
|
||||
mypy-boto3-rds = buildMypyBoto3Package "rds" "1.34.58" "sha256-P3s5qNAV9UG6fMSxvkUevKACU3FGjhOne1D0LRi/eMk=";
|
||||
mypy-boto3-rds = buildMypyBoto3Package "rds" "1.34.63" "sha256-1JsO69vElUUgZlDNejuZz8x7bPCtHkZAG1qEtvg+O5E=";
|
||||
|
||||
mypy-boto3-rds-data = buildMypyBoto3Package "rds-data" "1.34.6" "sha256-d+WXt3cSUe5ZxynSjPSJxXgv6evP/rhZrX1ua9rtSx8=";
|
||||
|
||||
@ -619,13 +619,13 @@ rec {
|
||||
|
||||
mypy-boto3-rum = buildMypyBoto3Package "rum" "1.34.49" "sha256-Mq2H+13cjxYRwFfxJpWTAb+W5bx+Vew+jl+zbreRIkQ=";
|
||||
|
||||
mypy-boto3-s3 = buildMypyBoto3Package "s3" "1.34.62" "sha256-HWDLEJB667VrTYZYircK5C23oRSGnwWLu7tNWG6yLm0=";
|
||||
mypy-boto3-s3 = buildMypyBoto3Package "s3" "1.34.64" "sha256-6yjHKgKA6lOpr4yEmjm2RR2At+YQwfrhWR7o79OhkNM=";
|
||||
|
||||
mypy-boto3-s3control = buildMypyBoto3Package "s3control" "1.34.18" "sha256-53s5ii1gFX9toigiazEtS5Jogg3VFFr+1/uiLzoU7Uo=";
|
||||
|
||||
mypy-boto3-s3outposts = buildMypyBoto3Package "s3outposts" "1.34.0" "sha256-xLuGP9Fe0S7zRimt1AKd9KOrytmNd/GTRg5OVi5Xpos=";
|
||||
|
||||
mypy-boto3-sagemaker = buildMypyBoto3Package "sagemaker" "1.34.53" "sha256-IgZzJstoOg1wzucKqPBx47baLbagrUk1kW4P8cI++cg=";
|
||||
mypy-boto3-sagemaker = buildMypyBoto3Package "sagemaker" "1.34.64" "sha256-Sf1T1aqRMIEZmuA2KH5tzuhTDN8yfFID/+h0DCWxws0=";
|
||||
|
||||
mypy-boto3-sagemaker-a2i-runtime = buildMypyBoto3Package "sagemaker-a2i-runtime" "1.34.0" "sha256-jMZ3aWKQPhNec4A/02S1waQi6Mx9JVdENc3kblhsKjA=";
|
||||
|
||||
@ -647,7 +647,7 @@ rec {
|
||||
|
||||
mypy-boto3-sdb = buildMypyBoto3Package "sdb" "1.34.0" "sha256-13BuAQD8uDwwDhCw+8O3V882H6/oor5Z8mBmjb7HHAU=";
|
||||
|
||||
mypy-boto3-secretsmanager = buildMypyBoto3Package "secretsmanager" "1.34.43" "sha256-q79WB3XC/g3Dg7f3DBahv3U9mz/8DKpeNUR+aFeDpos=";
|
||||
mypy-boto3-secretsmanager = buildMypyBoto3Package "secretsmanager" "1.34.63" "sha256-oZM3PXGPdH1Th4tcx/7y6bj944kuR4isaQ/SsWo1Vkw=";
|
||||
|
||||
mypy-boto3-securityhub = buildMypyBoto3Package "securityhub" "1.34.20" "sha256-EcLY5SXSN2kJEuo8s2sYJJfq/X78BM1msyI9TfYD7Xw=";
|
||||
|
||||
|
44
pkgs/development/python-modules/paypalrestsdk/default.nix
Normal file
44
pkgs/development/python-modules/paypalrestsdk/default.nix
Normal file
@ -0,0 +1,44 @@
|
||||
{ buildPythonPackage
|
||||
, fetchPypi
|
||||
|
||||
# build-system
|
||||
, setuptools
|
||||
|
||||
# dependencies
|
||||
, pyopenssl
|
||||
, requests
|
||||
, six
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "paypalrestsdk";
|
||||
version = "1.13.2";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-kZUfNtsw1oW5ceFASYSRo1bPHfjv9xZWYDrKTtcs81o=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
pyopenssl
|
||||
requests
|
||||
six
|
||||
];
|
||||
|
||||
doCheck = false; # no tests
|
||||
|
||||
pythonImportsCheck = [
|
||||
"paypalrestsdk"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = "https://developer.paypal.com/";
|
||||
description = "Python APIs to create, process and manage payment";
|
||||
license = "PayPal SDK License";
|
||||
};
|
||||
}
|
@ -32,14 +32,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "streamlit";
|
||||
version = "1.32.1";
|
||||
version = "1.32.2";
|
||||
pyproject = true;
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-7GQASW9niFIUPLwjxMQ4ifeLbJPC4nVv2OBgzM3kuP0=";
|
||||
hash = "sha256-Eli5y8P/lXv30Jsb/IXO3DCPEGWzB0hUUpWpr41Vd6s=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
47
pkgs/development/python-modules/wallet-py3k/default.nix
Normal file
47
pkgs/development/python-modules/wallet-py3k/default.nix
Normal file
@ -0,0 +1,47 @@
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, substituteAll
|
||||
, openssl
|
||||
, setuptools
|
||||
, six
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "wallet-py3k";
|
||||
version = "0.0.4";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-kyHSh8qHbzK6gFLGnL6dUJ/GLJHTNC86jjXa/APqIzI=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./openssl-path.patch;
|
||||
openssl = lib.getExe openssl;
|
||||
})
|
||||
];
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
six
|
||||
];
|
||||
|
||||
doCheck = false; # no tests
|
||||
|
||||
pythonImportsCheck = [
|
||||
"wallet"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Passbook file generator";
|
||||
homepage = "https://pypi.org/project/wallet-py3k";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ hexa ];
|
||||
};
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
diff --git a/wallet/models.py b/wallet/models.py
|
||||
index 1b75402..ad115de 100644
|
||||
--- a/wallet/models.py
|
||||
+++ b/wallet/models.py
|
||||
@@ -320,7 +320,7 @@ class Pass(object):
|
||||
def _createSignature(self, manifest, certificate, key,
|
||||
wwdr_certificate, password):
|
||||
openssl_cmd = [
|
||||
- 'openssl',
|
||||
+ '@openssl@',
|
||||
'smime',
|
||||
'-binary',
|
||||
'-sign',
|
@ -184,4 +184,13 @@ rec {
|
||||
aarch64-darwin = "d64947fee370a3b111f170399969977959848f2a2f544a1ae5dc081fc2df75cf";
|
||||
headers = "1lrwc03ffrf4bi2faampkx7yg0iqsrcp86znp9fw6ajwdwgqsc81";
|
||||
};
|
||||
|
||||
electron_29-bin = mkElectron "29.1.4" {
|
||||
armv7l-linux = "12a7e6a8ef214d104ee72eb6636a055c9c6d41bcc58f31a8dc48b9bc8fd0fcb5";
|
||||
aarch64-linux = "0d41a51d45712d0312dd24d79a395e80280bd8365ebb8e46c252cadcb780354b";
|
||||
x86_64-linux = "83a37103b67378a9073898541cfc4af8b5de708da15135f060bf26993ab426b5";
|
||||
x86_64-darwin = "e7887396018840ca482eb481edbff2e9a5580998412ffd217f70fad02f23969d";
|
||||
aarch64-darwin = "7ad63253fd6de9dbb337efbf4a6d0161f0e4c5953243bec27de488db98ef8a6c";
|
||||
headers = "0plc831v1fva2yrwg1zal5n9wkgy0f6v1by6b3jh8wjgrsrkhk00";
|
||||
};
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user