commit
7b601ada77
@ -1,181 +0,0 @@ |
||||
{ config, lib, pkgs, ... }: |
||||
let |
||||
cfg = config.services.dendrite; |
||||
settingsFormat = pkgs.formats.yaml { }; |
||||
configurationYaml = settingsFormat.generate "dendrite.yaml" cfg.settings; |
||||
workingDir = "/var/lib/dendrite"; |
||||
in |
||||
{ |
||||
options.services.dendrite = { |
||||
enable = lib.mkEnableOption "matrix.org dendrite"; |
||||
httpPort = lib.mkOption { |
||||
type = lib.types.nullOr lib.types.port; |
||||
default = 8008; |
||||
description = '' |
||||
The port to listen for HTTP requests on. |
||||
''; |
||||
}; |
||||
httpsPort = lib.mkOption { |
||||
type = lib.types.nullOr lib.types.port; |
||||
default = null; |
||||
description = '' |
||||
The port to listen for HTTPS requests on. |
||||
''; |
||||
}; |
||||
tlsCert = lib.mkOption { |
||||
type = lib.types.nullOr lib.types.path; |
||||
example = "/var/lib/dendrite/server.cert"; |
||||
default = null; |
||||
description = '' |
||||
The path to the TLS certificate. |
||||
|
||||
<programlisting> |
||||
nix-shell -p dendrite --command "generate-keys --tls-cert server.crt --tls-key server.key" |
||||
</programlisting> |
||||
''; |
||||
}; |
||||
tlsKey = lib.mkOption { |
||||
type = lib.types.nullOr lib.types.path; |
||||
example = "/var/lib/dendrite/server.key"; |
||||
default = null; |
||||
description = '' |
||||
The path to the TLS key. |
||||
|
||||
<programlisting> |
||||
nix-shell -p dendrite --command "generate-keys --tls-cert server.crt --tls-key server.key" |
||||
</programlisting> |
||||
''; |
||||
}; |
||||
environmentFile = lib.mkOption { |
||||
type = lib.types.nullOr lib.types.path; |
||||
example = "/var/lib/dendrite/registration_secret"; |
||||
default = null; |
||||
description = '' |
||||
Environment file as defined in <citerefentry> |
||||
<refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum> |
||||
</citerefentry>. |
||||
Secrets may be passed to the service without adding them to the world-readable |
||||
Nix store, by specifying placeholder variables as the option value in Nix and |
||||
setting these variables accordingly in the environment file. Currently only used |
||||
for the registration secret to allow secure registration when |
||||
client_api.registration_disabled is true. |
||||
|
||||
<programlisting> |
||||
# snippet of dendrite-related config |
||||
services.dendrite.settings.client_api.registration_shared_secret = "$REGISTRATION_SHARED_SECRET"; |
||||
</programlisting> |
||||
|
||||
<programlisting> |
||||
# content of the environment file |
||||
REGISTRATION_SHARED_SECRET=verysecretpassword |
||||
</programlisting> |
||||
|
||||
Note that this file needs to be available on the host on which |
||||
<literal>dendrite</literal> is running. |
||||
''; |
||||
}; |
||||
settings = lib.mkOption { |
||||
type = lib.types.submodule { |
||||
freeformType = settingsFormat.type; |
||||
options.global = { |
||||
server_name = lib.mkOption { |
||||
type = lib.types.str; |
||||
example = "example.com"; |
||||
description = '' |
||||
The domain name of the server, with optional explicit port. |
||||
This is used by remote servers to connect to this server. |
||||
This is also the last part of your UserID. |
||||
''; |
||||
}; |
||||
private_key = lib.mkOption { |
||||
type = lib.types.path; |
||||
example = "${workingDir}/matrix_key.pem"; |
||||
description = '' |
||||
The path to the signing private key file, used to sign |
||||
requests and events. |
||||
|
||||
<programlisting> |
||||
nix-shell -p dendrite --command "generate-keys --private-key matrix_key.pem" |
||||
</programlisting> |
||||
''; |
||||
}; |
||||
trusted_third_party_id_servers = lib.mkOption { |
||||
type = lib.types.listOf lib.types.str; |
||||
example = [ "matrix.org" ]; |
||||
default = [ "matrix.org" "vector.im" ]; |
||||
description = '' |
||||
Lists of domains that the server will trust as identity |
||||
servers to verify third party identifiers such as phone |
||||
numbers and email addresses |
||||
''; |
||||
}; |
||||
}; |
||||
options.client_api = { |
||||
registration_disabled = lib.mkOption { |
||||
type = lib.types.bool; |
||||
default = true; |
||||
description = '' |
||||
Whether to disable user registration to the server |
||||
without the shared secret. |
||||
''; |
||||
}; |
||||
}; |
||||
}; |
||||
default = { }; |
||||
description = '' |
||||
Configuration for dendrite, see: |
||||
<link xlink:href="https://github.com/matrix-org/dendrite/blob/master/dendrite-config.yaml"/> |
||||
for available options with which to populate settings. |
||||
''; |
||||
}; |
||||
}; |
||||
|
||||
config = lib.mkIf cfg.enable { |
||||
assertions = [{ |
||||
assertion = cfg.httpsPort != null -> (cfg.tlsCert != null && cfg.tlsKey != null); |
||||
message = '' |
||||
If Dendrite is configured to use https, tlsCert and tlsKey must be provided. |
||||
|
||||
nix-shell -p dendrite --command "generate-keys --tls-cert server.crt --tls-key server.key" |
||||
''; |
||||
}]; |
||||
|
||||
systemd.services.dendrite = { |
||||
description = "Dendrite Matrix homeserver"; |
||||
after = [ |
||||
"network.target" |
||||
]; |
||||
wantedBy = [ "multi-user.target" ]; |
||||
serviceConfig = { |
||||
Type = "simple"; |
||||
DynamicUser = true; |
||||
StateDirectory = "dendrite"; |
||||
WorkingDirectory = workingDir; |
||||
RuntimeDirectory = "dendrite"; |
||||
RuntimeDirectoryMode = "0700"; |
||||
EnvironmentFile = lib.mkIf (cfg.environmentFile != null) cfg.environmentFile; |
||||
ExecStartPre = |
||||
if (cfg.environmentFile != null) then '' |
||||
${pkgs.envsubst}/bin/envsubst \ |
||||
-i ${configurationYaml} \ |
||||
-o /run/dendrite/dendrite.yaml |
||||
'' else '' |
||||
${pkgs.coreutils}/bin/cp ${configurationYaml} /run/dendrite/dendrite.yaml |
||||
''; |
||||
ExecStart = lib.strings.concatStringsSep " " ([ |
||||
"${pkgs.dendrite}/bin/dendrite-monolith-server" |
||||
"--config /run/dendrite/dendrite.yaml" |
||||
] ++ lib.optionals (cfg.httpPort != null) [ |
||||
"--http-bind-address :${builtins.toString cfg.httpPort}" |
||||
] ++ lib.optionals (cfg.httpsPort != null) [ |
||||
"--https-bind-address :${builtins.toString cfg.httpsPort}" |
||||
"--tls-cert ${cfg.tlsCert}" |
||||
"--tls-key ${cfg.tlsKey}" |
||||
]); |
||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; |
||||
Restart = "on-failure"; |
||||
}; |
||||
}; |
||||
}; |
||||
meta.maintainers = lib.teams.matrix.members; |
||||
} |
@ -1,99 +0,0 @@ |
||||
import ./make-test-python.nix ( |
||||
{ pkgs, ... }: |
||||
let |
||||
homeserverUrl = "http://homeserver:8008"; |
||||
|
||||
private_key = pkgs.runCommand "matrix_key.pem" { |
||||
buildInputs = [ pkgs.dendrite ]; |
||||
} "generate-keys --private-key $out"; |
||||
in |
||||
{ |
||||
name = "dendrite"; |
||||
meta = with pkgs.lib; { |
||||
maintainers = teams.matrix.members; |
||||
}; |
||||
|
||||
nodes = { |
||||
homeserver = { pkgs, ... }: { |
||||
services.dendrite = { |
||||
enable = true; |
||||
settings = { |
||||
global.server_name = "test-dendrite-server.com"; |
||||
global.private_key = private_key; |
||||
client_api.registration_disabled = false; |
||||
}; |
||||
}; |
||||
|
||||
networking.firewall.allowedTCPPorts = [ 8008 ]; |
||||
}; |
||||
|
||||
client = { pkgs, ... }: { |
||||
environment.systemPackages = [ |
||||
( |
||||
pkgs.writers.writePython3Bin "do_test" |
||||
{ libraries = [ pkgs.python3Packages.matrix-nio ]; } '' |
||||
import asyncio |
||||
|
||||
from nio import AsyncClient |
||||
|
||||
|
||||
async def main() -> None: |
||||
# Connect to dendrite |
||||
client = AsyncClient("http://homeserver:8008", "alice") |
||||
|
||||
# Register as user alice |
||||
response = await client.register("alice", "my-secret-password") |
||||
|
||||
# Log in as user alice |
||||
response = await client.login("my-secret-password") |
||||
|
||||
# Create a new room |
||||
response = await client.room_create(federate=False) |
||||
room_id = response.room_id |
||||
|
||||
# Join the room |
||||
response = await client.join(room_id) |
||||
|
||||
# Send a message to the room |
||||
response = await client.room_send( |
||||
room_id=room_id, |
||||
message_type="m.room.message", |
||||
content={ |
||||
"msgtype": "m.text", |
||||
"body": "Hello world!" |
||||
} |
||||
) |
||||
|
||||
# Sync responses |
||||
response = await client.sync(timeout=30000) |
||||
|
||||
# Check the message was received by dendrite |
||||
last_message = response.rooms.join[room_id].timeline.events[-1].body |
||||
assert last_message == "Hello world!" |
||||
|
||||
# Leave the room |
||||
response = await client.room_leave(room_id) |
||||
|
||||
# Close the client |
||||
await client.close() |
||||
|
||||
asyncio.get_event_loop().run_until_complete(main()) |
||||
'' |
||||
) |
||||
]; |
||||
}; |
||||
}; |
||||
|
||||
testScript = '' |
||||
start_all() |
||||
|
||||
with subtest("start the homeserver"): |
||||
homeserver.wait_for_unit("dendrite.service") |
||||
homeserver.wait_for_open_port(8008) |
||||
|
||||
with subtest("ensure messages can be exchanged"): |
||||
client.succeed("do_test") |
||||
''; |
||||
|
||||
} |
||||
) |
@ -1,32 +0,0 @@ |
||||
--- a/whipper/program/cdparanoia.py
|
||||
+++ b/whipper/program/cdparanoia.py
|
||||
@@ -280,10 +280,10 @@
|
||||
|
||||
bufsize = 1024
|
||||
if self._overread:
|
||||
- argv = ["cd-paranoia", "--stderr-progress",
|
||||
+ argv = ["@cdparanoia@/bin/cdparanoia", "--stderr-progress",
|
||||
"--sample-offset=%d" % self._offset, "--force-overread", ]
|
||||
else:
|
||||
- argv = ["cd-paranoia", "--stderr-progress",
|
||||
+ argv = ["@cdparanoia@/bin/cdparanoia", "--stderr-progress",
|
||||
"--sample-offset=%d" % self._offset, ]
|
||||
if self._device:
|
||||
argv.extend(["--force-cdrom-device", self._device, ])
|
||||
@@ -560,7 +560,7 @@
|
||||
|
||||
def getCdParanoiaVersion():
|
||||
getter = common.VersionGetter('cd-paranoia',
|
||||
- ["cd-paranoia", "-V"],
|
||||
+ ["@cdparanoia@/bin/cdparanoia", "-V"],
|
||||
_VERSION_RE,
|
||||
"%(version)s %(release)s")
|
||||
|
||||
@@ -585,7 +585,7 @@
|
||||
def __init__(self, device=None):
|
||||
# cdparanoia -A *always* writes cdparanoia.log
|
||||
self.cwd = tempfile.mkdtemp(suffix='.whipper.cache')
|
||||
- self.command = ['cd-paranoia', '-A']
|
||||
+ self.command = ['@cdparanoia@/bin/cdparanoia', '-A']
|
||||
if device:
|
||||
self.command += ['-d', device]
|
@ -1,15 +0,0 @@ |
||||
Subject: Prevent "-dirty" from being erroneously added to the version
|
||||
|
||||
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||
index d36d1a3..00048fc 100644
|
||||
--- a/src/Makefile.am
|
||||
+++ b/src/Makefile.am
|
||||
@@ -28,7 +28,7 @@ always:
|
||||
# Always rebuild because .git/HEAD is a symbolic ref one can't depend on
|
||||
StellarCoreVersion.h: always
|
||||
@vers=$$(cd "$(srcdir)" \
|
||||
- && git describe --always --dirty --tags 2>/dev/null \
|
||||
+ && git describe --always --tags 2>/dev/null \
|
||||
|| echo "$(PACKAGE) $(VERSION)"); \
|
||||
echo "#define STELLAR_CORE_VERSION \"$$vers\"" > $@~
|
||||
@if cmp -s $@~ $@; then rm -f $@~; else \
|
@ -1,35 +0,0 @@ |
||||
From 5dd2593369645b11a9dc03e1930617d2f5dbd039 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io>
|
||||
Date: Wed, 11 Nov 2020 11:48:49 +0100
|
||||
Subject: [PATCH] hardcode json file path
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Jörg Thalheim <joerg@thalheim.io>
|
||||
---
|
||||
wee_slack.py | 8 +-------
|
||||
1 file changed, 1 insertion(+), 7 deletions(-)
|
||||
|
||||
diff --git a/wee_slack.py b/wee_slack.py
|
||||
index a3d779c..5942289 100644
|
||||
--- a/wee_slack.py
|
||||
+++ b/wee_slack.py
|
||||
@@ -5136,13 +5136,7 @@ def create_slack_debug_buffer():
|
||||
|
||||
def load_emoji():
|
||||
try:
|
||||
- weechat_dir = w.info_get('weechat_dir', '')
|
||||
- weechat_sharedir = w.info_get('weechat_sharedir', '')
|
||||
- local_weemoji, global_weemoji = ('{}/weemoji.json'.format(path)
|
||||
- for path in (weechat_dir, weechat_sharedir))
|
||||
- path = (global_weemoji if os.path.exists(global_weemoji) and
|
||||
- not os.path.exists(local_weemoji) else local_weemoji)
|
||||
- with open(path, 'r') as ef:
|
||||
+ with open('@out@/share/wee-slack/weemoji.json', 'r') as ef:
|
||||
emojis = json.loads(ef.read())
|
||||
if 'emoji' in emojis:
|
||||
print_error('The weemoji.json file is in an old format. Please update it.')
|
||||
--
|
||||
2.29.0
|
||||
|
@ -1,13 +1,13 @@ |
||||
diff --git a/wee_slack.py b/wee_slack.py
|
||||
index dbe6446..d1b7546 100644
|
||||
index e4716b4..f673b7c 100644
|
||||
--- a/wee_slack.py
|
||||
+++ b/wee_slack.py
|
||||
@@ -25,6 +25,8 @@ import random
|
||||
import socket
|
||||
import string
|
||||
@@ -31,6 +31,8 @@ import string
|
||||
# See https://github.com/numpy/numpy/issues/11925
|
||||
sys.modules["numpy"] = None
|
||||
|
||||
+sys.path.append('@env@')
|
||||
+
|
||||
from websocket import ABNF, create_connection, WebSocketConnectionClosedException
|
||||
|
||||
try:
|
||||
from websocket import ( # noqa: E402
|
||||
ABNF,
|
||||
create_connection,
|
||||
|
@ -0,0 +1,25 @@ |
||||
diff --git a/wee_slack.py b/wee_slack.py
|
||||
index e4716b4..ffd122d 100644
|
||||
--- a/wee_slack.py
|
||||
+++ b/wee_slack.py
|
||||
@@ -6092,19 +6092,7 @@ def create_slack_debug_buffer():
|
||||
|
||||
def load_emoji():
|
||||
try:
|
||||
- weechat_dir = w.info_get("weechat_data_dir", "") or w.info_get(
|
||||
- "weechat_dir", ""
|
||||
- )
|
||||
- weechat_sharedir = w.info_get("weechat_sharedir", "")
|
||||
- local_weemoji, global_weemoji = (
|
||||
- "{}/weemoji.json".format(path) for path in (weechat_dir, weechat_sharedir)
|
||||
- )
|
||||
- path = (
|
||||
- global_weemoji
|
||||
- if os.path.exists(global_weemoji) and not os.path.exists(local_weemoji)
|
||||
- else local_weemoji
|
||||
- )
|
||||
- with open(path, "r") as ef:
|
||||
+ with open("@out@/share/wee-slack/weemoji.json", "r") as ef:
|
||||
emojis = json.loads(ef.read())
|
||||
if "emoji" in emojis:
|
||||
print_error(
|
@ -1,12 +1,22 @@ |
||||
{fetchFromGitLab}: |
||||
rec { |
||||
version = "2.0.2"; |
||||
version = "2.0.3"; |
||||
src = fetchFromGitLab { |
||||
domain = "gitlab.gnome.org"; |
||||
repo = "paperwork"; |
||||
group = "World"; |
||||
owner = "OpenPaperwork"; |
||||
rev = version; |
||||
sha256 = "1di7nnl8ywyiwfpl5m1kvip1m0hvijbmqmkdpviwqw7ajizrr1ly"; |
||||
sha256 = "02c2ysca75j59v87n1axqfncvs167kmdr40m0f05asdh2akwrbi9"; |
||||
}; |
||||
sample_documents = fetchFromGitLab { |
||||
domain = "gitlab.gnome.org"; |
||||
repo = "paperwork-test-documents"; |
||||
group = "World"; |
||||
owner = "OpenPaperwork"; |
||||
# https://gitlab.gnome.org/World/OpenPaperwork/paperwork/-/blob/master/paperwork-gtk/src/paperwork_gtk/model/help/screenshot.sh see TEST_DOCS_TAG |
||||
rev = "1.0"; |
||||
sha256 = "155nhw2jmlgfi6c3wm241vrr3yma6lw85k9lxn844z96kyi7wbpr"; |
||||
}; |
||||
|
||||
} |
||||
|
@ -1,12 +0,0 @@ |
||||
diff --git a/repo b/repo
|
||||
index 8b05def..f394b3e 100755
|
||||
--- a/repo
|
||||
+++ b/repo
|
||||
@@ -236,6 +236,7 @@ import optparse
|
||||
import re
|
||||
import shutil
|
||||
import stat
|
||||
+import ssl
|
||||
|
||||
if sys.version_info[0] == 3:
|
||||
import urllib.request
|
@ -0,0 +1,13 @@ |
||||
diff --color -ur a/CMakeLists.txt b/CMakeLists.txt
|
||||
--- a/CMakeLists.txt 2021-05-30 13:46:22.256040282 +0200
|
||||
+++ b/CMakeLists.txt 2021-05-30 14:15:42.530181216 +0200
|
||||
@@ -333,7 +333,7 @@
|
||||
# So, try first to find the CMake module provided by libxml2 package, then fallback
|
||||
# on the CMake's FindLibXml2.cmake module (which can lack some definition, especially
|
||||
# in static build case).
|
||||
-find_package(LibXml2 QUIET NO_MODULE)
|
||||
+find_package(LibXml2 QUIET MODULE)
|
||||
if(DEFINED LIBXML2_VERSION_STRING)
|
||||
set(LIBXML2_FOUND ON)
|
||||
set(LIBXML2_INCLUDE_DIR ${LIBXML2_INCLUDE_DIRS})
|
||||
Seulement dans b: good.patch
|
@ -1,62 +0,0 @@ |
||||
--- b/modules/json-c/configure.ac
|
||||
+++ a/modules/json-c/configure.ac
|
||||
@@ -75,7 +75,7 @@
|
||||
AC_FUNC_VPRINTF
|
||||
AC_FUNC_MEMCMP
|
||||
AC_CHECK_FUNCS([realloc])
|
||||
+AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf vasprintf open strncasecmp setlocale)
|
||||
-AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf open strncasecmp setlocale)
|
||||
AC_CHECK_DECLS([INFINITY], [], [], [[#include <math.h>]])
|
||||
AC_CHECK_DECLS([nan], [], [], [[#include <math.h>]])
|
||||
AC_CHECK_DECLS([isnan], [], [], [[#include <math.h>]])
|
||||
--- b/modules/json-c/json_pointer.c
|
||||
+++ a/modules/json-c/json_pointer.c
|
||||
@@ -208,7 +208,7 @@
|
||||
}
|
||||
|
||||
va_start(args, path_fmt);
|
||||
+ rc = vasprintf(&path_copy, path_fmt, args);
|
||||
- rc = json_vasprintf(&path_copy, path_fmt, args);
|
||||
va_end(args);
|
||||
|
||||
if (rc < 0)
|
||||
@@ -287,7 +287,7 @@
|
||||
|
||||
/* pass a working copy to the recursive call */
|
||||
va_start(args, path_fmt);
|
||||
+ rc = vasprintf(&path_copy, path_fmt, args);
|
||||
- rc = json_vasprintf(&path_copy, path_fmt, args);
|
||||
va_end(args);
|
||||
|
||||
if (rc < 0)
|
||||
--- b/modules/json-c/printbuf.c
|
||||
+++ a/modules/json-c/printbuf.c
|
||||
@@ -129,7 +129,7 @@
|
||||
would have been written - this code handles both cases. */
|
||||
if(size == -1 || size > 127) {
|
||||
va_start(ap, msg);
|
||||
+ if((size = vasprintf(&t, msg, ap)) < 0) { va_end(ap); return -1; }
|
||||
- if((size = json_vasprintf(&t, msg, ap)) < 0) { va_end(ap); return -1; }
|
||||
va_end(ap);
|
||||
printbuf_memappend(p, t, size);
|
||||
free(t);
|
||||
--- b/modules/json-c/vasprintf_compat.h
|
||||
+++ a/modules/json-c/vasprintf_compat.h
|
||||
@@ -8,8 +8,9 @@
|
||||
|
||||
#include "snprintf_compat.h"
|
||||
|
||||
+#if !defined(HAVE_VASPRINTF)
|
||||
/* CAW: compliant version of vasprintf */
|
||||
+static int vasprintf(char **buf, const char *fmt, va_list ap)
|
||||
-static int json_vasprintf(char **buf, const char *fmt, va_list ap)
|
||||
{
|
||||
#ifndef WIN32
|
||||
static char _T_emptybuffer = '\0';
|
||||
@@ -40,5 +41,6 @@
|
||||
|
||||
return chars;
|
||||
}
|
||||
+#endif /* !HAVE_VASPRINTF */
|
||||
|
||||
#endif /* __vasprintf_compat_h */
|
@ -0,0 +1,22 @@ |
||||
{ lib, stdenv, fetchgit }: |
||||
|
||||
stdenv.mkDerivation rec { |
||||
pname = "nv-codec-headers"; |
||||
version = "10.0.26.2"; |
||||
|
||||
src = fetchgit { |
||||
url = "https://git.videolan.org/git/ffmpeg/nv-codec-headers.git"; |
||||
rev = "n${version}"; |
||||
sha256 = "0n5jlwjfv5irx1if1g0n52m279bw7ab6bd3jz2v4vwg9cdzbxx85"; |
||||
}; |
||||
|
||||
makeFlags = [ "PREFIX=$(out)" ]; |
||||
|
||||
meta = { |
||||
description = "FFmpeg version of headers for NVENC"; |
||||
homepage = "https://ffmpeg.org/"; |
||||
license = lib.licenses.mit; |
||||
maintainers = [ lib.maintainers.MP2E ]; |
||||
platforms = lib.platforms.all; |
||||
}; |
||||
} |
@ -0,0 +1,86 @@ |
||||
diff -aru a/Source/WebKit/NetworkProcess/ServiceWorker/WebSWOriginStore.cpp b/Source/WebKit/NetworkProcess/ServiceWorker/WebSWOriginStore.cpp
|
||||
--- a/Source/WebKit/NetworkProcess/ServiceWorker/WebSWOriginStore.cpp 2021-02-26 04:57:15.000000000 -0500
|
||||
+++ b/Source/WebKit/NetworkProcess/ServiceWorker/WebSWOriginStore.cpp 2021-05-16 14:45:32.000000000 -0400
|
||||
@@ -87,7 +87,7 @@
|
||||
if (!m_store.createSharedMemoryHandle(handle))
|
||||
return;
|
||||
|
||||
-#if OS(DARWIN) || OS(WINDOWS)
|
||||
+#if (OS(DARWIN) || OS(WINDOWS)) && !USE(UNIX_DOMAIN_SOCKETS)
|
||||
uint64_t dataSize = handle.size();
|
||||
#else
|
||||
uint64_t dataSize = 0;
|
||||
diff -aru a/Source/WebKit/Platform/IPC/IPCSemaphore.cpp b/Source/WebKit/Platform/IPC/IPCSemaphore.cpp
|
||||
--- a/Source/WebKit/Platform/IPC/IPCSemaphore.cpp 2021-02-26 04:57:15.000000000 -0500
|
||||
+++ b/Source/WebKit/Platform/IPC/IPCSemaphore.cpp 2021-05-16 15:54:53.000000000 -0400
|
||||
@@ -26,8 +26,6 @@
|
||||
#include "config.h"
|
||||
#include "IPCSemaphore.h"
|
||||
|
||||
-#if !OS(DARWIN)
|
||||
-
|
||||
namespace IPC {
|
||||
|
||||
Semaphore::Semaphore() = default;
|
||||
@@ -46,5 +44,3 @@
|
||||
}
|
||||
|
||||
}
|
||||
-
|
||||
-#endif
|
||||
diff -aru a/Source/WebKit/Platform/IPC/IPCSemaphore.h b/Source/WebKit/Platform/IPC/IPCSemaphore.h
|
||||
--- a/Source/WebKit/Platform/IPC/IPCSemaphore.h 2021-02-26 04:57:15.000000000 -0500
|
||||
+++ b/Source/WebKit/Platform/IPC/IPCSemaphore.h 2021-05-16 14:46:13.000000000 -0400
|
||||
@@ -29,7 +29,7 @@
|
||||
#include <wtf/Optional.h>
|
||||
#include <wtf/Seconds.h>
|
||||
|
||||
-#if OS(DARWIN)
|
||||
+#if PLATFORM(COCOA)
|
||||
#include <mach/semaphore.h>
|
||||
#include <wtf/MachSendRight.h>
|
||||
#endif
|
||||
@@ -51,7 +51,7 @@
|
||||
void encode(Encoder&) const;
|
||||
static Optional<Semaphore> decode(Decoder&);
|
||||
|
||||
-#if OS(DARWIN)
|
||||
+#if PLATFORM(COCOA)
|
||||
explicit Semaphore(MachSendRight&&);
|
||||
|
||||
void signal();
|
||||
@@ -64,7 +64,7 @@
|
||||
#endif
|
||||
|
||||
private:
|
||||
-#if OS(DARWIN)
|
||||
+#if PLATFORM(COCOA)
|
||||
void destroy();
|
||||
MachSendRight m_sendRight;
|
||||
semaphore_t m_semaphore { SEMAPHORE_NULL };
|
||||
Only in b/Source/WebKit/Platform/IPC: IPCSemaphore.h.orig
|
||||
diff -aru a/Source/WebKit/Platform/SharedMemory.h b/Source/WebKit/Platform/SharedMemory.h
|
||||
--- a/Source/WebKit/Platform/SharedMemory.h 2021-02-26 04:57:15.000000000 -0500
|
||||
+++ b/Source/WebKit/Platform/SharedMemory.h 2021-05-16 14:45:32.000000000 -0400
|
||||
@@ -75,7 +75,7 @@
|
||||
|
||||
bool isNull() const;
|
||||
|
||||
-#if OS(DARWIN) || OS(WINDOWS)
|
||||
+#if (OS(DARWIN) || OS(WINDOWS)) && !USE(UNIX_DOMAIN_SOCKETS)
|
||||
size_t size() const { return m_size; }
|
||||
#endif
|
||||
|
||||
diff -aru a/Source/WebKit/UIProcess/VisitedLinkStore.cpp b/Source/WebKit/UIProcess/VisitedLinkStore.cpp
|
||||
--- a/Source/WebKit/UIProcess/VisitedLinkStore.cpp 2021-02-26 04:57:16.000000000 -0500
|
||||
+++ b/Source/WebKit/UIProcess/VisitedLinkStore.cpp 2021-05-16 14:45:32.000000000 -0400
|
||||
@@ -119,7 +119,7 @@
|
||||
return;
|
||||
|
||||
// FIXME: Get the actual size of data being sent from m_linkHashStore and send it in the SharedMemory::IPCHandle object.
|
||||
-#if OS(DARWIN) || OS(WINDOWS)
|
||||
+#if (OS(DARWIN) || OS(WINDOWS)) && !USE(UNIX_DOMAIN_SOCKETS)
|
||||
uint64_t dataSize = handle.size();
|
||||
#else
|
||||
uint64_t dataSize = 0;
|
||||
Only in b/Source/WebKit/WebProcess/WebPage/CoordinatedGraphics: DrawingAreaCoordinatedGraphics.cpp.orig
|
@ -0,0 +1,19 @@ |
||||
{ lib, buildPythonPackage, fetchPypi, locale, pytestCheckHook, click, sortedcontainers, pyyaml }: |
||||
|
||||
buildPythonPackage rec { |
||||
pname = "cock"; |
||||
version = "0.8.0"; |
||||
|
||||
src = fetchPypi { |
||||
inherit pname version; |
||||
sha256 = "1gwaklvwlyvhz2c07hdmhbnqqmpybssxzzr0399dpjk7dgdqgam3"; |
||||
}; |
||||
|
||||
propagatedBuildInputs = [ click sortedcontainers pyyaml ]; |
||||
|
||||
meta = with lib; { |
||||
homepage = "https://github.com/pohmelie/cock"; |
||||
description = "Configuration file with click"; |
||||
license = licenses.mit; |
||||
}; |
||||
} |
@ -0,0 +1,35 @@ |
||||
{ lib |
||||
, stdenv |
||||
, buildPythonPackage |
||||
, fetchPypi |
||||
}: |
||||
|
||||
buildPythonPackage rec { |
||||
pname = "cocotb-bus"; |
||||
version = "0.1.1"; |
||||
|
||||
src = fetchPypi { |
||||
inherit pname version; |
||||
sha256 = "cc9b0bb00c95061a67f650caf96e3a294bb74ef437124dea456dd9e2a9431854"; |
||||
}; |
||||
|
||||
postPatch = '' |
||||
# remove circular dependency cocotb from setup.py |
||||
substituteInPlace setup.py --replace '"cocotb>=1.5.0.dev,<2.0"' "" |
||||
''; |
||||
|
||||
# tests require cocotb, disable for now to avoid circular dependency |
||||
doCheck = false; |
||||
|
||||
# checkPhase = '' |
||||
# export PATH=$out/bin:$PATH |
||||
# make test |
||||
# ''; |
||||
|
||||
meta = with lib; { |
||||
description = "Pre-packaged testbenching tools and reusable bus interfaces for cocotb"; |
||||
homepage = "https://github.com/cocotb/cocotb-bus"; |
||||
license = licenses.bsd3; |
||||
maintainers = with maintainers; [ prusnak ]; |
||||
}; |
||||
} |
@ -1,23 +1,29 @@ |
||||
{ lib, buildGoPackage, fetchFromGitHub }: |
||||
{ lib |
||||
, buildGoModule |
||||
, fetchFromGitHub |
||||
}: |
||||
|
||||
buildGoPackage rec { |
||||
buildGoModule rec { |
||||
pname = "gotty"; |
||||
version = "2.0.0-alpha.3"; |
||||
rev = "v${version}"; |
||||
|
||||
goPackagePath = "github.com/yudai/gotty"; |
||||
version = "1.2.0"; |
||||
|
||||
src = fetchFromGitHub { |
||||
inherit rev; |
||||
owner = "yudai"; |
||||
owner = "sorenisanerd"; |
||||
repo = "gotty"; |
||||
sha256 = "1vhhs7d4k1vpkf2k69ai2r3bp3zwnwa8l9q7vza0rck69g4nmz7a"; |
||||
rev = "v${version}"; |
||||
sha256 = "06ngxnblwkmiln9bxikg9q2wdlh45481pnz87bpsw2r7hc69bv9n"; |
||||
}; |
||||
|
||||
vendorSha256 = "0mzf5209r3fzqf9q98j3b2cdzvfa3kg62xn0spx5zr6nabmhaa79"; |
||||
|
||||
# upstream did not update the tests, so they are broken now |
||||
# https://github.com/sorenisanerd/gotty/issues/13 |
||||
doCheck = false; |
||||
|
||||
meta = with lib; { |
||||
description = "Share your terminal as a web application"; |
||||
homepage = "https://github.com/yudai/gotty"; |
||||
maintainers = with maintainers; [ ]; |
||||
homepage = "https://github.com/sorenisanerd/gotty"; |
||||
maintainers = with maintainers; [ prusnak ]; |
||||
license = licenses.mit; |
||||
}; |
||||
} |
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue