forked from brl/citadel
Compare commits
11 Commits
apt-cacher
...
master
Author | SHA1 | Date | |
---|---|---|---|
93d2acdb9d | |||
9599d3da9d | |||
4c6f4f4a3d | |||
0d13ca38df | |||
bc87a2c629 | |||
e51faa3266 | |||
88b412a18f | |||
277cac8eea | |||
4b73960043 | |||
8eacade6bf | |||
5dfd3e31db |
@ -0,0 +1,4 @@
|
||||
|
||||
# For blueprint-compiler-native to work
|
||||
EXTRA_OEMESON:remove:class-native = "-Dintrospection=disabled"
|
||||
EXTRA_OEMESON:append:class-native = " -Dintrospection=enabled"
|
@ -0,0 +1,4 @@
|
||||
|
||||
# For blueprint-compiler-native to work
|
||||
EXTRA_OEMESON:remove:class-native = "-Dintrospection=disabled"
|
||||
EXTRA_OEMESON:append:class-native = " -Dintrospection=enabled"
|
@ -1,2 +1,6 @@
|
||||
# Remove this dependency so it doesn't get dragged in with gtk. These icons are in citadel-extra-image now
|
||||
GTKBASE_RRECOMMENDS:remove = "adwaita-icon-theme-symbolic"
|
||||
|
||||
# For blueprint-compiler-native to work
|
||||
EXTRA_OEMESON:remove:class-native = "-Dintrospection=disabled"
|
||||
EXTRA_OEMESON:append:class-native = " -Dintrospection=enabled"
|
||||
|
@ -0,0 +1,4 @@
|
||||
|
||||
# For blueprint-compiler-native to work
|
||||
EXTRA_OEMESON:remove:class-native = "-Dintrospection=disabled"
|
||||
EXTRA_OEMESON:append:class-native = " -Dintrospection=enabled"
|
@ -0,0 +1,6 @@
|
||||
|
||||
# For blueprint-compiler-native to work
|
||||
EXTRA_OEMESON:remove:class-native = "-Dintrospection=disabled"
|
||||
EXTRA_OEMESON:append:class-native = " -Dintrospection=enabled"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
@ -3,16 +3,12 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/networkmanager:"
|
||||
|
||||
SRC_URI += "\
|
||||
file://NetworkManager.conf \
|
||||
file://watch-resolvconf.path \
|
||||
file://watch-resolvconf.service \
|
||||
"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} += "watch-resolvconf.path"
|
||||
|
||||
do_install:append() {
|
||||
install -m 0644 ${WORKDIR}/NetworkManager.conf ${D}${sysconfdir}/NetworkManager/
|
||||
install -m 644 ${WORKDIR}/watch-resolvconf.path ${D}${systemd_system_unitdir}
|
||||
install -m 644 ${WORKDIR}/watch-resolvconf.service ${D}${systemd_system_unitdir}
|
||||
}
|
||||
PACKAGECONFIG = "nss systemd polkit wifi iwd vala nmcli bluez5"
|
||||
NETWORKMANAGER_FIREWALL_DEFAULT = "iptables"
|
||||
|
4
meta-citadel/recipes-citadel/bbappends/pango_%.bbappend
Normal file
4
meta-citadel/recipes-citadel/bbappends/pango_%.bbappend
Normal file
@ -0,0 +1,4 @@
|
||||
|
||||
# For blueprint-compiler-native to work
|
||||
EXTRA_OEMESON:remove:class-native = "-Dintrospection=disabled"
|
||||
EXTRA_OEMESON:append:class-native = " -Dintrospection=enabled"
|
@ -0,0 +1,245 @@
|
||||
From 14cd68b1fdd3a16a3aa2892f9216096bea02173d Mon Sep 17 00:00:00 2001
|
||||
From: isa <isa@subgraph.com>
|
||||
Date: Thu, 11 Jul 2024 18:58:40 +0000
|
||||
Subject: [PATCH] Modify systemd to use localtime in /storage/citadel-state
|
||||
Upstream-Status: Inappropriate [citadel specific]
|
||||
|
||||
---
|
||||
src/basic/time-util.c | 4 ++--
|
||||
src/core/manager.c | 18 +++++++++---------
|
||||
src/core/manager.h | 2 +-
|
||||
src/core/unit.h | 2 +-
|
||||
src/firstboot/firstboot.c | 20 ++++++++++----------
|
||||
src/timedate/timedated.c | 12 ++++++------
|
||||
units/systemd-timedated.service.in | 2 +-
|
||||
7 files changed, 30 insertions(+), 30 deletions(-)
|
||||
|
||||
diff --git a/src/basic/time-util.c b/src/basic/time-util.c
|
||||
index f9014dc560..bab1db4224 100644
|
||||
--- a/src/basic/time-util.c
|
||||
+++ b/src/basic/time-util.c
|
||||
@@ -1612,7 +1612,7 @@ int get_timezone(char **ret) {
|
||||
|
||||
assert(ret);
|
||||
|
||||
- r = readlink_malloc("/etc/localtime", &t);
|
||||
+ r = readlink_malloc("/storage/citadel-state/localtime", &t);
|
||||
if (r == -ENOENT) {
|
||||
/* If the symlink does not exist, assume "UTC", like glibc does */
|
||||
z = strdup("UTC");
|
||||
@@ -1625,7 +1625,7 @@ int get_timezone(char **ret) {
|
||||
if (r < 0)
|
||||
return r; /* returns EINVAL if not a symlink */
|
||||
|
||||
- e = PATH_STARTSWITH_SET(t, "/usr/share/zoneinfo/", "../usr/share/zoneinfo/");
|
||||
+ e = PATH_STARTSWITH_SET(t, "/usr/share/zoneinfo/", "../../usr/share/zoneinfo/");
|
||||
if (!e)
|
||||
return -EINVAL;
|
||||
|
||||
diff --git a/src/core/manager.c b/src/core/manager.c
|
||||
index 88eebfc626..59c4dbbae1 100644
|
||||
--- a/src/core/manager.c
|
||||
+++ b/src/core/manager.c
|
||||
@@ -412,9 +412,9 @@ static int manager_read_timezone_stat(Manager *m) {
|
||||
|
||||
assert(m);
|
||||
|
||||
- /* Read the current stat() data of /etc/localtime so that we detect changes */
|
||||
- if (lstat("/etc/localtime", &st) < 0) {
|
||||
- log_debug_errno(errno, "Failed to stat /etc/localtime, ignoring: %m");
|
||||
+ /* Read the current stat() data of /storage/citadel-state/localtime so that we detect changes */
|
||||
+ if (lstat("/storage/citadel-state/localtime", &st) < 0) {
|
||||
+ log_debug_errno(errno, "Failed to stat /storage/citadel-state/localtime, ignoring: %m");
|
||||
changed = m->etc_localtime_accessible;
|
||||
m->etc_localtime_accessible = false;
|
||||
} else {
|
||||
@@ -439,7 +439,7 @@ static int manager_setup_timezone_change(Manager *m) {
|
||||
if (MANAGER_IS_TEST_RUN(m))
|
||||
return 0;
|
||||
|
||||
- /* We watch /etc/localtime for three events: change of the link count (which might mean removal from /etc even
|
||||
+ /* We watch /storage/citadel-state/localtime for three events: change of the link count (which might mean removal from /etc even
|
||||
* though another link might be kept), renames, and file close operations after writing. Note we don't bother
|
||||
* with IN_DELETE_SELF, as that would just report when the inode is removed entirely, i.e. after the link count
|
||||
* went to zero and all fds to it are closed.
|
||||
@@ -450,14 +450,14 @@ static int manager_setup_timezone_change(Manager *m) {
|
||||
* Note that we create the new event source first here, before releasing the old one. This should optimize
|
||||
* behaviour as this way sd-event can reuse the old watch in case the inode didn't change. */
|
||||
|
||||
- r = sd_event_add_inotify(m->event, &new_event, "/etc/localtime",
|
||||
+ r = sd_event_add_inotify(m->event, &new_event, "/storage/citadel-state/localtime",
|
||||
IN_ATTRIB|IN_MOVE_SELF|IN_CLOSE_WRITE|IN_DONT_FOLLOW, manager_dispatch_timezone_change, m);
|
||||
if (r == -ENOENT) {
|
||||
/* If the file doesn't exist yet, subscribe to /etc instead, and wait until it is created either by
|
||||
* O_CREATE or by rename() */
|
||||
|
||||
- log_debug_errno(r, "/etc/localtime doesn't exist yet, watching /etc instead.");
|
||||
- r = sd_event_add_inotify(m->event, &new_event, "/etc",
|
||||
+ log_debug_errno(r, "/storage/citadel-state/localtime doesn't exist yet, watching /storage/citadel-state instead.");
|
||||
+ r = sd_event_add_inotify(m->event, &new_event, "/storage/citadel-state",
|
||||
IN_CREATE|IN_MOVED_TO|IN_ONLYDIR, manager_dispatch_timezone_change, m);
|
||||
}
|
||||
if (r < 0)
|
||||
@@ -3173,13 +3173,13 @@ static int manager_dispatch_timezone_change(
|
||||
int changed;
|
||||
Unit *u;
|
||||
|
||||
- log_debug("inotify event for /etc/localtime");
|
||||
+ log_debug("inotify event for /storage/citadel-state/localtime");
|
||||
|
||||
changed = manager_read_timezone_stat(m);
|
||||
if (changed <= 0)
|
||||
return changed;
|
||||
|
||||
- /* Something changed, restart the watch, to ensure we watch the new /etc/localtime if it changed */
|
||||
+ /* Something changed, restart the watch, to ensure we watch the new /storage/citadel-state/localtime if it changed */
|
||||
(void) manager_setup_timezone_change(m);
|
||||
|
||||
/* Read the new timezone */
|
||||
diff --git a/src/core/manager.h b/src/core/manager.h
|
||||
index d96eb7b995..68066cac50 100644
|
||||
--- a/src/core/manager.h
|
||||
+++ b/src/core/manager.h
|
||||
@@ -370,7 +370,7 @@ struct Manager {
|
||||
|
||||
unsigned gc_marker;
|
||||
|
||||
- /* The stat() data the last time we saw /etc/localtime */
|
||||
+ /* The stat() data the last time we saw /storage/citadel-state/localtime */
|
||||
usec_t etc_localtime_mtime;
|
||||
bool etc_localtime_accessible;
|
||||
|
||||
diff --git a/src/core/unit.h b/src/core/unit.h
|
||||
index 60bc2e3d35..c19af861f9 100644
|
||||
--- a/src/core/unit.h
|
||||
+++ b/src/core/unit.h
|
||||
@@ -713,7 +713,7 @@ typedef struct UnitVTable {
|
||||
/* Called whenever CLOCK_REALTIME made a jump */
|
||||
void (*time_change)(Unit *u);
|
||||
|
||||
- /* Called whenever /etc/localtime was modified */
|
||||
+ /* Called whenever /storage/citadel-state/localtime was modified */
|
||||
void (*timezone_change)(Unit *u);
|
||||
|
||||
/* Returns the next timeout of a unit */
|
||||
diff --git a/src/firstboot/firstboot.c b/src/firstboot/firstboot.c
|
||||
index d4029272de..5bc0976f63 100644
|
||||
--- a/src/firstboot/firstboot.c
|
||||
+++ b/src/firstboot/firstboot.c
|
||||
@@ -606,15 +606,15 @@ static int process_timezone(int rfd) {
|
||||
|
||||
assert(rfd >= 0);
|
||||
|
||||
- pfd = chase_and_open_parent_at(rfd, "/etc/localtime",
|
||||
+ pfd = chase_and_open_parent_at(rfd, "/storage/citadel-state/localtime",
|
||||
CHASE_AT_RESOLVE_IN_ROOT|CHASE_MKDIR_0755|CHASE_WARN|CHASE_NOFOLLOW,
|
||||
&f);
|
||||
if (pfd < 0)
|
||||
- return log_error_errno(pfd, "Failed to chase /etc/localtime: %m");
|
||||
+ return log_error_errno(pfd, "Failed to chase /storage/citadel-state/localtime: %m");
|
||||
|
||||
r = should_configure(pfd, f);
|
||||
if (r == 0)
|
||||
- log_debug("Found /etc/localtime, assuming timezone has been configured.");
|
||||
+ log_debug("Found /storage/citadel-state/localtime, assuming timezone has been configured.");
|
||||
if (r <= 0)
|
||||
return r;
|
||||
|
||||
@@ -625,16 +625,16 @@ static int process_timezone(int rfd) {
|
||||
if (arg_copy_timezone && r == 0) {
|
||||
_cleanup_free_ char *s = NULL;
|
||||
|
||||
- r = readlink_malloc("/etc/localtime", &s);
|
||||
+ r = readlink_malloc("/storage/citadel-state/localtime", &s);
|
||||
if (r != -ENOENT) {
|
||||
if (r < 0)
|
||||
- return log_error_errno(r, "Failed to read host's /etc/localtime: %m");
|
||||
+ return log_error_errno(r, "Failed to read host's /storage/citadel-state/localtime: %m");
|
||||
|
||||
r = symlinkat_atomic_full(s, pfd, f, /* make_relative= */ false);
|
||||
if (r < 0)
|
||||
- return log_error_errno(r, "Failed to create /etc/localtime symlink: %m");
|
||||
+ return log_error_errno(r, "Failed to create /storage/citadel-state/localtime symlink: %m");
|
||||
|
||||
- log_info("Copied host's /etc/localtime.");
|
||||
+ log_info("Copied host's /storage/citadel-state/localtime.");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
@@ -650,9 +650,9 @@ static int process_timezone(int rfd) {
|
||||
|
||||
r = symlinkat_atomic_full(e, pfd, f, /* make_relative= */ false);
|
||||
if (r < 0)
|
||||
- return log_error_errno(r, "Failed to create /etc/localtime symlink: %m");
|
||||
+ return log_error_errno(r, "Failed to create /storage/citadel-state/localtime symlink: %m");
|
||||
|
||||
- log_info("/etc/localtime written");
|
||||
+ log_info("/storage/citadel-state/localtime written");
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -1223,7 +1223,7 @@ static int process_reset(int rfd) {
|
||||
"/etc/hostname",
|
||||
"/etc/machine-id",
|
||||
"/etc/kernel/cmdline",
|
||||
- "/etc/localtime") {
|
||||
+ "/storage/citadel-state/localtime") {
|
||||
r = reset_one(rfd, p);
|
||||
if (r < 0)
|
||||
return r;
|
||||
diff --git a/src/timedate/timedated.c b/src/timedate/timedated.c
|
||||
index c7be30f563..334e5e251e 100644
|
||||
--- a/src/timedate/timedated.c
|
||||
+++ b/src/timedate/timedated.c
|
||||
@@ -276,9 +276,9 @@ static int context_read_data(Context *c) {
|
||||
|
||||
r = get_timezone(&t);
|
||||
if (r == -EINVAL)
|
||||
- log_warning_errno(r, "/etc/localtime should be a symbolic link to a time zone data file in /usr/share/zoneinfo/.");
|
||||
+ log_warning_errno(r, "/storage/citadel-state/localtime should be a symbolic link to a time zone data file in /usr/share/zoneinfo/.");
|
||||
else if (r < 0)
|
||||
- log_warning_errno(r, "Failed to get target of /etc/localtime: %m");
|
||||
+ log_warning_errno(r, "Failed to get target of /storage/citadel-state/localtime: %m");
|
||||
|
||||
free_and_replace(c->zone, t);
|
||||
|
||||
@@ -302,22 +302,22 @@ static int context_write_data_timezone(Context *c) {
|
||||
|
||||
if (access("/usr/share/zoneinfo/UTC", F_OK) < 0) {
|
||||
|
||||
- if (unlink("/etc/localtime") < 0 && errno != ENOENT)
|
||||
+ if (unlink("/storage/citadel-state/localtime") < 0 && errno != ENOENT)
|
||||
return -errno;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
- source = "../usr/share/zoneinfo/UTC";
|
||||
+ source = "../../usr/share/zoneinfo/UTC";
|
||||
} else {
|
||||
- p = path_join("../usr/share/zoneinfo", c->zone);
|
||||
+ p = path_join("../../usr/share/zoneinfo", c->zone);
|
||||
if (!p)
|
||||
return -ENOMEM;
|
||||
|
||||
source = p;
|
||||
}
|
||||
|
||||
- return symlink_atomic(source, "/etc/localtime");
|
||||
+ return symlink_atomic(source, "/storage/citadel-state/localtime");
|
||||
}
|
||||
|
||||
static int context_write_data_local_rtc(Context *c) {
|
||||
diff --git a/units/systemd-timedated.service.in b/units/systemd-timedated.service.in
|
||||
index 00f6643ba7..9be4010576 100644
|
||||
--- a/units/systemd-timedated.service.in
|
||||
+++ b/units/systemd-timedated.service.in
|
||||
@@ -31,7 +31,7 @@ ProtectKernelLogs=yes
|
||||
ProtectKernelModules=yes
|
||||
ProtectKernelTunables=yes
|
||||
ProtectSystem=strict
|
||||
-ReadWritePaths=/etc
|
||||
+ReadWritePaths=/storage/citadel-state
|
||||
RestrictAddressFamilies=AF_UNIX
|
||||
RestrictNamespaces=yes
|
||||
RestrictRealtime=yes
|
@ -16,3 +16,7 @@ do_install:append() {
|
||||
rm -f ${D}${sysconfdir}/tmpfiles.d/00-create-volatile.conf
|
||||
ln -s rescue.target ${D}${systemd_unitdir}/system/kbrequest.target
|
||||
}
|
||||
|
||||
SRC_URI += " \
|
||||
file://0001-Modify-systemd-to-use-localtime-in-storage-citadel-s.patch \
|
||||
"
|
||||
|
5
meta-citadel/recipes-citadel/bbappends/tzdata%.bbappend
Normal file
5
meta-citadel/recipes-citadel/bbappends/tzdata%.bbappend
Normal file
@ -0,0 +1,5 @@
|
||||
pkg_postinst:${PN}() {
|
||||
etc_lt="$D${sysconfdir}/localtime"
|
||||
|
||||
ln -sf ../storage/citadel-state/localtime $etc_lt
|
||||
}
|
@ -41,6 +41,7 @@ SRC_URI = "\
|
||||
file://share/dot.profile \
|
||||
file://share/dot.vimrc \
|
||||
file://polkit/citadel.rules \
|
||||
file://polkit/gnome-control-center.rules \
|
||||
file://citadel-installer.session \
|
||||
file://citadel-installer.json \
|
||||
file://citadel-installer.desktop \
|
||||
@ -50,6 +51,9 @@ SRC_URI = "\
|
||||
file://systemd/citadel-installer-backend.service \
|
||||
file://systemd/installer-session-switcher.service \
|
||||
file://systemd/user/gnome-session@citadel-installer.target.d/session.conf \
|
||||
file://icons/citadel-installer.svg \
|
||||
file://systemd/watch-resolvconf.service \
|
||||
file://systemd/watch-resolvconf.path \
|
||||
file://skel/profile \
|
||||
file://skel/bashrc \
|
||||
file://skel/vimrc \
|
||||
@ -66,7 +70,7 @@ SRC_URI = "\
|
||||
"
|
||||
|
||||
USERADD_PACKAGES = "${PN}"
|
||||
USERADD_PARAM:${PN} = "-m -u 1000 -s /bin/bash citadel"
|
||||
USERADD_PARAM:${PN} = "-m -u 1000 -G wheel -s /bin/bash citadel"
|
||||
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
|
||||
|
||||
# for citadel-ifconfig.sh
|
||||
@ -74,7 +78,7 @@ RDEPENDS:${PN} = "bash"
|
||||
|
||||
inherit allarch systemd useradd
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "zram-swap.service citadel-launch-default-realm.path x11-session-switcher.service citadel-installer-backend.service installer-session-switcher.service citadel-setpassword.service"
|
||||
SYSTEMD_SERVICE:${PN} = "zram-swap.service citadel-launch-default-realm.path x11-session-switcher.service citadel-installer-backend.service installer-session-switcher.service citadel-setpassword.service watch-resolvconf.service watch-resolvconf.path"
|
||||
|
||||
do_install() {
|
||||
install -m 0755 -d ${D}/storage
|
||||
@ -118,6 +122,9 @@ do_install() {
|
||||
install -m 644 ${WORKDIR}/systemd/citadel-installer-backend.service ${D}${systemd_system_unitdir}
|
||||
install -m 644 ${WORKDIR}/systemd/installer-session-switcher.service ${D}${systemd_system_unitdir}
|
||||
|
||||
install -m 644 ${WORKDIR}/systemd/watch-resolvconf.service ${D}${systemd_system_unitdir}
|
||||
install -m 644 ${WORKDIR}/systemd/watch-resolvconf.path ${D}${systemd_system_unitdir}
|
||||
|
||||
install -m 644 ${WORKDIR}/systemd/citadel-setpassword.service ${D}${systemd_system_unitdir}
|
||||
install -m 0754 ${WORKDIR}/citadel-setpassword.sh ${D}${libexecdir}
|
||||
install -d ${D}${systemd_user_unitdir}/gnome-session@citadel-installer.target.d
|
||||
@ -163,6 +170,7 @@ do_install() {
|
||||
|
||||
|
||||
install -m 0644 ${WORKDIR}/polkit/citadel.rules ${D}${sysconfdir}/polkit-1/rules.d/
|
||||
install -m 0644 ${WORKDIR}/polkit/gnome-control-center.rules ${D}${sysconfdir}/polkit-1/rules.d/
|
||||
|
||||
install -m 0644 ${WORKDIR}/modprobe.d/audio_powersave.conf ${D}${sysconfdir}/modprobe.d/
|
||||
|
||||
@ -172,6 +180,10 @@ do_install() {
|
||||
install -m 0644 ${WORKDIR}/apt-cacher-ng/acng.conf ${D}${datadir}/apt-cacher-ng/conf/
|
||||
install -m 0644 ${WORKDIR}/apt-cacher-ng/security.conf ${D}${datadir}/apt-cacher-ng/conf/
|
||||
|
||||
# icons
|
||||
mkdir ${D}${datadir}/icons/
|
||||
install -m 0644 ${WORKDIR}/icons/citadel-installer.svg ${D}${datadir}/icons/
|
||||
|
||||
# This probably belongs in lvm2 recipe
|
||||
install -d ${D}${systemd_system_unitdir}/sysinit.target.wants
|
||||
ln -s ../lvm2-lvmetad.socket ${D}${systemd_system_unitdir}/sysinit.target.wants/lvm2-lvmetad.socket
|
||||
|
@ -387,7 +387,7 @@ LocalDirs: acng-doc /usr/share/doc/apt-cacher-ng
|
||||
# This restriction can be disabled by specifying a list of allowed ports or 0
|
||||
# for any port.
|
||||
#
|
||||
AllowUserPorts: 80 443
|
||||
# AllowUserPorts: 80
|
||||
|
||||
# Normally the HTTP redirection responses are forwarded to the original caller
|
||||
# (i.e. APT) which starts a new download attempt from the new URL. This
|
||||
|
@ -3,6 +3,6 @@ Name=Citadel Installer
|
||||
Comment=This session logs you into the Citadel Installer
|
||||
Exec=/usr/libexec/citadel-installer-ui
|
||||
TryExec=/usr/libexec/citadel-installer-ui
|
||||
Icon=
|
||||
Icon=/usr/share/icons/citadel-installer.svg
|
||||
Type=Application
|
||||
|
||||
|
@ -0,0 +1,153 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="64"
|
||||
height="64"
|
||||
version="1.1"
|
||||
id="svg13"
|
||||
sodipodi:docname="citadel-installer.svg"
|
||||
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs13" />
|
||||
<sodipodi:namedview
|
||||
id="namedview13"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="15.0625"
|
||||
inkscape:cx="31.966805"
|
||||
inkscape:cy="31.966805"
|
||||
inkscape:window-width="3840"
|
||||
inkscape:window-height="2090"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="34"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg13" />
|
||||
<rect
|
||||
style="opacity:0.2;fill:#b6150c;fill-opacity:1"
|
||||
width="56"
|
||||
height="17"
|
||||
x="4"
|
||||
y="44"
|
||||
rx="2.8"
|
||||
ry="2.8"
|
||||
id="rect1" />
|
||||
<path
|
||||
style="fill:#b60c12;fill-opacity:1;opacity:0.04"
|
||||
d="m 18.25,4 h 27.5 C 50.3205,4 54,7.7045 54,12.275 V 46.65 c 0,4.5705 -3.6795,8.25 -8.25,8.25 H 18.25 C 13.6795,54.9 10,51.2205 10,46.65 V 12.275 C 10,7.7045 13.6795,4 18.25,4 Z"
|
||||
id="path1" />
|
||||
<path
|
||||
style="opacity:0.1;fill:#b60c12;fill-opacity:1"
|
||||
transform="matrix(2.2773394,0,0,1.2576563,-4.4374303,-4.805362)"
|
||||
d="m 10.950248,26.084524 5.049752,0 5.049752,0 -2.524876,4.373214 L 16,34.830952 13.475124,30.457738 Z"
|
||||
id="path2" />
|
||||
<path
|
||||
style="fill:#b6150c;fill-opacity:1"
|
||||
transform="matrix(2.2773394,0,0,1.2576563,-4.4374303,-5.8053658)"
|
||||
d="m 10.950248,26.084524 5.049752,0 5.049752,0 -2.524876,4.373214 L 16,34.830952 13.475124,30.457738 Z"
|
||||
id="path3" />
|
||||
<rect
|
||||
style="opacity:0.8;fill:#b6150c;fill-opacity:1"
|
||||
width="6"
|
||||
height="6"
|
||||
x="26"
|
||||
y="9"
|
||||
id="rect3" />
|
||||
<rect
|
||||
style="opacity:0.2;fill:#b6150c;fill-opacity:1"
|
||||
width="6"
|
||||
height="6"
|
||||
x="32"
|
||||
y="9"
|
||||
id="rect4" />
|
||||
<rect
|
||||
style="opacity:0.4;fill:#b6150c;fill-opacity:1"
|
||||
width="6"
|
||||
height="6"
|
||||
x="26"
|
||||
y="15"
|
||||
id="rect5" />
|
||||
<rect
|
||||
style="opacity:0.9;fill:#b6150c;fill-opacity:1"
|
||||
width="6"
|
||||
height="6"
|
||||
x="32"
|
||||
y="15"
|
||||
id="rect6" />
|
||||
<rect
|
||||
style="fill:#b6150c;fill-opacity:1"
|
||||
width="6"
|
||||
height="6"
|
||||
x="26"
|
||||
y="21"
|
||||
id="rect7" />
|
||||
<rect
|
||||
style="opacity:0.6;fill:#b6150c;fill-opacity:1"
|
||||
width="6"
|
||||
height="6"
|
||||
x="32"
|
||||
y="21"
|
||||
id="rect8" />
|
||||
<rect
|
||||
style="fill:#b6150c;fill-opacity:1"
|
||||
width="56"
|
||||
height="17"
|
||||
x="4"
|
||||
y="43"
|
||||
rx="2.8"
|
||||
ry="2.8"
|
||||
id="rect9" />
|
||||
<rect
|
||||
style="opacity:0.2"
|
||||
width="22.4"
|
||||
height="1"
|
||||
x="12.4"
|
||||
y="53"
|
||||
id="rect10" />
|
||||
<path
|
||||
style="opacity:0.3"
|
||||
d="M 51.5 47 A 4.5 4.5 0 0 0 47.267578 50 L 32.400391 50 L 32.400391 53 L 47.267578 53 A 4.5 4.5 0 0 0 51.5 56 A 4.5 4.5 0 0 0 56 51.5 A 4.5 4.5 0 0 0 51.5 47 z"
|
||||
id="path10" />
|
||||
<circle
|
||||
style="opacity:0.2"
|
||||
cx="12.5"
|
||||
cy="52.5"
|
||||
r="4.5"
|
||||
id="circle10" />
|
||||
<circle
|
||||
style="fill:#ffffff"
|
||||
cx="12.5"
|
||||
cy="51.5"
|
||||
r="4.5"
|
||||
id="circle11" />
|
||||
<rect
|
||||
style="fill:#ffffff"
|
||||
width="22.4"
|
||||
height="3"
|
||||
x="12.4"
|
||||
y="50"
|
||||
id="rect11" />
|
||||
<circle
|
||||
style="opacity:0.2"
|
||||
cx="31.5"
|
||||
cy="52.5"
|
||||
r="4.5"
|
||||
id="circle12" />
|
||||
<circle
|
||||
style="fill:#ffffff"
|
||||
cx="31.5"
|
||||
cy="51.5"
|
||||
r="4.5"
|
||||
id="circle13" />
|
||||
<path
|
||||
style="fill:#ffffff;opacity:0.2"
|
||||
d="M 18.25 4 C 13.6795 4 10 7.7048906 10 12.275391 L 10 13.275391 C 10 8.7048906 13.6795 5 18.25 5 L 45.75 5 C 50.3205 5 54 8.7048906 54 13.275391 L 54 12.275391 C 54 7.7048906 50.3205 4 45.75 4 L 18.25 4 z"
|
||||
id="path13" />
|
||||
</svg>
|
After Width: | Height: | Size: 3.9 KiB |
@ -0,0 +1,13 @@
|
||||
polkit.addRule(function(action, subject) {
|
||||
if ((action.id == "org.freedesktop.locale1.set-locale" ||
|
||||
action.id == "org.freedesktop.locale1.set-keyboard" ||
|
||||
action.id == "org.freedesktop.ModemManager1.Device.Control" ||
|
||||
action.id == "org.freedesktop.hostname1.set-static-hostname" ||
|
||||
action.id == "org.freedesktop.hostname1.set-hostname" ||
|
||||
action.id == "org.gnome.controlcenter.datetime.configure") &&
|
||||
subject.local &&
|
||||
subject.active &&
|
||||
subject.isInGroup ("citadel")) {
|
||||
return polkit.Result.YES;
|
||||
}
|
||||
});
|
@ -6,4 +6,4 @@ PathChanged=/run/NetworkManager
|
||||
MakeDirectory=true
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
WantedBy=multi-user.target
|
@ -4,4 +4,4 @@ ConditionPathExists=/run/NetworkManager/resolv.conf
|
||||
ConditionPathExists=/storage/citadel-state
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=/bin/cp /run/NetworkManager/resolv.conf /storage/citadel-state/resolv.conf
|
||||
ExecStart=/bin/cp /run/NetworkManager/resolv.conf /storage/citadel-state/resolv.conf
|
@ -0,0 +1,21 @@
|
||||
LICENSE="CLOSED"
|
||||
|
||||
SRC_URI = "gitsm://git.subgraph.com/brl/citadel-realms.git;protocol=https;branch=master"
|
||||
|
||||
PV = "1.0"
|
||||
SRCREV = "048002a617d643b61774d69edee1526d4c7adbdf"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
APPNAME="com.subgraph.citadel.Realms"
|
||||
|
||||
GTKIC_VERSION = "4"
|
||||
|
||||
FILES:${PN} += "${datadir}/icons \
|
||||
${datadir}/${APPNAME} \
|
||||
"
|
||||
|
||||
DEPENDS = "blueprint-compiler-native gjs gtk4 gtk4-native libadwaita-native"
|
||||
|
||||
inherit meson gtk-icon-cache
|
||||
|
@ -49,4 +49,6 @@ RDEPENDS:${PN} = "\
|
||||
pipewire-tools \
|
||||
pipewire-spa-tools \
|
||||
alsa-utils \
|
||||
gnome-software \
|
||||
minijail \
|
||||
"
|
||||
|
@ -29,6 +29,7 @@ RDEPENDS:${PN} = "\
|
||||
libdrm-amdgpu \
|
||||
dash-to-panel \
|
||||
citadel-config-gnome \
|
||||
citadel-realms \
|
||||
power-profiles-daemon \
|
||||
"
|
||||
|
||||
|
@ -8,7 +8,7 @@ inherit cargo systemd gsettings pkgconfig
|
||||
#
|
||||
# Update this when changes are pushed to github
|
||||
#
|
||||
SRCREV = "421b0e27d777c418a26016bd8065715823504637"
|
||||
SRCREV = "11b3e8a0164c8b304efbeda5245f4ab6ec48d298"
|
||||
|
||||
# get git repo owner from citadel to find the correct citadel-tools repo path
|
||||
python () {
|
||||
@ -31,78 +31,99 @@ SRC_URI += " \
|
||||
crate://crates.io/acl-sys/1.2.2 \
|
||||
crate://crates.io/addr2line/0.17.0 \
|
||||
crate://crates.io/adler/1.0.2 \
|
||||
crate://crates.io/aho-corasick/0.7.18 \
|
||||
crate://crates.io/ansi_term/0.12.1 \
|
||||
crate://crates.io/anstream/0.6.15 \
|
||||
crate://crates.io/anstyle-parse/0.2.5 \
|
||||
crate://crates.io/anstyle-query/1.1.1 \
|
||||
crate://crates.io/anstyle-wincon/3.0.4 \
|
||||
crate://crates.io/anstyle/1.0.8 \
|
||||
crate://crates.io/anyhow/1.0.57 \
|
||||
crate://crates.io/array-macro/1.0.5 \
|
||||
crate://crates.io/async-broadcast/0.3.4 \
|
||||
crate://crates.io/async-channel/1.6.1 \
|
||||
crate://crates.io/async-executor/1.4.1 \
|
||||
crate://crates.io/async-io/1.6.0 \
|
||||
crate://crates.io/async-lock/2.5.0 \
|
||||
crate://crates.io/async-task/4.2.0 \
|
||||
crate://crates.io/async-broadcast/0.7.1 \
|
||||
crate://crates.io/async-channel/2.3.1 \
|
||||
crate://crates.io/async-executor/1.13.1 \
|
||||
crate://crates.io/async-fs/2.1.2 \
|
||||
crate://crates.io/async-io/2.3.4 \
|
||||
crate://crates.io/async-lock/3.4.0 \
|
||||
crate://crates.io/async-process/2.2.4 \
|
||||
crate://crates.io/async-recursion/1.1.1 \
|
||||
crate://crates.io/async-signal/0.2.10 \
|
||||
crate://crates.io/async-task/4.7.1 \
|
||||
crate://crates.io/async-trait/0.1.82 \
|
||||
crate://crates.io/atk-sys/0.14.0 \
|
||||
crate://crates.io/atk/0.14.0 \
|
||||
crate://crates.io/atty/0.2.14 \
|
||||
crate://crates.io/atomic-waker/1.1.2 \
|
||||
crate://crates.io/autocfg/1.1.0 \
|
||||
crate://crates.io/backtrace/0.3.65 \
|
||||
crate://crates.io/bincode/1.3.3 \
|
||||
crate://crates.io/bitflags/1.2.1 \
|
||||
crate://crates.io/bitflags/2.6.0 \
|
||||
crate://crates.io/block-buffer/0.10.4 \
|
||||
crate://crates.io/block-buffer/0.9.0 \
|
||||
crate://crates.io/block-cipher/0.7.1 \
|
||||
crate://crates.io/blowfish/0.5.0 \
|
||||
crate://crates.io/blocking/1.6.1 \
|
||||
crate://crates.io/blowfish/0.7.0 \
|
||||
crate://crates.io/byteorder/1.4.3 \
|
||||
crate://crates.io/cache-padded/1.2.0 \
|
||||
crate://crates.io/cairo-rs/0.14.9 \
|
||||
crate://crates.io/cairo-sys-rs/0.14.9 \
|
||||
crate://crates.io/cc/1.0.73 \
|
||||
crate://crates.io/cfg-expr/0.8.1 \
|
||||
crate://crates.io/cfg-if/0.1.10 \
|
||||
crate://crates.io/cfg-if/1.0.0 \
|
||||
crate://crates.io/cfg_aliases/0.2.1 \
|
||||
crate://crates.io/chrono/0.4.19 \
|
||||
crate://crates.io/clap/2.34.0 \
|
||||
crate://crates.io/concurrent-queue/1.2.2 \
|
||||
crate://crates.io/cipher/0.2.5 \
|
||||
crate://crates.io/clap/4.5.17 \
|
||||
crate://crates.io/clap_builder/4.5.17 \
|
||||
crate://crates.io/clap_derive/4.5.13 \
|
||||
crate://crates.io/clap_lex/0.7.2 \
|
||||
crate://crates.io/colorchoice/1.0.2 \
|
||||
crate://crates.io/concurrent-queue/2.5.0 \
|
||||
crate://crates.io/cpufeatures/0.2.2 \
|
||||
crate://crates.io/crc32fast/1.3.2 \
|
||||
crate://crates.io/crossbeam-channel/0.3.9 \
|
||||
crate://crates.io/crossbeam-utils/0.6.6 \
|
||||
crate://crates.io/crypto-mac/0.8.0 \
|
||||
crate://crates.io/crossbeam-utils/0.8.20 \
|
||||
crate://crates.io/crypto-common/0.1.6 \
|
||||
crate://crates.io/crypto-mac/0.10.1 \
|
||||
crate://crates.io/cursive/0.11.0 \
|
||||
crate://crates.io/dbus/0.6.5 \
|
||||
crate://crates.io/dbus/0.8.4 \
|
||||
crate://crates.io/derivative/2.2.0 \
|
||||
crate://crates.io/digest/0.10.7 \
|
||||
crate://crates.io/digest/0.9.0 \
|
||||
crate://crates.io/easy-parallel/3.2.0 \
|
||||
crate://crates.io/dtoa/0.4.8 \
|
||||
crate://crates.io/ed25519/1.5.2 \
|
||||
crate://crates.io/either/1.6.1 \
|
||||
crate://crates.io/endi/1.1.0 \
|
||||
crate://crates.io/enum-map-derive/0.4.6 \
|
||||
crate://crates.io/enum-map-internals/0.1.2 \
|
||||
crate://crates.io/enum-map/0.5.0 \
|
||||
crate://crates.io/enumflags2/0.6.4 \
|
||||
crate://crates.io/enumflags2_derive/0.6.4 \
|
||||
crate://crates.io/enumflags2/0.7.10 \
|
||||
crate://crates.io/enumflags2_derive/0.7.10 \
|
||||
crate://crates.io/enumset/0.3.19 \
|
||||
crate://crates.io/enumset_derive/0.3.2 \
|
||||
crate://crates.io/event-listener/2.5.2 \
|
||||
crate://crates.io/equivalent/1.0.1 \
|
||||
crate://crates.io/errno/0.3.9 \
|
||||
crate://crates.io/event-listener-strategy/0.5.2 \
|
||||
crate://crates.io/event-listener/5.3.1 \
|
||||
crate://crates.io/failure/0.1.8 \
|
||||
crate://crates.io/failure_derive/0.1.8 \
|
||||
crate://crates.io/fastrand/1.7.0 \
|
||||
crate://crates.io/fastrand/2.1.1 \
|
||||
crate://crates.io/field-offset/0.3.4 \
|
||||
crate://crates.io/flate2/1.0.24 \
|
||||
crate://crates.io/futures-channel/0.3.21 \
|
||||
crate://crates.io/futures-core/0.3.21 \
|
||||
crate://crates.io/futures-core/0.3.30 \
|
||||
crate://crates.io/futures-executor/0.3.21 \
|
||||
crate://crates.io/futures-io/0.3.21 \
|
||||
crate://crates.io/futures-lite/1.12.0 \
|
||||
crate://crates.io/futures-macro/0.3.21 \
|
||||
crate://crates.io/futures-sink/0.3.21 \
|
||||
crate://crates.io/futures-task/0.3.21 \
|
||||
crate://crates.io/futures-util/0.3.21 \
|
||||
crate://crates.io/futures-io/0.3.30 \
|
||||
crate://crates.io/futures-lite/2.3.0 \
|
||||
crate://crates.io/futures-macro/0.3.30 \
|
||||
crate://crates.io/futures-sink/0.3.30 \
|
||||
crate://crates.io/futures-task/0.3.30 \
|
||||
crate://crates.io/futures-util/0.3.30 \
|
||||
crate://crates.io/gdk-pixbuf-sys/0.14.0 \
|
||||
crate://crates.io/gdk-pixbuf/0.14.0 \
|
||||
crate://crates.io/gdk-sys/0.14.0 \
|
||||
crate://crates.io/gdk/0.14.3 \
|
||||
crate://crates.io/generic-array/0.14.5 \
|
||||
crate://crates.io/getrandom/0.1.16 \
|
||||
crate://crates.io/getrandom/0.2.6 \
|
||||
crate://crates.io/gimli/0.26.1 \
|
||||
crate://crates.io/gio-sys/0.14.0 \
|
||||
@ -118,97 +139,101 @@ SRC_URI += " \
|
||||
crate://crates.io/gtk-sys/0.14.0 \
|
||||
crate://crates.io/gtk/0.14.3 \
|
||||
crate://crates.io/gtk3-macros/0.14.0 \
|
||||
crate://crates.io/hashbrown/0.14.5 \
|
||||
crate://crates.io/heck/0.3.3 \
|
||||
crate://crates.io/hermit-abi/0.1.19 \
|
||||
crate://crates.io/heck/0.5.0 \
|
||||
crate://crates.io/hermit-abi/0.4.0 \
|
||||
crate://crates.io/hex/0.4.3 \
|
||||
crate://crates.io/hmac/0.8.1 \
|
||||
crate://crates.io/hmac/0.10.1 \
|
||||
crate://crates.io/indexmap/2.5.0 \
|
||||
crate://crates.io/inotify-sys/0.1.5 \
|
||||
crate://crates.io/inotify/0.8.3 \
|
||||
crate://crates.io/instant/0.1.12 \
|
||||
crate://crates.io/is_terminal_polyfill/1.70.1 \
|
||||
crate://crates.io/itertools/0.10.3 \
|
||||
crate://crates.io/itertools/0.9.0 \
|
||||
crate://crates.io/itoa/0.3.4 \
|
||||
crate://crates.io/lazy_static/1.4.0 \
|
||||
crate://crates.io/libc/0.2.126 \
|
||||
crate://crates.io/libc/0.2.158 \
|
||||
crate://crates.io/libdbus-sys/0.2.2 \
|
||||
crate://crates.io/libsodium-sys/0.2.7 \
|
||||
crate://crates.io/linux-raw-sys/0.4.14 \
|
||||
crate://crates.io/log/0.4.17 \
|
||||
crate://crates.io/md-5/0.9.1 \
|
||||
crate://crates.io/memchr/2.5.0 \
|
||||
crate://crates.io/memoffset/0.6.5 \
|
||||
crate://crates.io/memoffset/0.9.1 \
|
||||
crate://crates.io/miniz_oxide/0.5.1 \
|
||||
crate://crates.io/nix/0.17.0 \
|
||||
crate://crates.io/nix/0.21.2 \
|
||||
crate://crates.io/nix/0.29.0 \
|
||||
crate://crates.io/num-complex/0.2.4 \
|
||||
crate://crates.io/num-integer/0.1.45 \
|
||||
crate://crates.io/num-iter/0.1.43 \
|
||||
crate://crates.io/num-rational/0.2.4 \
|
||||
crate://crates.io/num-traits/0.1.43 \
|
||||
crate://crates.io/num-traits/0.2.15 \
|
||||
crate://crates.io/num/0.2.1 \
|
||||
crate://crates.io/numtoa/0.1.0 \
|
||||
crate://crates.io/object/0.28.4 \
|
||||
crate://crates.io/once_cell/1.10.0 \
|
||||
crate://crates.io/opaque-debug/0.2.3 \
|
||||
crate://crates.io/once_cell/1.19.0 \
|
||||
crate://crates.io/opaque-debug/0.3.0 \
|
||||
crate://crates.io/ordered-stream/0.2.0 \
|
||||
crate://crates.io/owning_ref/0.4.1 \
|
||||
crate://crates.io/pango-sys/0.10.0 \
|
||||
crate://crates.io/pango-sys/0.14.0 \
|
||||
crate://crates.io/pango/0.14.8 \
|
||||
crate://crates.io/pango/0.9.1 \
|
||||
crate://crates.io/parking/2.0.0 \
|
||||
crate://crates.io/parking/2.2.1 \
|
||||
crate://crates.io/pest/2.1.3 \
|
||||
crate://crates.io/pin-project-lite/0.2.9 \
|
||||
crate://crates.io/pin-project-lite/0.2.14 \
|
||||
crate://crates.io/pin-utils/0.1.0 \
|
||||
crate://crates.io/piper/0.2.4 \
|
||||
crate://crates.io/pkg-config/0.3.25 \
|
||||
crate://crates.io/polling/2.2.0 \
|
||||
crate://crates.io/polling/3.7.3 \
|
||||
crate://crates.io/posix-acl/1.0.0 \
|
||||
crate://crates.io/ppv-lite86/0.2.16 \
|
||||
crate://crates.io/proc-macro-crate/0.1.5 \
|
||||
crate://crates.io/proc-macro-crate/1.1.3 \
|
||||
crate://crates.io/proc-macro-crate/3.2.0 \
|
||||
crate://crates.io/proc-macro-error-attr/1.0.4 \
|
||||
crate://crates.io/proc-macro-error/1.0.4 \
|
||||
crate://crates.io/proc-macro2/0.4.30 \
|
||||
crate://crates.io/proc-macro2/1.0.39 \
|
||||
crate://crates.io/proc-macro2/1.0.86 \
|
||||
crate://crates.io/procfs/0.12.0 \
|
||||
crate://crates.io/pwhash/0.3.1 \
|
||||
crate://crates.io/pwhash/1.0.0 \
|
||||
crate://crates.io/quote/0.6.13 \
|
||||
crate://crates.io/quote/1.0.18 \
|
||||
crate://crates.io/rand/0.7.3 \
|
||||
crate://crates.io/quote/1.0.37 \
|
||||
crate://crates.io/rand/0.8.5 \
|
||||
crate://crates.io/rand_chacha/0.2.2 \
|
||||
crate://crates.io/rand_chacha/0.3.1 \
|
||||
crate://crates.io/rand_core/0.5.1 \
|
||||
crate://crates.io/rand_core/0.6.3 \
|
||||
crate://crates.io/rand_hc/0.2.0 \
|
||||
crate://crates.io/redox_syscall/0.2.13 \
|
||||
crate://crates.io/redox_termios/0.1.2 \
|
||||
crate://crates.io/regex-syntax/0.6.25 \
|
||||
crate://crates.io/regex/1.5.5 \
|
||||
crate://crates.io/remove_dir_all/0.5.3 \
|
||||
crate://crates.io/rpassword/4.0.5 \
|
||||
crate://crates.io/rpassword/7.3.1 \
|
||||
crate://crates.io/rtoolbox/0.0.2 \
|
||||
crate://crates.io/rustc-demangle/0.1.21 \
|
||||
crate://crates.io/rustc_version/0.3.3 \
|
||||
crate://crates.io/rustix/0.38.37 \
|
||||
crate://crates.io/same-file/1.0.6 \
|
||||
crate://crates.io/scoped-tls/1.0.0 \
|
||||
crate://crates.io/semver-parser/0.10.2 \
|
||||
crate://crates.io/semver/0.11.0 \
|
||||
crate://crates.io/serde/1.0.137 \
|
||||
crate://crates.io/serde_derive/1.0.137 \
|
||||
crate://crates.io/serde_repr/0.1.8 \
|
||||
crate://crates.io/serde/1.0.209 \
|
||||
crate://crates.io/serde_derive/1.0.209 \
|
||||
crate://crates.io/serde_json/1.0.1 \
|
||||
crate://crates.io/serde_repr/0.1.19 \
|
||||
crate://crates.io/serde_spanned/0.6.7 \
|
||||
crate://crates.io/sha-1/0.9.8 \
|
||||
crate://crates.io/sha1/0.6.1 \
|
||||
crate://crates.io/sha1_smol/1.0.0 \
|
||||
crate://crates.io/sha1/0.10.6 \
|
||||
crate://crates.io/sha2/0.9.9 \
|
||||
crate://crates.io/signal-hook-registry/1.4.0 \
|
||||
crate://crates.io/signal-hook/0.1.17 \
|
||||
crate://crates.io/signature/1.5.0 \
|
||||
crate://crates.io/slab/0.4.6 \
|
||||
crate://crates.io/slotmap/1.0.6 \
|
||||
crate://crates.io/slab/0.4.9 \
|
||||
crate://crates.io/smallvec/1.8.0 \
|
||||
crate://crates.io/socket2/0.4.4 \
|
||||
crate://crates.io/sodiumoxide/0.2.7 \
|
||||
crate://crates.io/stable_deref_trait/1.2.0 \
|
||||
crate://crates.io/static_assertions/1.1.0 \
|
||||
crate://crates.io/strsim/0.8.0 \
|
||||
crate://crates.io/strsim/0.11.1 \
|
||||
crate://crates.io/strum/0.18.0 \
|
||||
crate://crates.io/strum/0.21.0 \
|
||||
crate://crates.io/strum_macros/0.18.0 \
|
||||
@ -216,120 +241,169 @@ SRC_URI += " \
|
||||
crate://crates.io/subtle/2.4.1 \
|
||||
crate://crates.io/syn/0.15.44 \
|
||||
crate://crates.io/syn/1.0.95 \
|
||||
crate://crates.io/syn/2.0.77 \
|
||||
crate://crates.io/synstructure/0.12.6 \
|
||||
crate://crates.io/system-deps/1.3.2 \
|
||||
crate://crates.io/system-deps/3.2.0 \
|
||||
crate://crates.io/tempfile/3.3.0 \
|
||||
crate://crates.io/termion/1.5.6 \
|
||||
crate://crates.io/textwrap/0.11.0 \
|
||||
crate://crates.io/thiserror-impl/1.0.31 \
|
||||
crate://crates.io/thiserror/1.0.31 \
|
||||
crate://crates.io/time/0.1.43 \
|
||||
crate://crates.io/toml/0.4.10 \
|
||||
crate://crates.io/toml/0.5.9 \
|
||||
crate://crates.io/toml/0.8.19 \
|
||||
crate://crates.io/toml_datetime/0.6.8 \
|
||||
crate://crates.io/toml_edit/0.22.20 \
|
||||
crate://crates.io/tracing-attributes/0.1.27 \
|
||||
crate://crates.io/tracing-core/0.1.32 \
|
||||
crate://crates.io/tracing/0.1.40 \
|
||||
crate://crates.io/typenum/1.15.0 \
|
||||
crate://crates.io/ucd-trie/0.1.3 \
|
||||
crate://crates.io/uds_windows/1.1.0 \
|
||||
crate://crates.io/unicode-ident/1.0.0 \
|
||||
crate://crates.io/unicode-segmentation/1.9.0 \
|
||||
crate://crates.io/unicode-width/0.1.9 \
|
||||
crate://crates.io/unicode-xid/0.1.0 \
|
||||
crate://crates.io/unicode-xid/0.2.3 \
|
||||
crate://crates.io/vec_map/0.8.2 \
|
||||
crate://crates.io/utf8parse/0.2.2 \
|
||||
crate://crates.io/version-compare/0.0.10 \
|
||||
crate://crates.io/version-compare/0.0.11 \
|
||||
crate://crates.io/version_check/0.9.4 \
|
||||
crate://crates.io/void/1.0.2 \
|
||||
crate://crates.io/waker-fn/1.1.0 \
|
||||
crate://crates.io/walkdir/2.3.2 \
|
||||
crate://crates.io/wasi/0.10.2+wasi-snapshot-preview1 \
|
||||
crate://crates.io/wasi/0.9.0+wasi-snapshot-preview1 \
|
||||
crate://crates.io/wepoll-ffi/0.1.2 \
|
||||
crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
|
||||
crate://crates.io/winapi-util/0.1.5 \
|
||||
crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
|
||||
crate://crates.io/winapi/0.3.9 \
|
||||
crate://crates.io/windows-sys/0.48.0 \
|
||||
crate://crates.io/windows-sys/0.52.0 \
|
||||
crate://crates.io/windows-sys/0.59.0 \
|
||||
crate://crates.io/windows-targets/0.48.5 \
|
||||
crate://crates.io/windows-targets/0.52.6 \
|
||||
crate://crates.io/windows_aarch64_gnullvm/0.48.5 \
|
||||
crate://crates.io/windows_aarch64_gnullvm/0.52.6 \
|
||||
crate://crates.io/windows_aarch64_msvc/0.48.5 \
|
||||
crate://crates.io/windows_aarch64_msvc/0.52.6 \
|
||||
crate://crates.io/windows_i686_gnu/0.48.5 \
|
||||
crate://crates.io/windows_i686_gnu/0.52.6 \
|
||||
crate://crates.io/windows_i686_gnullvm/0.52.6 \
|
||||
crate://crates.io/windows_i686_msvc/0.48.5 \
|
||||
crate://crates.io/windows_i686_msvc/0.52.6 \
|
||||
crate://crates.io/windows_x86_64_gnu/0.48.5 \
|
||||
crate://crates.io/windows_x86_64_gnu/0.52.6 \
|
||||
crate://crates.io/windows_x86_64_gnullvm/0.48.5 \
|
||||
crate://crates.io/windows_x86_64_gnullvm/0.52.6 \
|
||||
crate://crates.io/windows_x86_64_msvc/0.48.5 \
|
||||
crate://crates.io/windows_x86_64_msvc/0.52.6 \
|
||||
crate://crates.io/winnow/0.6.18 \
|
||||
crate://crates.io/xdg-home/1.3.0 \
|
||||
crate://crates.io/xi-unicode/0.1.0 \
|
||||
crate://crates.io/zbus/2.0.0-beta.5 \
|
||||
crate://crates.io/zbus_macros/2.0.0-beta.5 \
|
||||
crate://crates.io/zvariant/2.10.0 \
|
||||
crate://crates.io/zvariant_derive/2.10.0 \
|
||||
crate://crates.io/zbus/4.4.0 \
|
||||
crate://crates.io/zbus_macros/4.4.0 \
|
||||
crate://crates.io/zbus_names/3.0.0 \
|
||||
crate://crates.io/zvariant/4.2.0 \
|
||||
crate://crates.io/zvariant_derive/4.2.0 \
|
||||
crate://crates.io/zvariant_utils/2.1.0 \
|
||||
"
|
||||
|
||||
SRC_URI[acl-sys-1.2.2.sha256sum] = "bbc079f9bdd3124fd18df23c67f7e0f79d24751ae151dcffd095fcade07a3eb2"
|
||||
SRC_URI[addr2line-0.17.0.sha256sum] = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b"
|
||||
SRC_URI[adler-1.0.2.sha256sum] = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
|
||||
SRC_URI[aho-corasick-0.7.18.sha256sum] = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f"
|
||||
SRC_URI[ansi_term-0.12.1.sha256sum] = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2"
|
||||
SRC_URI[anstream-0.6.15.sha256sum] = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526"
|
||||
SRC_URI[anstyle-parse-0.2.5.sha256sum] = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb"
|
||||
SRC_URI[anstyle-query-1.1.1.sha256sum] = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a"
|
||||
SRC_URI[anstyle-wincon-3.0.4.sha256sum] = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8"
|
||||
SRC_URI[anstyle-1.0.8.sha256sum] = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1"
|
||||
SRC_URI[anyhow-1.0.57.sha256sum] = "08f9b8508dccb7687a1d6c4ce66b2b0ecef467c94667de27d8d7fe1f8d2a9cdc"
|
||||
SRC_URI[array-macro-1.0.5.sha256sum] = "06e97b4e522f9e55523001238ac59d13a8603af57f69980de5d8de4bbbe8ada6"
|
||||
SRC_URI[async-broadcast-0.3.4.sha256sum] = "90622698a1218e0b2fb846c97b5f19a0831f6baddee73d9454156365ccfa473b"
|
||||
SRC_URI[async-channel-1.6.1.sha256sum] = "2114d64672151c0c5eaa5e131ec84a74f06e1e559830dabba01ca30605d66319"
|
||||
SRC_URI[async-executor-1.4.1.sha256sum] = "871f9bb5e0a22eeb7e8cf16641feb87c9dc67032ccf8ff49e772eb9941d3a965"
|
||||
SRC_URI[async-io-1.6.0.sha256sum] = "a811e6a479f2439f0c04038796b5cfb3d2ad56c230e0f2d3f7b04d68cfee607b"
|
||||
SRC_URI[async-lock-2.5.0.sha256sum] = "e97a171d191782fba31bb902b14ad94e24a68145032b7eedf871ab0bc0d077b6"
|
||||
SRC_URI[async-task-4.2.0.sha256sum] = "30696a84d817107fc028e049980e09d5e140e8da8f1caeb17e8e950658a3cea9"
|
||||
SRC_URI[async-broadcast-0.7.1.sha256sum] = "20cd0e2e25ea8e5f7e9df04578dc6cf5c83577fd09b1a46aaf5c85e1c33f2a7e"
|
||||
SRC_URI[async-channel-2.3.1.sha256sum] = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a"
|
||||
SRC_URI[async-executor-1.13.1.sha256sum] = "30ca9a001c1e8ba5149f91a74362376cc6bc5b919d92d988668657bd570bdcec"
|
||||
SRC_URI[async-fs-2.1.2.sha256sum] = "ebcd09b382f40fcd159c2d695175b2ae620ffa5f3bd6f664131efff4e8b9e04a"
|
||||
SRC_URI[async-io-2.3.4.sha256sum] = "444b0228950ee6501b3568d3c93bf1176a1fdbc3b758dcd9475046d30f4dc7e8"
|
||||
SRC_URI[async-lock-3.4.0.sha256sum] = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18"
|
||||
SRC_URI[async-process-2.2.4.sha256sum] = "a8a07789659a4d385b79b18b9127fc27e1a59e1e89117c78c5ea3b806f016374"
|
||||
SRC_URI[async-recursion-1.1.1.sha256sum] = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11"
|
||||
SRC_URI[async-signal-0.2.10.sha256sum] = "637e00349800c0bdf8bfc21ebbc0b6524abea702b0da4168ac00d070d0c0b9f3"
|
||||
SRC_URI[async-task-4.7.1.sha256sum] = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de"
|
||||
SRC_URI[async-trait-0.1.82.sha256sum] = "a27b8a3a6e1a44fa4c8baf1f653e4172e81486d4941f2237e20dc2d0cf4ddff1"
|
||||
SRC_URI[atk-sys-0.14.0.sha256sum] = "badcf670157c84bb8b1cf6b5f70b650fed78da2033c9eed84c4e49b11cbe83ea"
|
||||
SRC_URI[atk-0.14.0.sha256sum] = "a83b21d2aa75e464db56225e1bda2dd5993311ba1095acaa8fa03d1ae67026ba"
|
||||
SRC_URI[atty-0.2.14.sha256sum] = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
|
||||
SRC_URI[atomic-waker-1.1.2.sha256sum] = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
|
||||
SRC_URI[autocfg-1.1.0.sha256sum] = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
|
||||
SRC_URI[backtrace-0.3.65.sha256sum] = "11a17d453482a265fd5f8479f2a3f405566e6ca627837aaddb85af8b1ab8ef61"
|
||||
SRC_URI[bincode-1.3.3.sha256sum] = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad"
|
||||
SRC_URI[bitflags-1.2.1.sha256sum] = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
|
||||
SRC_URI[bitflags-2.6.0.sha256sum] = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
|
||||
SRC_URI[block-buffer-0.10.4.sha256sum] = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
|
||||
SRC_URI[block-buffer-0.9.0.sha256sum] = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4"
|
||||
SRC_URI[block-cipher-0.7.1.sha256sum] = "fa136449e765dc7faa244561ccae839c394048667929af599b5d931ebe7b7f10"
|
||||
SRC_URI[blowfish-0.5.0.sha256sum] = "91d01392750dd899a2528948d6b856afe2df508d627fc7c339868c0bd0141b4b"
|
||||
SRC_URI[blocking-1.6.1.sha256sum] = "703f41c54fc768e63e091340b424302bb1c29ef4aa0c7f10fe849dfb114d29ea"
|
||||
SRC_URI[blowfish-0.7.0.sha256sum] = "32fa6a061124e37baba002e496d203e23ba3d7b73750be82dbfbc92913048a5b"
|
||||
SRC_URI[byteorder-1.4.3.sha256sum] = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
|
||||
SRC_URI[cache-padded-1.2.0.sha256sum] = "c1db59621ec70f09c5e9b597b220c7a2b43611f4710dc03ceb8748637775692c"
|
||||
SRC_URI[cairo-rs-0.14.9.sha256sum] = "33b5725979db0c586d98abad2193cdb612dd40ef95cd26bd99851bf93b3cb482"
|
||||
SRC_URI[cairo-sys-rs-0.14.9.sha256sum] = "b448b876970834fda82ba3aeaccadbd760206b75388fc5c1b02f1e343b697570"
|
||||
SRC_URI[cc-1.0.73.sha256sum] = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
|
||||
SRC_URI[cfg-expr-0.8.1.sha256sum] = "b412e83326147c2bb881f8b40edfbf9905b9b8abaebd0e47ca190ba62fda8f0e"
|
||||
SRC_URI[cfg-if-0.1.10.sha256sum] = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
|
||||
SRC_URI[cfg-if-1.0.0.sha256sum] = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
|
||||
SRC_URI[cfg_aliases-0.2.1.sha256sum] = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724"
|
||||
SRC_URI[chrono-0.4.19.sha256sum] = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73"
|
||||
SRC_URI[clap-2.34.0.sha256sum] = "a0610544180c38b88101fecf2dd634b174a62eef6946f84dfc6a7127512b381c"
|
||||
SRC_URI[concurrent-queue-1.2.2.sha256sum] = "30ed07550be01594c6026cff2a1d7fe9c8f683caa798e12b68694ac9e88286a3"
|
||||
SRC_URI[cipher-0.2.5.sha256sum] = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801"
|
||||
SRC_URI[clap-4.5.17.sha256sum] = "3e5a21b8495e732f1b3c364c9949b201ca7bae518c502c80256c96ad79eaf6ac"
|
||||
SRC_URI[clap_builder-4.5.17.sha256sum] = "8cf2dd12af7a047ad9d6da2b6b249759a22a7abc0f474c1dae1777afa4b21a73"
|
||||
SRC_URI[clap_derive-4.5.13.sha256sum] = "501d359d5f3dcaf6ecdeee48833ae73ec6e42723a1e52419c79abf9507eec0a0"
|
||||
SRC_URI[clap_lex-0.7.2.sha256sum] = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97"
|
||||
SRC_URI[colorchoice-1.0.2.sha256sum] = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0"
|
||||
SRC_URI[concurrent-queue-2.5.0.sha256sum] = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
|
||||
SRC_URI[cpufeatures-0.2.2.sha256sum] = "59a6001667ab124aebae2a495118e11d30984c3a653e99d86d58971708cf5e4b"
|
||||
SRC_URI[crc32fast-1.3.2.sha256sum] = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
|
||||
SRC_URI[crossbeam-channel-0.3.9.sha256sum] = "c8ec7fcd21571dc78f96cc96243cab8d8f035247c3efd16c687be154c3fa9efa"
|
||||
SRC_URI[crossbeam-utils-0.6.6.sha256sum] = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
|
||||
SRC_URI[crypto-mac-0.8.0.sha256sum] = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab"
|
||||
SRC_URI[crossbeam-utils-0.8.20.sha256sum] = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
|
||||
SRC_URI[crypto-common-0.1.6.sha256sum] = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
|
||||
SRC_URI[crypto-mac-0.10.1.sha256sum] = "bff07008ec701e8028e2ceb8f83f0e4274ee62bd2dbdc4fefff2e9a91824081a"
|
||||
SRC_URI[cursive-0.11.0.sha256sum] = "e50c8961fb6728e44ea668e4133ca6f5bea681cb5e93aaee70a8f452412bbce5"
|
||||
SRC_URI[dbus-0.6.5.sha256sum] = "48b5f0f36f1eebe901b0e6bee369a77ed3396334bf3f09abd46454a576f71819"
|
||||
SRC_URI[dbus-0.8.4.sha256sum] = "5cd9e78c210146a1860f897db03412fd5091fd73100778e43ee255cca252cf32"
|
||||
SRC_URI[derivative-2.2.0.sha256sum] = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
|
||||
SRC_URI[digest-0.10.7.sha256sum] = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
|
||||
SRC_URI[digest-0.9.0.sha256sum] = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066"
|
||||
SRC_URI[easy-parallel-3.2.0.sha256sum] = "6907e25393cdcc1f4f3f513d9aac1e840eb1cc341a0fccb01171f7d14d10b946"
|
||||
SRC_URI[dtoa-0.4.8.sha256sum] = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0"
|
||||
SRC_URI[ed25519-1.5.2.sha256sum] = "1e9c280362032ea4203659fc489832d0204ef09f247a0506f170dafcac08c369"
|
||||
SRC_URI[either-1.6.1.sha256sum] = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
|
||||
SRC_URI[endi-1.1.0.sha256sum] = "a3d8a32ae18130a3c84dd492d4215c3d913c3b07c6b63c2eb3eb7ff1101ab7bf"
|
||||
SRC_URI[enum-map-derive-0.4.6.sha256sum] = "e5c450cf304c9e18d45db562025a14fb1ca0f5c769b6f609309f81d4c31de455"
|
||||
SRC_URI[enum-map-internals-0.1.2.sha256sum] = "38b0bacf3ea7aba18ce84032efc3f0fa29f5c814048b742ab3e64d07d83ac3e8"
|
||||
SRC_URI[enum-map-0.5.0.sha256sum] = "ccd9b2d5e0eb5c2ff851791e2af90ab4531b1168cfc239d1c0bf467e60ba3c89"
|
||||
SRC_URI[enumflags2-0.6.4.sha256sum] = "83c8d82922337cd23a15f88b70d8e4ef5f11da38dd7cdb55e84dd5de99695da0"
|
||||
SRC_URI[enumflags2_derive-0.6.4.sha256sum] = "946ee94e3dbf58fdd324f9ce245c7b238d46a66f00e86a020b71996349e46cce"
|
||||
SRC_URI[enumflags2-0.7.10.sha256sum] = "d232db7f5956f3f14313dc2f87985c58bd2c695ce124c8cdd984e08e15ac133d"
|
||||
SRC_URI[enumflags2_derive-0.7.10.sha256sum] = "de0d48a183585823424a4ce1aa132d174a6a81bd540895822eb4c8373a8e49e8"
|
||||
SRC_URI[enumset-0.3.19.sha256sum] = "43bd5effaae6a671efa2032056110916a501bd24128cfb6f44e5a339b5cdb152"
|
||||
SRC_URI[enumset_derive-0.3.2.sha256sum] = "f73e5c77cf68e532b0e6fdd22c7f8f4d09f6f663692aecca0b3d8ec2e11af723"
|
||||
SRC_URI[event-listener-2.5.2.sha256sum] = "77f3309417938f28bf8228fcff79a4a37103981e3e186d2ccd19c74b38f4eb71"
|
||||
SRC_URI[equivalent-1.0.1.sha256sum] = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
|
||||
SRC_URI[errno-0.3.9.sha256sum] = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
|
||||
SRC_URI[event-listener-strategy-0.5.2.sha256sum] = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
|
||||
SRC_URI[event-listener-5.3.1.sha256sum] = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba"
|
||||
SRC_URI[failure-0.1.8.sha256sum] = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86"
|
||||
SRC_URI[failure_derive-0.1.8.sha256sum] = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
|
||||
SRC_URI[fastrand-1.7.0.sha256sum] = "c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf"
|
||||
SRC_URI[fastrand-2.1.1.sha256sum] = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6"
|
||||
SRC_URI[field-offset-0.3.4.sha256sum] = "1e1c54951450cbd39f3dbcf1005ac413b49487dabf18a720ad2383eccfeffb92"
|
||||
SRC_URI[flate2-1.0.24.sha256sum] = "f82b0f4c27ad9f8bfd1f3208d882da2b09c301bc1c828fd3a00d0216d2fbbff6"
|
||||
SRC_URI[futures-channel-0.3.21.sha256sum] = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010"
|
||||
SRC_URI[futures-core-0.3.21.sha256sum] = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3"
|
||||
SRC_URI[futures-core-0.3.30.sha256sum] = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d"
|
||||
SRC_URI[futures-executor-0.3.21.sha256sum] = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6"
|
||||
SRC_URI[futures-io-0.3.21.sha256sum] = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b"
|
||||
SRC_URI[futures-lite-1.12.0.sha256sum] = "7694489acd39452c77daa48516b894c153f192c3578d5a839b62c58099fcbf48"
|
||||
SRC_URI[futures-macro-0.3.21.sha256sum] = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512"
|
||||
SRC_URI[futures-sink-0.3.21.sha256sum] = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868"
|
||||
SRC_URI[futures-task-0.3.21.sha256sum] = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a"
|
||||
SRC_URI[futures-util-0.3.21.sha256sum] = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a"
|
||||
SRC_URI[futures-io-0.3.30.sha256sum] = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1"
|
||||
SRC_URI[futures-lite-2.3.0.sha256sum] = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
|
||||
SRC_URI[futures-macro-0.3.30.sha256sum] = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
|
||||
SRC_URI[futures-sink-0.3.30.sha256sum] = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5"
|
||||
SRC_URI[futures-task-0.3.30.sha256sum] = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004"
|
||||
SRC_URI[futures-util-0.3.30.sha256sum] = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48"
|
||||
SRC_URI[gdk-pixbuf-sys-0.14.0.sha256sum] = "f097c0704201fbc8f69c1762dc58c6947c8bb188b8ed0bc7e65259f1894fe590"
|
||||
SRC_URI[gdk-pixbuf-0.14.0.sha256sum] = "534192cb8f01daeb8fab2c8d4baa8f9aae5b7a39130525779f5c2608e235b10f"
|
||||
SRC_URI[gdk-sys-0.14.0.sha256sum] = "0e091b3d3d6696949ac3b3fb3c62090e5bfd7bd6850bef5c3c5ea701de1b1f1e"
|
||||
SRC_URI[gdk-0.14.3.sha256sum] = "b9d749dcfc00d8de0d7c3a289e04a04293eb5ba3d8a4e64d64911d481fa9933b"
|
||||
SRC_URI[generic-array-0.14.5.sha256sum] = "fd48d33ec7f05fbfa152300fdad764757cbded343c1aa1cff2fbaf4134851803"
|
||||
SRC_URI[getrandom-0.1.16.sha256sum] = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
|
||||
SRC_URI[getrandom-0.2.6.sha256sum] = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad"
|
||||
SRC_URI[gimli-0.26.1.sha256sum] = "78cc372d058dcf6d5ecd98510e7fbc9e5aec4d21de70f65fea8fecebcd881bd4"
|
||||
SRC_URI[gio-sys-0.14.0.sha256sum] = "c0a41df66e57fcc287c4bcf74fc26b884f31901ea9792ec75607289b456f48fa"
|
||||
@ -345,97 +419,101 @@ SRC_URI[gobject-sys-0.14.0.sha256sum] = "aa92cae29759dae34ab5921d73fff5ad54b3d79
|
||||
SRC_URI[gtk-sys-0.14.0.sha256sum] = "8c14c8d3da0545785a7c5a120345b3abb534010fb8ae0f2ef3f47c027fba303e"
|
||||
SRC_URI[gtk-0.14.3.sha256sum] = "2eb51122dd3317e9327ec1e4faa151d1fa0d95664cd8fb8dcfacf4d4d29ac70c"
|
||||
SRC_URI[gtk3-macros-0.14.0.sha256sum] = "21de1da96dc117443fb03c2e270b2d34b7de98d0a79a19bbb689476173745b79"
|
||||
SRC_URI[hashbrown-0.14.5.sha256sum] = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
|
||||
SRC_URI[heck-0.3.3.sha256sum] = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
|
||||
SRC_URI[hermit-abi-0.1.19.sha256sum] = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
|
||||
SRC_URI[heck-0.5.0.sha256sum] = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
|
||||
SRC_URI[hermit-abi-0.4.0.sha256sum] = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc"
|
||||
SRC_URI[hex-0.4.3.sha256sum] = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
|
||||
SRC_URI[hmac-0.8.1.sha256sum] = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840"
|
||||
SRC_URI[hmac-0.10.1.sha256sum] = "c1441c6b1e930e2817404b5046f1f989899143a12bf92de603b69f4e0aee1e15"
|
||||
SRC_URI[indexmap-2.5.0.sha256sum] = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5"
|
||||
SRC_URI[inotify-sys-0.1.5.sha256sum] = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb"
|
||||
SRC_URI[inotify-0.8.3.sha256sum] = "46dd0a94b393c730779ccfd2a872b67b1eb67be3fc33082e733bdb38b5fde4d4"
|
||||
SRC_URI[instant-0.1.12.sha256sum] = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
|
||||
SRC_URI[is_terminal_polyfill-1.70.1.sha256sum] = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf"
|
||||
SRC_URI[itertools-0.10.3.sha256sum] = "a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3"
|
||||
SRC_URI[itertools-0.9.0.sha256sum] = "284f18f85651fe11e8a991b2adb42cb078325c996ed026d994719efcfca1d54b"
|
||||
SRC_URI[itoa-0.3.4.sha256sum] = "8324a32baf01e2ae060e9de58ed0bc2320c9a2833491ee36cd3b4c414de4db8c"
|
||||
SRC_URI[lazy_static-1.4.0.sha256sum] = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
||||
SRC_URI[libc-0.2.126.sha256sum] = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836"
|
||||
SRC_URI[libc-0.2.158.sha256sum] = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439"
|
||||
SRC_URI[libdbus-sys-0.2.2.sha256sum] = "c185b5b7ad900923ef3a8ff594083d4d9b5aea80bb4f32b8342363138c0d456b"
|
||||
SRC_URI[libsodium-sys-0.2.7.sha256sum] = "6b779387cd56adfbc02ea4a668e704f729be8d6a6abd2c27ca5ee537849a92fd"
|
||||
SRC_URI[linux-raw-sys-0.4.14.sha256sum] = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89"
|
||||
SRC_URI[log-0.4.17.sha256sum] = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
|
||||
SRC_URI[md-5-0.9.1.sha256sum] = "7b5a279bb9607f9f53c22d496eade00d138d1bdcccd07d74650387cf94942a15"
|
||||
SRC_URI[memchr-2.5.0.sha256sum] = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
|
||||
SRC_URI[memoffset-0.6.5.sha256sum] = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce"
|
||||
SRC_URI[memoffset-0.9.1.sha256sum] = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a"
|
||||
SRC_URI[miniz_oxide-0.5.1.sha256sum] = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082"
|
||||
SRC_URI[nix-0.17.0.sha256sum] = "50e4785f2c3b7589a0d0c1dd60285e1188adac4006e8abd6dd578e1567027363"
|
||||
SRC_URI[nix-0.21.2.sha256sum] = "77d9f3521ea8e0641a153b3cddaf008dcbf26acd4ed739a2517295e0760d12c7"
|
||||
SRC_URI[nix-0.29.0.sha256sum] = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
|
||||
SRC_URI[num-complex-0.2.4.sha256sum] = "b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95"
|
||||
SRC_URI[num-integer-0.1.45.sha256sum] = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
|
||||
SRC_URI[num-iter-0.1.43.sha256sum] = "7d03e6c028c5dc5cac6e2dec0efda81fc887605bb3d884578bb6d6bf7514e252"
|
||||
SRC_URI[num-rational-0.2.4.sha256sum] = "5c000134b5dbf44adc5cb772486d335293351644b801551abe8f75c84cfa4aef"
|
||||
SRC_URI[num-traits-0.1.43.sha256sum] = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
|
||||
SRC_URI[num-traits-0.2.15.sha256sum] = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd"
|
||||
SRC_URI[num-0.2.1.sha256sum] = "b8536030f9fea7127f841b45bb6243b27255787fb4eb83958aa1ef9d2fdc0c36"
|
||||
SRC_URI[numtoa-0.1.0.sha256sum] = "b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef"
|
||||
SRC_URI[object-0.28.4.sha256sum] = "e42c982f2d955fac81dd7e1d0e1426a7d702acd9c98d19ab01083a6a0328c424"
|
||||
SRC_URI[once_cell-1.10.0.sha256sum] = "87f3e037eac156d1775da914196f0f37741a274155e34a0b7e427c35d2a2ecb9"
|
||||
SRC_URI[opaque-debug-0.2.3.sha256sum] = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c"
|
||||
SRC_URI[once_cell-1.19.0.sha256sum] = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
|
||||
SRC_URI[opaque-debug-0.3.0.sha256sum] = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5"
|
||||
SRC_URI[ordered-stream-0.2.0.sha256sum] = "9aa2b01e1d916879f73a53d01d1d6cee68adbb31d6d9177a8cfce093cced1d50"
|
||||
SRC_URI[owning_ref-0.4.1.sha256sum] = "6ff55baddef9e4ad00f88b6c743a2a8062d4c6ade126c2a528644b8e444d52ce"
|
||||
SRC_URI[pango-sys-0.10.0.sha256sum] = "24d2650c8b62d116c020abd0cea26a4ed96526afda89b1c4ea567131fdefc890"
|
||||
SRC_URI[pango-sys-0.14.0.sha256sum] = "2367099ca5e761546ba1d501955079f097caa186bb53ce0f718dca99ac1942fe"
|
||||
SRC_URI[pango-0.14.8.sha256sum] = "546fd59801e5ca735af82839007edd226fe7d3bb06433ec48072be4439c28581"
|
||||
SRC_URI[pango-0.9.1.sha256sum] = "9937068580bebd8ced19975938573803273ccbcbd598c58d4906efd4ac87c438"
|
||||
SRC_URI[parking-2.0.0.sha256sum] = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72"
|
||||
SRC_URI[parking-2.2.1.sha256sum] = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba"
|
||||
SRC_URI[pest-2.1.3.sha256sum] = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53"
|
||||
SRC_URI[pin-project-lite-0.2.9.sha256sum] = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
|
||||
SRC_URI[pin-project-lite-0.2.14.sha256sum] = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
|
||||
SRC_URI[pin-utils-0.1.0.sha256sum] = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
|
||||
SRC_URI[piper-0.2.4.sha256sum] = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066"
|
||||
SRC_URI[pkg-config-0.3.25.sha256sum] = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
|
||||
SRC_URI[polling-2.2.0.sha256sum] = "685404d509889fade3e86fe3a5803bca2ec09b0c0778d5ada6ec8bf7a8de5259"
|
||||
SRC_URI[polling-3.7.3.sha256sum] = "cc2790cd301dec6cd3b7a025e4815cf825724a51c98dccfe6a3e55f05ffb6511"
|
||||
SRC_URI[posix-acl-1.0.0.sha256sum] = "2ea5dae99e4365fa738533b43f4c649c0450ba7fbb81a984a4fba6a42ce91812"
|
||||
SRC_URI[ppv-lite86-0.2.16.sha256sum] = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872"
|
||||
SRC_URI[proc-macro-crate-0.1.5.sha256sum] = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785"
|
||||
SRC_URI[proc-macro-crate-1.1.3.sha256sum] = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a"
|
||||
SRC_URI[proc-macro-crate-3.2.0.sha256sum] = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b"
|
||||
SRC_URI[proc-macro-error-attr-1.0.4.sha256sum] = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
|
||||
SRC_URI[proc-macro-error-1.0.4.sha256sum] = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
|
||||
SRC_URI[proc-macro2-0.4.30.sha256sum] = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759"
|
||||
SRC_URI[proc-macro2-1.0.39.sha256sum] = "c54b25569025b7fc9651de43004ae593a75ad88543b17178aa5e1b9c4f15f56f"
|
||||
SRC_URI[proc-macro2-1.0.86.sha256sum] = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"
|
||||
SRC_URI[procfs-0.12.0.sha256sum] = "0941606b9934e2d98a3677759a971756eb821f75764d0e0d26946d08e74d9104"
|
||||
SRC_URI[pwhash-0.3.1.sha256sum] = "1068eebd5d8aa4bbd6cbba05ff2647ad32f8ec86a3b73417b95522383c4bd18f"
|
||||
SRC_URI[pwhash-1.0.0.sha256sum] = "419a3ad8fa9f9d445e69d9b185a24878ae6e6f55c96e4512f4a0e28cd3bc5c56"
|
||||
SRC_URI[quote-0.6.13.sha256sum] = "6ce23b6b870e8f94f81fb0a363d65d86675884b34a09043c81e5562f11c1f8e1"
|
||||
SRC_URI[quote-1.0.18.sha256sum] = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1"
|
||||
SRC_URI[rand-0.7.3.sha256sum] = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
|
||||
SRC_URI[quote-1.0.37.sha256sum] = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
|
||||
SRC_URI[rand-0.8.5.sha256sum] = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
|
||||
SRC_URI[rand_chacha-0.2.2.sha256sum] = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
|
||||
SRC_URI[rand_chacha-0.3.1.sha256sum] = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
|
||||
SRC_URI[rand_core-0.5.1.sha256sum] = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
|
||||
SRC_URI[rand_core-0.6.3.sha256sum] = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
|
||||
SRC_URI[rand_hc-0.2.0.sha256sum] = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
|
||||
SRC_URI[redox_syscall-0.2.13.sha256sum] = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
|
||||
SRC_URI[redox_termios-0.1.2.sha256sum] = "8440d8acb4fd3d277125b4bd01a6f38aee8d814b3b5fc09b3f2b825d37d3fe8f"
|
||||
SRC_URI[regex-syntax-0.6.25.sha256sum] = "f497285884f3fcff424ffc933e56d7cbca511def0c9831a7f9b5f6153e3cc89b"
|
||||
SRC_URI[regex-1.5.5.sha256sum] = "1a11647b6b25ff05a515cb92c365cec08801e83423a235b51e231e1808747286"
|
||||
SRC_URI[remove_dir_all-0.5.3.sha256sum] = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
|
||||
SRC_URI[rpassword-4.0.5.sha256sum] = "99371657d3c8e4d816fb6221db98fa408242b0b53bac08f8676a41f8554fe99f"
|
||||
SRC_URI[rpassword-7.3.1.sha256sum] = "80472be3c897911d0137b2d2b9055faf6eeac5b14e324073d83bc17b191d7e3f"
|
||||
SRC_URI[rtoolbox-0.0.2.sha256sum] = "c247d24e63230cdb56463ae328478bd5eac8b8faa8c69461a77e8e323afac90e"
|
||||
SRC_URI[rustc-demangle-0.1.21.sha256sum] = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342"
|
||||
SRC_URI[rustc_version-0.3.3.sha256sum] = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee"
|
||||
SRC_URI[rustix-0.38.37.sha256sum] = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811"
|
||||
SRC_URI[same-file-1.0.6.sha256sum] = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
|
||||
SRC_URI[scoped-tls-1.0.0.sha256sum] = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2"
|
||||
SRC_URI[semver-parser-0.10.2.sha256sum] = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7"
|
||||
SRC_URI[semver-0.11.0.sha256sum] = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6"
|
||||
SRC_URI[serde-1.0.137.sha256sum] = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1"
|
||||
SRC_URI[serde_derive-1.0.137.sha256sum] = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be"
|
||||
SRC_URI[serde_repr-0.1.8.sha256sum] = "a2ad84e47328a31223de7fed7a4f5087f2d6ddfe586cf3ca25b7a165bc0a5aed"
|
||||
SRC_URI[serde-1.0.209.sha256sum] = "99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09"
|
||||
SRC_URI[serde_derive-1.0.209.sha256sum] = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170"
|
||||
SRC_URI[serde_json-1.0.1.sha256sum] = "1c62115693d0a9ed8c32d1c760f0fdbe7d4b05cb13c135b9b54137ac0d59fccb"
|
||||
SRC_URI[serde_repr-0.1.19.sha256sum] = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
|
||||
SRC_URI[serde_spanned-0.6.7.sha256sum] = "eb5b1b31579f3811bf615c144393417496f152e12ac8b7663bf664f4a815306d"
|
||||
SRC_URI[sha-1-0.9.8.sha256sum] = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6"
|
||||
SRC_URI[sha1-0.6.1.sha256sum] = "c1da05c97445caa12d05e848c4a4fcbbea29e748ac28f7e80e9b010392063770"
|
||||
SRC_URI[sha1_smol-1.0.0.sha256sum] = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012"
|
||||
SRC_URI[sha1-0.10.6.sha256sum] = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba"
|
||||
SRC_URI[sha2-0.9.9.sha256sum] = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800"
|
||||
SRC_URI[signal-hook-registry-1.4.0.sha256sum] = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0"
|
||||
SRC_URI[signal-hook-0.1.17.sha256sum] = "7e31d442c16f047a671b5a71e2161d6e68814012b7f5379d269ebd915fac2729"
|
||||
SRC_URI[signature-1.5.0.sha256sum] = "f054c6c1a6e95179d6f23ed974060dcefb2d9388bb7256900badad682c499de4"
|
||||
SRC_URI[slab-0.4.6.sha256sum] = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32"
|
||||
SRC_URI[slotmap-1.0.6.sha256sum] = "e1e08e261d0e8f5c43123b7adf3e4ca1690d655377ac93a03b2c9d3e98de1342"
|
||||
SRC_URI[slab-0.4.9.sha256sum] = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
|
||||
SRC_URI[smallvec-1.8.0.sha256sum] = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83"
|
||||
SRC_URI[socket2-0.4.4.sha256sum] = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0"
|
||||
SRC_URI[sodiumoxide-0.2.7.sha256sum] = "e26be3acb6c2d9a7aac28482586a7856436af4cfe7100031d219de2d2ecb0028"
|
||||
SRC_URI[stable_deref_trait-1.2.0.sha256sum] = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
|
||||
SRC_URI[static_assertions-1.1.0.sha256sum] = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
|
||||
SRC_URI[strsim-0.8.0.sha256sum] = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
|
||||
SRC_URI[strsim-0.11.1.sha256sum] = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
|
||||
SRC_URI[strum-0.18.0.sha256sum] = "57bd81eb48f4c437cadc685403cad539345bf703d78e63707418431cecd4522b"
|
||||
SRC_URI[strum-0.21.0.sha256sum] = "aaf86bbcfd1fa9670b7a129f64fc0c9fcbbfe4f1bc4210e9e98fe71ffc12cde2"
|
||||
SRC_URI[strum_macros-0.18.0.sha256sum] = "87c85aa3f8ea653bfd3ddf25f7ee357ee4d204731f6aa9ad04002306f6e2774c"
|
||||
@ -443,43 +521,71 @@ SRC_URI[strum_macros-0.21.1.sha256sum] = "d06aaeeee809dbc59eb4556183dd927df67db1
|
||||
SRC_URI[subtle-2.4.1.sha256sum] = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601"
|
||||
SRC_URI[syn-0.15.44.sha256sum] = "9ca4b3b69a77cbe1ffc9e198781b7acb0c7365a883670e8f1c1bc66fba79a5c5"
|
||||
SRC_URI[syn-1.0.95.sha256sum] = "fbaf6116ab8924f39d52792136fb74fd60a80194cf1b1c6ffa6453eef1c3f942"
|
||||
SRC_URI[syn-2.0.77.sha256sum] = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed"
|
||||
SRC_URI[synstructure-0.12.6.sha256sum] = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f"
|
||||
SRC_URI[system-deps-1.3.2.sha256sum] = "0f3ecc17269a19353b3558b313bba738b25d82993e30d62a18406a24aba4649b"
|
||||
SRC_URI[system-deps-3.2.0.sha256sum] = "480c269f870722b3b08d2f13053ce0c2ab722839f472863c3e2d61ff3a1c2fa6"
|
||||
SRC_URI[tempfile-3.3.0.sha256sum] = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4"
|
||||
SRC_URI[termion-1.5.6.sha256sum] = "077185e2eac69c3f8379a4298e1e07cd36beb962290d4a51199acf0fdc10607e"
|
||||
SRC_URI[textwrap-0.11.0.sha256sum] = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
|
||||
SRC_URI[thiserror-impl-1.0.31.sha256sum] = "0396bc89e626244658bef819e22d0cc459e795a5ebe878e6ec336d1674a8d79a"
|
||||
SRC_URI[thiserror-1.0.31.sha256sum] = "bd829fe32373d27f76265620b5309d0340cb8550f523c1dda251d6298069069a"
|
||||
SRC_URI[time-0.1.43.sha256sum] = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
|
||||
SRC_URI[toml-0.4.10.sha256sum] = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f"
|
||||
SRC_URI[toml-0.5.9.sha256sum] = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
|
||||
SRC_URI[toml-0.8.19.sha256sum] = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e"
|
||||
SRC_URI[toml_datetime-0.6.8.sha256sum] = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41"
|
||||
SRC_URI[toml_edit-0.22.20.sha256sum] = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d"
|
||||
SRC_URI[tracing-attributes-0.1.27.sha256sum] = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
|
||||
SRC_URI[tracing-core-0.1.32.sha256sum] = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
|
||||
SRC_URI[tracing-0.1.40.sha256sum] = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
|
||||
SRC_URI[typenum-1.15.0.sha256sum] = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987"
|
||||
SRC_URI[ucd-trie-0.1.3.sha256sum] = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c"
|
||||
SRC_URI[uds_windows-1.1.0.sha256sum] = "89daebc3e6fd160ac4aa9fc8b3bf71e1f74fbf92367ae71fb83a037e8bf164b9"
|
||||
SRC_URI[unicode-ident-1.0.0.sha256sum] = "d22af068fba1eb5edcb4aea19d382b2a3deb4c8f9d475c589b6ada9e0fd493ee"
|
||||
SRC_URI[unicode-segmentation-1.9.0.sha256sum] = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99"
|
||||
SRC_URI[unicode-width-0.1.9.sha256sum] = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
|
||||
SRC_URI[unicode-xid-0.1.0.sha256sum] = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
|
||||
SRC_URI[unicode-xid-0.2.3.sha256sum] = "957e51f3646910546462e67d5f7599b9e4fb8acdd304b087a6494730f9eebf04"
|
||||
SRC_URI[vec_map-0.8.2.sha256sum] = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
|
||||
SRC_URI[utf8parse-0.2.2.sha256sum] = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
|
||||
SRC_URI[version-compare-0.0.10.sha256sum] = "d63556a25bae6ea31b52e640d7c41d1ab27faba4ccb600013837a3d0b3994ca1"
|
||||
SRC_URI[version-compare-0.0.11.sha256sum] = "1c18c859eead79d8b95d09e4678566e8d70105c4e7b251f707a03df32442661b"
|
||||
SRC_URI[version_check-0.9.4.sha256sum] = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
|
||||
SRC_URI[void-1.0.2.sha256sum] = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
|
||||
SRC_URI[waker-fn-1.1.0.sha256sum] = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca"
|
||||
SRC_URI[walkdir-2.3.2.sha256sum] = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
|
||||
SRC_URI[wasi-0.10.2+wasi-snapshot-preview1.sha256sum] = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6"
|
||||
SRC_URI[wasi-0.9.0+wasi-snapshot-preview1.sha256sum] = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
|
||||
SRC_URI[wepoll-ffi-0.1.2.sha256sum] = "d743fdedc5c64377b5fc2bc036b01c7fd642205a0d96356034ae3404d49eb7fb"
|
||||
SRC_URI[winapi-i686-pc-windows-gnu-0.4.0.sha256sum] = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
||||
SRC_URI[winapi-util-0.1.5.sha256sum] = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
|
||||
SRC_URI[winapi-x86_64-pc-windows-gnu-0.4.0.sha256sum] = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
||||
SRC_URI[winapi-0.3.9.sha256sum] = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
|
||||
SRC_URI[windows-sys-0.48.0.sha256sum] = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
|
||||
SRC_URI[windows-sys-0.52.0.sha256sum] = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
|
||||
SRC_URI[windows-sys-0.59.0.sha256sum] = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
|
||||
SRC_URI[windows-targets-0.48.5.sha256sum] = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
|
||||
SRC_URI[windows-targets-0.52.6.sha256sum] = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
|
||||
SRC_URI[windows_aarch64_gnullvm-0.48.5.sha256sum] = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
|
||||
SRC_URI[windows_aarch64_gnullvm-0.52.6.sha256sum] = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
|
||||
SRC_URI[windows_aarch64_msvc-0.48.5.sha256sum] = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
|
||||
SRC_URI[windows_aarch64_msvc-0.52.6.sha256sum] = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
|
||||
SRC_URI[windows_i686_gnu-0.48.5.sha256sum] = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
|
||||
SRC_URI[windows_i686_gnu-0.52.6.sha256sum] = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
|
||||
SRC_URI[windows_i686_gnullvm-0.52.6.sha256sum] = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
|
||||
SRC_URI[windows_i686_msvc-0.48.5.sha256sum] = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
|
||||
SRC_URI[windows_i686_msvc-0.52.6.sha256sum] = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
|
||||
SRC_URI[windows_x86_64_gnu-0.48.5.sha256sum] = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
|
||||
SRC_URI[windows_x86_64_gnu-0.52.6.sha256sum] = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
|
||||
SRC_URI[windows_x86_64_gnullvm-0.48.5.sha256sum] = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
|
||||
SRC_URI[windows_x86_64_gnullvm-0.52.6.sha256sum] = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
|
||||
SRC_URI[windows_x86_64_msvc-0.48.5.sha256sum] = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
|
||||
SRC_URI[windows_x86_64_msvc-0.52.6.sha256sum] = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
|
||||
SRC_URI[winnow-0.6.18.sha256sum] = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f"
|
||||
SRC_URI[xdg-home-1.3.0.sha256sum] = "ec1cdab258fb55c0da61328dc52c8764709b249011b2cad0454c72f0bf10a1f6"
|
||||
SRC_URI[xi-unicode-0.1.0.sha256sum] = "12ea8eda4b1eb72f02d148402e23832d56a33f55d8c1b2d5bcdde91d79d47cb1"
|
||||
SRC_URI[zbus-2.0.0-beta.5.sha256sum] = "d45f4720326304c291f96f66b6c1131f16964bba6bffe216ac85de2e48321a10"
|
||||
SRC_URI[zbus_macros-2.0.0-beta.5.sha256sum] = "cf0fa91321143695013cb3fa62a6395dbe14eafd97ab58c2ba73f61d5035b1d9"
|
||||
SRC_URI[zvariant-2.10.0.sha256sum] = "a68c7b55f2074489b7e8e07d2d0a6ee6b4f233867a653c664d8020ba53692525"
|
||||
SRC_URI[zvariant_derive-2.10.0.sha256sum] = "e4ca5e22593eb4212382d60d26350065bf2a02c34b85bc850474a74b589a3de9"
|
||||
SRC_URI[zbus-4.4.0.sha256sum] = "bb97012beadd29e654708a0fdb4c84bc046f537aecfde2c3ee0a9e4b4d48c725"
|
||||
SRC_URI[zbus_macros-4.4.0.sha256sum] = "267db9407081e90bbfa46d841d3cbc60f59c0351838c4bc65199ecd79ab1983e"
|
||||
SRC_URI[zbus_names-3.0.0.sha256sum] = "4b9b1fef7d021261cc16cba64c351d291b715febe0fa10dc3a443ac5a5022e6c"
|
||||
SRC_URI[zvariant-4.2.0.sha256sum] = "2084290ab9a1c471c38fc524945837734fbf124487e105daec2bb57fd48c81fe"
|
||||
SRC_URI[zvariant_derive-4.2.0.sha256sum] = "73e2ba546bda683a90652bac4a279bc146adad1386f25379cf73200d2002c449"
|
||||
SRC_URI[zvariant_utils-2.1.0.sha256sum] = "c51bcff7cc3dbb5055396bcf774748c3dab426b4b8659046963523cee4808340"
|
||||
|
||||
export SODIUM_USE_PKG_CONFIG = "1"
|
||||
|
||||
@ -501,6 +607,7 @@ FILES:${PN} = "\
|
||||
${libexecdir}/citadel-realmsd \
|
||||
${libexecdir}/citadel-installer-ui \
|
||||
${libexecdir}/realm-config-ui \
|
||||
${libexecdir}/launch-gnome-software \
|
||||
${bindir}/citadel-image \
|
||||
${bindir}/citadel-realmfs \
|
||||
${bindir}/citadel-update \
|
||||
@ -548,6 +655,9 @@ do_install() {
|
||||
# citadel-realms as /usr/bin/realms
|
||||
install -m 755 -T ${TARGET_BIN}/citadel-realms ${D}${bindir}/realms
|
||||
|
||||
# /usr/libexec/launch-gnome-software
|
||||
install -m 4755 ${TARGET_BIN}/launch-gnome-software ${D}${libexecdir}
|
||||
|
||||
ln ${D}${libexecdir}/citadel-tool ${D}${libexecdir}/citadel-boot
|
||||
ln ${D}${libexecdir}/citadel-tool ${D}${libexecdir}/citadel-install
|
||||
ln ${D}${libexecdir}/citadel-tool ${D}${libexecdir}/citadel-install-backend
|
||||
|
@ -0,0 +1,51 @@
|
||||
From a9ad6dd95f0aa2d413a5328edf3e3e4668e39415 Mon Sep 17 00:00:00 2001
|
||||
From: isa <isa@subgraph.com>
|
||||
Date: Thu, 22 Aug 2024 15:23:03 +0000
|
||||
Subject: [PATCH] Modify glib to use localtime in /storage/citadel-state
|
||||
Upstream-Status: Inappropriate [citadel specific]
|
||||
|
||||
---
|
||||
glib/gtimezone.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/glib/gtimezone.c b/glib/gtimezone.c
|
||||
index 4a4a2d0..ed1444a 100644
|
||||
--- a/glib/gtimezone.c
|
||||
+++ b/glib/gtimezone.c
|
||||
@@ -538,14 +538,14 @@ zone_identifier_unix (void)
|
||||
gboolean not_a_symlink_to_zoneinfo = FALSE;
|
||||
struct stat file_status;
|
||||
|
||||
- /* Resolve the actual timezone pointed to by /etc/localtime. */
|
||||
- resolved_identifier = g_file_read_link ("/etc/localtime", &read_link_err);
|
||||
+ /* Resolve the actual timezone pointed to by /storage/citadel-state/localtime. */
|
||||
+ resolved_identifier = g_file_read_link ("/storage/citadel-state/localtime", &read_link_err);
|
||||
|
||||
if (resolved_identifier != NULL)
|
||||
{
|
||||
if (!g_path_is_absolute (resolved_identifier))
|
||||
{
|
||||
- gchar *absolute_resolved_identifier = g_build_filename ("/etc", resolved_identifier, NULL);
|
||||
+ gchar *absolute_resolved_identifier = g_build_filename ("/storage/citadel-state", resolved_identifier, NULL);
|
||||
g_free (resolved_identifier);
|
||||
resolved_identifier = g_steal_pointer (&absolute_resolved_identifier);
|
||||
}
|
||||
@@ -604,7 +604,7 @@ zone_identifier_unix (void)
|
||||
else
|
||||
{
|
||||
/* Resolve relative path */
|
||||
- canonical_path = g_canonicalize_filename (resolved_identifier, "/etc");
|
||||
+ canonical_path = g_canonicalize_filename (resolved_identifier, "/storage/citadel-state");
|
||||
g_free (resolved_identifier);
|
||||
resolved_identifier = g_steal_pointer (&canonical_path);
|
||||
}
|
||||
file = g_mapped_file_new (filename, FALSE, NULL);
|
||||
@@ -671,7 +671,7 @@ zone_info_unix (const gchar *identifier,
|
||||
if (resolved_identifier == NULL)
|
||||
goto out;
|
||||
|
||||
- filename = g_strdup ("/etc/localtime");
|
||||
+ filename = g_strdup ("/storage/citadel-state/localtime");
|
||||
}
|
||||
|
||||
file = g_mapped_file_new (filename, FALSE, NULL);
|
4
meta-citadel/recipes-core/glib-2.0/glib-2.0_%.bbappend
Normal file
4
meta-citadel/recipes-core/glib-2.0/glib-2.0_%.bbappend
Normal file
@ -0,0 +1,4 @@
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
SRC_URI += "file://0001-Modify-glib-to-accommodate-citadel-timezone-symlink-.patch"
|
||||
|
@ -0,0 +1,23 @@
|
||||
From f96b772948fa78cbb6b2e58f6fe41e53501cc629 Mon Sep 17 00:00:00 2001
|
||||
From: isa <isa@subgraph.com>
|
||||
Date: Fri, 23 Aug 2024 16:00:25 +0000
|
||||
Subject: [PATCH] Modify gnome-desktop to use localtime in /storage/citadel-state
|
||||
Upstream-Status: Inappropriate [citadel specific]
|
||||
|
||||
---
|
||||
libgnome-desktop/gnome-wall-clock.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libgnome-desktop/gnome-wall-clock.c b/libgnome-desktop/gnome-wall-clock.c
|
||||
index 4646220..1bb8269 100644
|
||||
--- a/libgnome-desktop/gnome-wall-clock.c
|
||||
+++ b/libgnome-desktop/gnome-wall-clock.c
|
||||
@@ -78,7 +78,7 @@ gnome_wall_clock_init (GnomeWallClock *self)
|
||||
|
||||
self->priv->clock_string = NULL;
|
||||
|
||||
- tz = g_file_new_for_path ("/etc/localtime");
|
||||
+ tz = g_file_new_for_path ("/storage/citadel-state/localtime");
|
||||
self->priv->tz_monitor = g_file_monitor_file (tz, 0, NULL, NULL);
|
||||
g_object_unref (tz);
|
||||
|
@ -0,0 +1,4 @@
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
|
||||
|
||||
SRC_URI += "file://0001-Modify-gnome-desktop-to-use-localtime-in-storage-cit.patch"
|
||||
|
@ -912,7 +912,7 @@ CONFIG_BLK_DEV_BSG_COMMON=y
|
||||
CONFIG_BLK_DEV_BSGLIB=y
|
||||
CONFIG_BLK_DEV_INTEGRITY=y
|
||||
CONFIG_BLK_DEV_INTEGRITY_T10=y
|
||||
# CONFIG_BLK_DEV_WRITE_MOUNTED is not set
|
||||
CONFIG_BLK_DEV_WRITE_MOUNTED=m
|
||||
# CONFIG_BLK_DEV_ZONED is not set
|
||||
# CONFIG_BLK_DEV_THROTTLING is not set
|
||||
# CONFIG_BLK_WBT is not set
|
||||
@ -3177,7 +3177,7 @@ CONFIG_PINCTRL_INTEL=y
|
||||
# CONFIG_PINCTRL_INTEL_PLATFORM is not set
|
||||
# CONFIG_PINCTRL_ALDERLAKE is not set
|
||||
CONFIG_PINCTRL_BROXTON=m
|
||||
# CONFIG_PINCTRL_CANNONLAKE is not set
|
||||
CONFIG_PINCTRL_CANNONLAKE=m
|
||||
# CONFIG_PINCTRL_CEDARFORK is not set
|
||||
# CONFIG_PINCTRL_DENVERTON is not set
|
||||
# CONFIG_PINCTRL_ELKHARTLAKE is not set
|
||||
|
@ -0,0 +1,16 @@
|
||||
SUMMARY = "A markup language for GTK user interface files."
|
||||
LICENSE = "LGPL-3.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=3000208d539ec061b899bce1d9ce9404"
|
||||
|
||||
SRC_URI = "git://gitlab.gnome.org/jwestman/blueprint-compiler.git;protocol=https;branch=main"
|
||||
|
||||
PV = "0.14.0"
|
||||
SRCREV = "8e10fcf8692108b9d4ab78f41086c5d7773ef864"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
DEPENDS = "python3-pygobject"
|
||||
inherit meson
|
||||
|
||||
BBCLASSEXTEND= "native"
|
||||
|
24
meta-citadel/recipes-support/bubblewrap/bubblewrap_0.8.0.bb
Normal file
24
meta-citadel/recipes-support/bubblewrap/bubblewrap_0.8.0.bb
Normal file
@ -0,0 +1,24 @@
|
||||
DESCRIPTION = "Unprivileged sandboxing tool"
|
||||
HOMEPAGE = "https://github.com/containers/bubblewrap"
|
||||
LICENSE = "LGPL-2.0-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
|
||||
|
||||
DEPENDS = "libcap"
|
||||
|
||||
SRC_URI = "https://github.com/containers/${BPN}/releases/download/v${PV}/${BP}.tar.xz"
|
||||
SRC_URI[sha256sum] = "957ad1149db9033db88e988b12bcebe349a445e1efc8a9b59ad2939a113d333a"
|
||||
|
||||
inherit autotools bash-completion github-releases manpages pkgconfig
|
||||
|
||||
GITHUB_BASE_URI = "https://github.com/containers/${BPN}/releases/"
|
||||
|
||||
PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)}"
|
||||
PACKAGECONFIG[manpages] = "--enable-man,--disable-man,libxslt-native docbook-xsl-stylesheets-native xmlto-native"
|
||||
PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux"
|
||||
PACKAGECONFIG[setuid] = "--with-priv-mode=setuid,--with-priv-mode=none"
|
||||
|
||||
PACKAGES += "${PN}-zsh-completion"
|
||||
|
||||
FILES:${PN}-zsh-completion = "${datadir}/zsh/site-functions"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
1
meta-citadel/recipes-support/fuse/fuse3/fuse3.conf
Normal file
1
meta-citadel/recipes-support/fuse/fuse3/fuse3.conf
Normal file
@ -0,0 +1 @@
|
||||
fuse
|
3
meta-citadel/recipes-support/fuse/fuse3/run-ptest
Normal file
3
meta-citadel/recipes-support/fuse/fuse3/run-ptest
Normal file
@ -0,0 +1,3 @@
|
||||
#!/bin/sh
|
||||
|
||||
pytest -o log_cli=true -o log_cli_level=INFO | sed -e 's/\[...%\]//g'| sed -e 's/PASSED/PASS/g'| sed -e 's/FAILED/FAIL/g'|sed -e 's/SKIPPED/SKIP/g'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS"){printf "%s: %s\n", $NF, $0}else{print}}'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS") {$NF="";print $0}else{print}}'
|
98
meta-citadel/recipes-support/fuse/fuse3_3.16.2.bb
Normal file
98
meta-citadel/recipes-support/fuse/fuse3_3.16.2.bb
Normal file
@ -0,0 +1,98 @@
|
||||
SUMMARY = "Implementation of a fully functional filesystem in a userspace program"
|
||||
DESCRIPTION = "FUSE (Filesystem in Userspace) is a simple interface for userspace \
|
||||
programs to export a virtual filesystem to the Linux kernel. FUSE \
|
||||
also aims to provide a secure method for non privileged users to \
|
||||
create and mount their own filesystem implementations. \
|
||||
"
|
||||
HOMEPAGE = "https://github.com/libfuse/libfuse"
|
||||
SECTION = "libs"
|
||||
LICENSE = "GPL-2.0-only & LGPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://GPL2.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
|
||||
file://LGPL2.txt;md5=4fbd65380cdd255951079008b364516c \
|
||||
file://LICENSE;md5=a55c12a2d7d742ecb41ca9ae0a6ddc66 \
|
||||
"
|
||||
|
||||
SRC_URI = "https://github.com/libfuse/libfuse/releases/download/fuse-${PV}/fuse-${PV}.tar.gz"
|
||||
SRC_URI[sha256sum] = "f797055d9296b275e981f5f62d4e32e089614fc253d1ef2985851025b8a0ce87"
|
||||
|
||||
S = "${WORKDIR}/fuse-${PV}"
|
||||
|
||||
UPSTREAM_CHECK_URI = "https://github.com/libfuse/libfuse/releases"
|
||||
UPSTREAM_CHECK_REGEX = "fuse\-(?P<pver>3(\.\d+)+).tar.xz"
|
||||
|
||||
CVE_PRODUCT = "fuse_project:fuse"
|
||||
|
||||
inherit meson pkgconfig ptest
|
||||
|
||||
SRC_URI += " \
|
||||
file://run-ptest \
|
||||
file://fuse3.conf \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN}-ptest += " \
|
||||
python3-pytest \
|
||||
python3-looseversion \
|
||||
bash \
|
||||
"
|
||||
RRECOMMENDS:${PN}-ptest += " kernel-module-cuse"
|
||||
|
||||
do_install_ptest() {
|
||||
install -d ${D}${PTEST_PATH}/test
|
||||
install -d ${D}${PTEST_PATH}/example
|
||||
install -d ${D}${PTEST_PATH}/util
|
||||
cp -rf ${S}/test/* ${D}${PTEST_PATH}/test/
|
||||
|
||||
example_excutables=`find ${B}/example -type f -executable`
|
||||
util_excutables=`find ${B}/util -type f -executable`
|
||||
test_excutables=`find ${B}/test -type f -executable`
|
||||
|
||||
for e in $example_excutables
|
||||
do
|
||||
cp -rf $e ${D}${PTEST_PATH}/example/
|
||||
done
|
||||
|
||||
for e in $util_excutables
|
||||
do
|
||||
cp -rf $e ${D}${PTEST_PATH}/util/
|
||||
done
|
||||
|
||||
for e in $test_excutables
|
||||
do
|
||||
cp -rf $e ${D}${PTEST_PATH}/test
|
||||
done
|
||||
}
|
||||
|
||||
DEPENDS = "udev"
|
||||
|
||||
PACKAGES =+ "fuse3-utils"
|
||||
|
||||
RPROVIDES:${PN}-dbg += "fuse3-utils-dbg"
|
||||
|
||||
RRECOMMENDS:${PN}:class-target = "kernel-module-fuse fuse3-utils"
|
||||
|
||||
FILES:${PN} += "${libdir}/libfuse3.so.*"
|
||||
FILES:${PN}-dev += "${libdir}/libfuse3*.la"
|
||||
|
||||
# Forbid auto-renaming to libfuse3-utils
|
||||
FILES:fuse3-utils = "${bindir} ${base_sbindir}"
|
||||
DEBIAN_NOAUTONAME:fuse3-utils = "1"
|
||||
DEBIAN_NOAUTONAME:${PN}-dbg = "1"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = ""
|
||||
|
||||
do_install:append() {
|
||||
rm -rf ${D}${base_prefix}/dev
|
||||
|
||||
# systemd class remove the sysv_initddir only if systemd_system_unitdir
|
||||
# contains anything, but it's not needed if sysvinit is not in DISTRO_FEATURES
|
||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'false', 'true', d)}; then
|
||||
rm -rf ${D}${sysconfdir}/init.d/
|
||||
fi
|
||||
|
||||
# Install systemd related configuration file
|
||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
|
||||
install -d ${D}${sysconfdir}/modules-load.d
|
||||
install -m 0644 ${WORKDIR}/fuse3.conf ${D}${sysconfdir}/modules-load.d
|
||||
fi
|
||||
}
|
54
meta-citadel/recipes-support/minijail/minijail_git.bb
Normal file
54
meta-citadel/recipes-support/minijail/minijail_git.bb
Normal file
@ -0,0 +1,54 @@
|
||||
# Recipe created by recipetool
|
||||
# This is the basis of a recipe and may need further editing in order to be fully functional.
|
||||
# (Feel free to remove these comments when editing.)
|
||||
|
||||
SUMMARY = "A set of tools for Minijail"
|
||||
HOMEPAGE = "https://google.github.io/minijail/"
|
||||
# NOTE: License in setup.py/PKGINFO is: Apache License 2.0
|
||||
# WARNING: the following LICENSE and LIC_FILES_CHKSUM values are best guesses - it is
|
||||
# your responsibility to verify that the values are complete and correct.
|
||||
#
|
||||
# The following license files were not able to be identified and are
|
||||
# represented as "Unknown" below, you will need to check them yourself:
|
||||
# LICENSE
|
||||
# NOTE: Original package / source metadata indicates license is: Apache-2.0
|
||||
#
|
||||
# NOTE: multiple licenses have been detected; they have been separated with &
|
||||
# in the LICENSE value for now since it is a reasonable assumption that all
|
||||
# of the licenses apply. If instead there is a choice between the multiple
|
||||
# licenses then you should change the value to separate the licenses with |
|
||||
# instead of &. If there is any doubt, check the accompanying documentation
|
||||
# to determine which situation is applicable.
|
||||
LICENSE = "Apache-2.0 & Proprietary"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=2089bcf649ce83dde9493f497237833a \
|
||||
file://MODULE_LICENSE_BSD;md5=d41d8cd98f00b204e9800998ecf8427e"
|
||||
|
||||
SRC_URI = "git://github.com/google/minijail.git;protocol=https;branch=main"
|
||||
|
||||
# Modify these as desired
|
||||
PV = "0.12+git"
|
||||
SRCREV = "3ce72e092f1ea94edc74545cd29df297e503d4fa"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
DEPENDS = "libcap"
|
||||
|
||||
do_configure () {
|
||||
:
|
||||
}
|
||||
|
||||
do_compile () {
|
||||
oe_runmake LIBDIR=${libdir}
|
||||
}
|
||||
|
||||
do_install () {
|
||||
install -d ${D}${libdir}
|
||||
install -d ${D}${libexecdir}
|
||||
|
||||
install -m 0755 ${S}/libminijail.so ${D}${libdir}
|
||||
install -m 0755 ${S}/libminijailpreload.so ${D}${libdir}
|
||||
install -m 0755 ${S}/minijail0 ${D}${libexecdir}
|
||||
}
|
||||
|
||||
FILES:${PN}-dev = ""
|
||||
FILES:${PN} = "/"
|
@ -0,0 +1,73 @@
|
||||
From cfb9327280c3e173b4cfb0ec3ec3d62e729f1e21 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Leidl <bruce@subgraph.com>
|
||||
Date: Fri, 27 Sep 2024 07:34:13 -0400
|
||||
Subject: [PATCH] Remove System Bus and close application on quit
|
||||
|
||||
To facilitage sandboxing remove dependency on system bus. The
|
||||
system bus is not needed for any plugin that we are using. Also
|
||||
close the application rather than just hiding the window when
|
||||
the user exits the application. Otherwise the sandbox will run
|
||||
forever.
|
||||
---
|
||||
lib/gs-plugin-loader.c | 5 +----
|
||||
lib/gs-plugin.c | 1 -
|
||||
src/gs-shell.c | 4 +++-
|
||||
3 files changed, 4 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/lib/gs-plugin-loader.c b/lib/gs-plugin-loader.c
|
||||
index 6661b73..ac57bdc 100644
|
||||
--- a/lib/gs-plugin-loader.c
|
||||
+++ b/lib/gs-plugin-loader.c
|
||||
@@ -1964,8 +1964,6 @@ gs_plugin_loader_setup_async (GsPluginLoader *plugin_loader,
|
||||
* time. */
|
||||
if (plugin_loader->session_bus_connection == NULL)
|
||||
g_bus_get (G_BUS_TYPE_SESSION, cancellable, get_session_bus_cb, g_object_ref (task));
|
||||
- if (plugin_loader->system_bus_connection == NULL)
|
||||
- g_bus_get (G_BUS_TYPE_SYSTEM, cancellable, get_system_bus_cb, g_object_ref (task));
|
||||
|
||||
finish_setup_get_bus (task);
|
||||
}
|
||||
@@ -2032,8 +2030,7 @@ finish_setup_get_bus (GTask *task)
|
||||
g_autoptr(GError) local_error = NULL;
|
||||
|
||||
/* Wait until we’ve got all the buses we need. */
|
||||
- if (plugin_loader->session_bus_connection == NULL ||
|
||||
- plugin_loader->system_bus_connection == NULL)
|
||||
+ if (plugin_loader->session_bus_connection == NULL)
|
||||
return;
|
||||
|
||||
/* use the default, but this requires a 'make install' */
|
||||
diff --git a/lib/gs-plugin.c b/lib/gs-plugin.c
|
||||
index 97bc47e..514d97a 100644
|
||||
--- a/lib/gs-plugin.c
|
||||
+++ b/lib/gs-plugin.c
|
||||
@@ -1606,7 +1606,6 @@ gs_plugin_constructed (GObject *object)
|
||||
|
||||
/* Check all required properties have been set. */
|
||||
g_assert (priv->session_bus_connection != NULL);
|
||||
- g_assert (priv->system_bus_connection != NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
diff --git a/src/gs-shell.c b/src/gs-shell.c
|
||||
index 5c069e2..13bdcc6 100644
|
||||
--- a/src/gs-shell.c
|
||||
+++ b/src/gs-shell.c
|
||||
@@ -1081,6 +1081,8 @@ main_window_closed_cb (GtkWidget *dialog, gpointer user_data)
|
||||
/* Free unused memory with GNU extension of malloc.h */
|
||||
malloc_trim (0);
|
||||
#endif
|
||||
+ GApplication *app = g_application_get_default ();
|
||||
+ g_action_group_activate_action(G_ACTION_GROUP(app), "quit", NULL);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
@@ -2505,7 +2507,7 @@ gs_shell_class_init (GsShellClass *klass)
|
||||
gtk_widget_class_bind_template_callback (widget_class, gs_shell_details_page_metainfo_loaded_cb);
|
||||
gtk_widget_class_bind_template_callback (widget_class, details_page_app_clicked_cb);
|
||||
|
||||
- gtk_widget_class_add_binding_action (widget_class, GDK_KEY_q, GDK_CONTROL_MASK, "window.close", NULL);
|
||||
+ gtk_widget_class_add_binding_action (widget_class, GDK_KEY_q, GDK_CONTROL_MASK, "app.quit", NULL);
|
||||
}
|
||||
|
||||
static void
|
@ -0,0 +1,51 @@
|
||||
SUMMARY = "GNOME Software allows users to easily find, discover and install apps."
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
GTKDOC_MESON_OPTION ?= "gtk_doc"
|
||||
|
||||
inherit gnomebase gsettings itstool gnome-help gtk-icon-cache gtk-doc mime mime-xdg gettext upstream-version-is-even features_check
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam"
|
||||
|
||||
DEPENDS += " \
|
||||
appstream \
|
||||
gdk-pixbuf \
|
||||
glib-2.0 \
|
||||
glib-2.0-native \
|
||||
gsettings-desktop-schemas \
|
||||
gtk4 \
|
||||
iso-codes \
|
||||
json-glib \
|
||||
libadwaita \
|
||||
libgudev \
|
||||
libsoup-3.0 \
|
||||
libxmlb-native \
|
||||
polkit \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN} = "iso-codes"
|
||||
|
||||
EXTRA_OEMESON += "-Dtests=false -Dsoup2=false"
|
||||
|
||||
SRC_URI += " file://0001-Remove-System-Bus-and-close-application-on-quit.patch"
|
||||
SRC_URI[archive.sha256sum] = "b6eeb789100de94b50ebe2e77f16b26be4c2db15489905f198d060c425e19076"
|
||||
|
||||
PACKAGECONFIG ?= "flatpak"
|
||||
PACKAGECONFIG[flatpak] = "-Dflatpak=true,-Dflatpak=false,flatpak ostree"
|
||||
PACKAGECONFIG[snap] = "-Dsnap=true,-Dsnap=false,snapd-glib"
|
||||
PACKAGECONFIG[gtk_doc] = "-Dgtk_doc=true,-Dgtk_doc=false,libxslt-native docbook-xsl-stylesheets"
|
||||
PACKAGECONFIG[man] = "-Dman=true,-Dman=false,libxslt-native docbook-xsl-stylesheets"
|
||||
PACKAGECONFIG[packagekit] = "-Dpackagekit=true,-Dpackagekit=false,gnome-packagekit,gnome-packagekit"
|
||||
PACKAGECONFIG[fwupd] = "-Dfwupd=true,-Dfwupd=false,fwupd,fwupd"
|
||||
PACKAGECONFIG[malcontent] = "-Dmalcontent=true,-Dmalcontent=false,malcontent"
|
||||
|
||||
FILES:${PN} += "${datadir}/dbus-1 \
|
||||
${datadir}/metainfo \
|
||||
${datadir}/swcatalog \
|
||||
"
|
||||
FILES:${PN}:remove = "${datadir}/applications ${sysconfdir}"
|
||||
PACKAGES += "${PN}-extra"
|
||||
FILES:${PN}-extra += "${datadir} ${sysconfdir}"
|
||||
|
||||
FILES:${PN}-dev += "${libdir}/gnome-software/libgnomesoftware.so"
|
@ -0,0 +1,14 @@
|
||||
DESCRIPTION = "This repository contains a number of commandline utilities for use inside Flatpak sandboxes."
|
||||
HOMEPAGE = "http://flatpak.org"
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
|
||||
|
||||
SRC_URI = "git://github.com/flatpak/flatpak-xdg-utils.git;protocol=https;branch=main"
|
||||
|
||||
SRCREV = "5ba39872f81bf8d98d58c5f8acb86604645be468"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit meson pkgconfig
|
||||
|
||||
DEPENDS = "glib-2.0"
|
@ -0,0 +1,28 @@
|
||||
From 3a1ab02d821cd4b0af44c0dad87e290ebaabef83 Mon Sep 17 00:00:00 2001
|
||||
From: Markus Volk <f_l_k@t-online.de>
|
||||
Date: Wed, 14 Dec 2022 06:50:40 +0100
|
||||
Subject: [PATCH] flatpak.pc: add pc_sysrootdir
|
||||
|
||||
Signed-off-by: Markus Volk <f_l_k@t-online.de>
|
||||
---
|
||||
Upstream-Status: Inappropriate [oe-specific]
|
||||
|
||||
meson.build | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 4a0b865e..5f69b1d9 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -509,7 +509,7 @@ pkgconfig_variables += 'exec_prefix=${prefix}'
|
||||
pkgconfig_variables += 'datadir=' + ('${prefix}' / get_option('datadir'))
|
||||
|
||||
pkgconfig_variables += 'datarootdir=' + ('${prefix}' / get_option('datadir'))
|
||||
-pkgconfig_variables += 'interfaces_dir=${datadir}/dbus-1/interfaces/'
|
||||
+pkgconfig_variables += 'interfaces_dir=${pc_sysrootdir}${datadir}/dbus-1/interfaces/'
|
||||
pkgconfig_variables += 'httpbackend=' + get_option('http_backend')
|
||||
|
||||
pkgconfig.generate(
|
||||
--
|
||||
2.34.1
|
||||
|
81
meta-gnome/recipes-support/flatpak/flatpak_1.15.8.bb
Normal file
81
meta-gnome/recipes-support/flatpak/flatpak_1.15.8.bb
Normal file
@ -0,0 +1,81 @@
|
||||
DESCRIPTION = "Desktop containment framework."
|
||||
HOMEPAGE = "http://flatpak.org"
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
|
||||
|
||||
SRC_URI = " \
|
||||
gitsm://github.com/flatpak/flatpak;protocol=https;branch=main \
|
||||
file://0001-flatpak-pc-add-pc_sysrootdir.patch \
|
||||
"
|
||||
|
||||
SRCREV = "925c80f913d69e7ca424428823e1431c4ffb0deb"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit meson pkgconfig gettext systemd gtk-doc gobject-introspection python3native useradd mime features_check
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "polkit"
|
||||
|
||||
DEPENDS = " \
|
||||
appstream \
|
||||
bison-native \
|
||||
dconf \
|
||||
fuse3 \
|
||||
gdk-pixbuf \
|
||||
glib-2.0 \
|
||||
gpgme \
|
||||
json-glib \
|
||||
libarchive \
|
||||
libcap \
|
||||
libxml2 \
|
||||
ostree \
|
||||
polkit \
|
||||
python3-pyparsing-native \
|
||||
zstd \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN} = " \
|
||||
ca-certificates \
|
||||
dconf \
|
||||
flatpak-xdg-utils \
|
||||
fuse3-utils \
|
||||
"
|
||||
|
||||
GIR_MESON_OPTION = "gir"
|
||||
GIR_MESON_ENABLE_FLAG = 'enabled'
|
||||
GIR_MESON_DISABLE_FLAG = 'disabled'
|
||||
GTKDOC_MESON_OPTION = 'gtkdoc'
|
||||
GTKDOC_MESON_ENABLE_FLAG = 'enabled'
|
||||
GTKDOC_MESON_DISABLE_FLAG = 'disabled'
|
||||
|
||||
PACKAGECONFIG[curl] = "-Dhttp_backend=curl,,curl"
|
||||
PACKAGECONFIG[docbook_docs] = "-Ddocbook_docs=enabled,-Ddocbook_docs=disabled,xmlto-native"
|
||||
PACKAGECONFIG[man] = "-Dman=enabled,-Dman=disabled,libxslt-native"
|
||||
PACKAGECONFIG[soup] = "-Dhttp_backend=soup,,libsoup-2.4"
|
||||
PACKAGECONFIG[tests] = "-Dtests=true,-Dtests=false,xauth socat-native"
|
||||
PACKAGECONFIG[xauth] = "-Dxauth=enabled,-Dxauth=disabled,xauth"
|
||||
PACKAGECONFIG[seccomp] = "-Dseccomp=enabled,-Dseccomp=disabled,libseccomp"
|
||||
PACKAGECONFIG[malcontent] = "-Dmalcontent=enabled,-Dmalcontent=disabled,malcontent"
|
||||
PACKAGECONFIG[selinux] = "-Dselinux_module=enabled,-Dselinux_module=disabled,libselinux"
|
||||
PACKAGECONFIG[wayland-security-context] = "-Dwayland_security_context=enabled,-Dwayland_security_context=disabled,wayland wayland-native wayland-protocols"
|
||||
|
||||
PACKAGECONFIG ?= " \
|
||||
curl \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xauth', '', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'seccomp', 'seccomp', '', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland-security-context', '', d)} \
|
||||
"
|
||||
|
||||
EXTRA_OEMESON = "-Dsystem_fusermount=${bindir}/fusermount3"
|
||||
|
||||
FILES:${PN} += "${libdir} ${datadir}"
|
||||
|
||||
USERADD_PACKAGES = "${PN}"
|
||||
USERADD_PARAM:${PN} = "--system --no-create-home --user-group --home-dir ${sysconfdir}/polkit-1 polkitd"
|
||||
USERADD_PARAM:${PN} += "; --system --no-create-home --user-group flatpak"
|
||||
|
||||
do_install:append() {
|
||||
chmod 0700 ${D}/${datadir}/polkit-1/rules.d
|
||||
chown polkitd ${D}/${datadir}/polkit-1/rules.d
|
||||
chgrp root ${D}/${datadir}/polkit-1/rules.d
|
||||
}
|
3
meta-gnome/recipes-support/ostree/ostree/run-ptest
Normal file
3
meta-gnome/recipes-support/ostree/ostree/run-ptest
Normal file
@ -0,0 +1,3 @@
|
||||
#! /bin/sh
|
||||
|
||||
gnome-desktop-testing-runner libostree
|
215
meta-gnome/recipes-support/ostree/ostree_2024.6.bb
Normal file
215
meta-gnome/recipes-support/ostree/ostree_2024.6.bb
Normal file
@ -0,0 +1,215 @@
|
||||
SUMMARY = "Versioned Operating System Repository."
|
||||
DESCRIPTION = "libostree is both a shared library and suite of command line \
|
||||
tools that combines a \"git-like\" model for committing and downloading \
|
||||
bootable filesystem trees, along with a layer for deploying them and managing \
|
||||
the bootloader configuration."
|
||||
HOMEPAGE = "https://ostree.readthedocs.io"
|
||||
LICENSE = "LGPL-2.1-only"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2"
|
||||
|
||||
DEPENDS = " \
|
||||
glib-2.0-native \
|
||||
glib-2.0 \
|
||||
e2fsprogs \
|
||||
libcap \
|
||||
zlib \
|
||||
xz \
|
||||
bison-native \
|
||||
"
|
||||
|
||||
GITHUB_BASE_URI = "https://github.com/ostreedev/ostree/releases"
|
||||
SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/libostree-${PV}.tar.xz \
|
||||
file://run-ptest \
|
||||
"
|
||||
SRC_URI[sha256sum] = "8b61c856697aa412f2f1724322ada40bdd7b1bf9e7783e2c594faa7a594f868f"
|
||||
|
||||
S = "${WORKDIR}/libostree-${PV}"
|
||||
|
||||
inherit autotools bash-completion gobject-introspection github-releases gtk-doc manpages pkgconfig ptest-gnome systemd
|
||||
|
||||
UNKNOWN_CONFIGURE_OPT_IGNORE = "--disable-introspection --enable-introspection"
|
||||
|
||||
# Workaround compile failure:
|
||||
# |../git/src/libotutil/zbase32.c:37:1: error: function returns an aggregate [-Werror=aggregate-return]
|
||||
# so remove -Og and use -O2 as workaround
|
||||
DEBUG_OPTIMIZATION:remove = "-Og"
|
||||
DEBUG_OPTIMIZATION:append = " -O2"
|
||||
BUILD_OPTIMIZATION:remove = "-Og"
|
||||
BUILD_OPTIMIZATION:append = " -O2"
|
||||
|
||||
# Package configuration - match ostree defaults, but without rofiles-fuse
|
||||
# otherwise we introduce a dependendency on meta-filesystems and swap
|
||||
# soup for curl to avoid bringing in deprecated libsoup2 (though
|
||||
# to run ptest requires that you have soup2 or soup3).
|
||||
PACKAGECONFIG ??= " \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'selinux smack', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd libmount', '', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'soup3', '', d)} \
|
||||
glib \
|
||||
gpgme \
|
||||
curl \
|
||||
"
|
||||
|
||||
# We include curl because ostree can't (currently) be built without
|
||||
# soup or curl - https://github.com/ostreedev/ostree/issues/1897
|
||||
PACKAGECONFIG:class-native ??= " \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'selinux smack', d)} \
|
||||
builtin-grub2-mkconfig \
|
||||
gpgme \
|
||||
curl \
|
||||
"
|
||||
|
||||
PACKAGECONFIG:class-nativesdk ??= " \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'selinux smack', d)} \
|
||||
builtin-grub2-mkconfig \
|
||||
gpgme \
|
||||
curl \
|
||||
"
|
||||
|
||||
PACKAGECONFIG[avahi] = "--with-avahi, --without-avahi, avahi"
|
||||
PACKAGECONFIG[builtin-grub2-mkconfig] = "--with-builtin-grub2-mkconfig, --without-builtin-grub2-mkconfig"
|
||||
PACKAGECONFIG[composefs] = "--with-composefs, --without-composefs, composefs"
|
||||
PACKAGECONFIG[curl] = "--with-curl, --without-curl, curl"
|
||||
PACKAGECONFIG[dracut] = "--with-dracut, --without-dracut"
|
||||
PACKAGECONFIG[ed25519-libsodium] = "--with-ed25519-libsodium, --without-ed25519-libsodium, libsodium"
|
||||
PACKAGECONFIG[ed25519-openssl] = "--with-openssl, --without-openssl, openssl"
|
||||
PACKAGECONFIG[gjs] = "ac_cv_path_GJS=${bindir}/gjs"
|
||||
PACKAGECONFIG[glib] = "--with-crypto=glib, , , , , gnutls openssl"
|
||||
PACKAGECONFIG[gnutls] = "--with-crypto=gnutls, , gnutls, , , glib openssl"
|
||||
PACKAGECONFIG[gpgme] = "--with-gpgme, --without-gpgme, gpgme"
|
||||
PACKAGECONFIG[libarchive] = "--with-libarchive, --without-libarchive, libarchive"
|
||||
PACKAGECONFIG[libmount] = "--with-libmount, --without-libmount, util-linux"
|
||||
PACKAGECONFIG[manpages] = "--enable-man, --disable-man, libxslt-native docbook-xsl-stylesheets-native"
|
||||
PACKAGECONFIG[mkinitcpio] = "--with-mkinitcpio, --without-mkinitcpio"
|
||||
PACKAGECONFIG[no-http2] = "--disable-http2, --enable-http2"
|
||||
PACKAGECONFIG[openssl] = "--with-crypto=openssl, , openssl, , , glib gnutls"
|
||||
PACKAGECONFIG[rofiles-fuse] = "--enable-rofiles-fuse, --disable-rofiles-fuse, fuse3"
|
||||
PACKAGECONFIG[selinux] = "--with-selinux, --without-selinux, libselinux, bubblewrap"
|
||||
PACKAGECONFIG[smack] = "--with-smack, --without-smack, smack"
|
||||
PACKAGECONFIG[soup2] = "--with-soup, --without-soup, libsoup-2.4, , , soup3"
|
||||
PACKAGECONFIG[soup3] = "--with-soup3, --without-soup3, libsoup, , , soup2"
|
||||
PACKAGECONFIG[static] = ""
|
||||
PACKAGECONFIG[systemd] = "--with-libsystemd --with-systemdsystemunitdir=${systemd_system_unitdir}, --without-libsystemd, systemd"
|
||||
|
||||
EXTRA_OECONF = " \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'static', '--with-static-compiler=\'${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}\'', '', d)} \
|
||||
"
|
||||
|
||||
# Makefile-libostree.am overrides this to avoid a build problem with clang,
|
||||
# but that fix breaks cross compilation and we don't need it
|
||||
EXTRA_OEMAKE = " \
|
||||
INTROSPECTION_SCANNER_ENV= \
|
||||
"
|
||||
|
||||
EXTRA_OECONF:class-native = " \
|
||||
--enable-wrpseudo-compat \
|
||||
--disable-otmpfile \
|
||||
"
|
||||
|
||||
EXTRA_OECONF:class-nativesdk = " \
|
||||
--enable-wrpseudo-compat \
|
||||
--disable-otmpfile \
|
||||
"
|
||||
|
||||
# Path to ${prefix}/lib/ostree/ostree-grub-generator is hardcoded on the
|
||||
# do_configure stage so we do depend on it
|
||||
SYSROOT_DIR = "${STAGING_DIR_TARGET}"
|
||||
SYSROOT_DIR:class-native = "${STAGING_DIR_NATIVE}"
|
||||
do_configure[vardeps] += "SYSROOT_DIR"
|
||||
|
||||
do_configure:prepend() {
|
||||
# this reflects what autogen.sh does, but the OE wrappers for autoreconf
|
||||
# allow it to work without the other gyrations which exist there
|
||||
cp ${S}/libglnx/Makefile-libglnx.am ${S}/libglnx/Makefile-libglnx.am.inc
|
||||
cp ${S}/bsdiff/Makefile-bsdiff.am ${S}/bsdiff/Makefile-bsdiff.am.inc
|
||||
}
|
||||
|
||||
do_install:append:class-native() {
|
||||
create_wrapper ${D}${bindir}/ostree OSTREE_GRUB2_EXEC="${STAGING_LIBDIR_NATIVE}/ostree/ostree-grub-generator"
|
||||
}
|
||||
|
||||
do_install:append:class-nativesdk() {
|
||||
create_wrapper ${D}${bindir}/ostree OSTREE_GRUB2_EXEC="\$OECORE_NATIVE_SYSROOT/usr/lib/ostree/ostree-grub-generator"
|
||||
}
|
||||
|
||||
PACKAGE_BEFORE_PN = " \
|
||||
${PN}-dracut \
|
||||
${PN}-grub \
|
||||
${PN}-mkinitcpio \
|
||||
${PN}-switchroot \
|
||||
"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${nonarch_libdir}/${BPN} \
|
||||
${nonarch_libdir}/tmpfiles.d \
|
||||
${systemd_system_unitdir} \
|
||||
${systemd_unitdir}/system-generators \
|
||||
"
|
||||
FILES:${PN}-dracut = " \
|
||||
${sysconfdir}/dracut.conf.d \
|
||||
${libdir}/dracut \
|
||||
"
|
||||
FILES:${PN}-grub = " \
|
||||
${sysconfdir}/grub.d \
|
||||
${libexecdir}/libostree/grub2-15_ostree \
|
||||
"
|
||||
FILES:${PN}-mkinitcpio = " \
|
||||
${sysconfdir}/ostree-mkinitcpio.conf \
|
||||
${libdir}/initcpio \
|
||||
"
|
||||
FILES:${PN}-switchroot = " \
|
||||
${nonarch_libdir}/${BPN}/ostree-prepare-root \
|
||||
${systemd_system_unitdir}/ostree-prepare-root.service \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN}-dracut = "bash"
|
||||
RDEPENDS:${PN}-mkinitcpio = "bash"
|
||||
RDEPENDS:${PN}:class-target = " \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'gpgme', 'gnupg', '', d)} \
|
||||
${PN}-switchroot \
|
||||
"
|
||||
|
||||
#
|
||||
# Note that to get ptest to pass you also need:
|
||||
#
|
||||
# xattr in DISTRO_FEATURES (default)
|
||||
# static ostree-prepare-root
|
||||
# overlayfs in your kernel
|
||||
# busybox built statically
|
||||
# C.UTF-8 locale available (default)
|
||||
# Sufficient disk space/RAM (e.g. core-image-sato-sdk)
|
||||
#
|
||||
# Something like this in your local.conf:
|
||||
#
|
||||
# PACKAGECONFIG:append:pn-ostree = " static soup3"
|
||||
# KERNEL_EXTRA_FEATURES:append = " features/overlayfs/overlayfs.scc"
|
||||
# TARGET_CFLAGS:append:pn-busybox = " -static"
|
||||
#
|
||||
RDEPENDS:${PN}-ptest += " \
|
||||
attr \
|
||||
bash \
|
||||
coreutils \
|
||||
cpio \
|
||||
diffutils \
|
||||
findutils \
|
||||
grep \
|
||||
locale-base-en-us \
|
||||
python3-core \
|
||||
python3-multiprocessing \
|
||||
strace \
|
||||
tar \
|
||||
util-linux \
|
||||
xz \
|
||||
python3-pyyaml \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'gjs', 'gjs', '', d)} \
|
||||
"
|
||||
RDEPENDS:${PN}-ptest:remove:riscv32 = "strace"
|
||||
RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-utils glibc-localedata-en-us"
|
||||
|
||||
RRECOMMENDS:${PN}:append:class-target = " kernel-module-overlay"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "ostree-remount.service ostree-finalize-staged.path"
|
||||
SYSTEMD_SERVICE:${PN}-switchroot = "ostree-prepare-root.service"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
@ -1,16 +1,11 @@
|
||||
#!/bin/bash
|
||||
#!/usr/bin/env bash
|
||||
|
||||
EXTRA_KERNEL_CMDLINE=""
|
||||
|
||||
SCRIPT=$(realpath ${BASH_SOURCE})
|
||||
BUILD_ROOT=$(realpath $(dirname ${SCRIPT})/../build)
|
||||
SYSROOT=${BUILD_ROOT}/tmp-glibc/work/x86_64-linux/qemu-helper-native/1.0-r1/recipe-sysroot-native
|
||||
QEMU=${SYSROOT}/usr/bin/qemu-system-x86_64
|
||||
|
||||
if [[ ! -f ${QEMU} ]]; then
|
||||
>&2 printf "Qemu binary not found at: ${QEMU}\n"
|
||||
exit 1
|
||||
fi
|
||||
SYSROOT=${BUILD_ROOT}/tmp-glibc/work/x86_64-linux/qemu-helper-native/1.0/recipe-sysroot-native
|
||||
QEMU=qemu-system-x86_64
|
||||
|
||||
ENABLE_KVM="--enable-kvm -cpu host"
|
||||
|
||||
@ -20,9 +15,13 @@ if [[ ! -c "/dev/kvm" ]]; then
|
||||
fi
|
||||
|
||||
EFI_BIOS="-bios /usr/share/qemu/OVMF.fd"
|
||||
if [[ ! -f "/usr/share/qemu/OVMF.fd" ]]; then
|
||||
printf "Disabling EFI boot because OVMF.fd not found in /usr/share/qemu\n"
|
||||
EFI_BIOS=""
|
||||
if [[ -f "/usr/share/qemu/OVMF.fd" ]]; then
|
||||
printf "Using EFI boot because OVMF.fd found in /usr/share/qemu/\n"
|
||||
elif [[ -f "/usr/share/edk2-ovmf/x64/OVMF.fd" ]]; then # fedora and arch
|
||||
printf "Using EFI boot because OVMF.fd found in /usr/share/edk2-ovmf/x64/\n"
|
||||
EFI_BIOS="-bios /usr/share/edk2-ovmf/x64/OVMF.fd"
|
||||
else
|
||||
printf "Disabling EFI boot because OVMF.fd not found\n"
|
||||
fi
|
||||
|
||||
usage() {
|
||||
@ -43,7 +42,7 @@ exit 0
|
||||
}
|
||||
|
||||
BOOT_TARGET=""
|
||||
MEMORY_ARG="-m 4G"
|
||||
MEMORY_ARG="-m 8G"
|
||||
DEBUG_MODE=0
|
||||
|
||||
while [[ $# -gt 0 ]]; do
|
||||
@ -70,6 +69,14 @@ while [[ $# -gt 0 ]]; do
|
||||
BOOT_TARGET="installer"
|
||||
shift
|
||||
;;
|
||||
boot-to-install)
|
||||
BOOT_TARGET="boot-to-install"
|
||||
shift
|
||||
;;
|
||||
boot-installed)
|
||||
BOOT_TARGET="boot-installed"
|
||||
shift
|
||||
;;
|
||||
--help)
|
||||
usage
|
||||
;;
|
||||
@ -84,23 +91,50 @@ COMMON_INSTALLER_ARGS="\
|
||||
${ENABLE_KVM} \
|
||||
${MEMORY_ARG} \
|
||||
${EFI_BIOS} \
|
||||
-vga virtio \
|
||||
-device virtio-vga-gl \
|
||||
-display sdl,gl=on \
|
||||
-vga none \
|
||||
-usb -device usb-tablet,id=input0 \
|
||||
-drive format=raw,file=${BUILD_ROOT}/images/citadel-installer.img \
|
||||
-net none \
|
||||
-nic user,model=virtio-net-pci \
|
||||
-smp 2"
|
||||
|
||||
boot_installer() {
|
||||
if [[ ${DEBUG_MODE} -eq 1 ]]; then
|
||||
${QEMU} ${COMMON_INSTALLER_ARGS} \
|
||||
${QEMU} ${COMMON_INSTALLER_ARGS} \
|
||||
-serial stdio \
|
||||
-kernel ${BUILD_ROOT}/images/bzImage \
|
||||
-drive format=raw,file=${BUILD_ROOT}/images/citadel-installer.img \
|
||||
-append "console=ttyS0 earlyprintk=ttyS0 root=/dev/mapper/rootfs citadel.verbose citadel.install fstab=no luks=no systemd.journald.forward_to_console=1 ${EXTRA_KERNEL_CMDLINE}"
|
||||
else
|
||||
${QEMU} ${COMMON_INSTALLER_ARGS}
|
||||
${QEMU} ${COMMON_INSTALLER_ARGS} -drive format=raw,file=${BUILD_ROOT}/images/citadel-installer.img
|
||||
fi
|
||||
}
|
||||
|
||||
# qemu-img create -f qcow2 qemu_disk/citadel_disk.qcow2 -o size=50G,preallocation=metadata
|
||||
# mount -t 9p -o trans=virtio,version=9p2000.L shared /mnt/my9p
|
||||
boot_to_install() {
|
||||
if [ ! -f qemu_disk/citadel_disk.qcow2 ]; then
|
||||
mkdir qemu_disk
|
||||
qemu-img create -f qcow2 qemu_disk/citadel_disk.qcow2 -o size=50G,preallocation=metadata
|
||||
fi
|
||||
|
||||
CITADEL_QEMU_ARGS+=" ${COMMON_INSTALLER_ARGS} -drive format=raw,file=${BUILD_ROOT}/images/citadel-installer.img -drive format=qcow2,file=${BUILD_ROOT}/../qemu_disk/citadel_disk.qcow2"
|
||||
|
||||
echo "${QEMU} ${CITADEL_QEMU_ARGS}"
|
||||
${QEMU} ${CITADEL_QEMU_ARGS}
|
||||
}
|
||||
|
||||
boot_installed() {
|
||||
if [ ! -f qemu_disk/citadel_disk.qcow2 ]; then
|
||||
printf "The qemu disk is not found on the drive. Please run boot-to-install\n"
|
||||
fi
|
||||
|
||||
CITADEL_QEMU_ARGS+=" ${COMMON_INSTALLER_ARGS} -drive format=qcow2,file=${BUILD_ROOT}/../qemu_disk/citadel_disk.qcow2"
|
||||
|
||||
echo "${QEMU} ${CITADEL_QEMU_ARGS}"
|
||||
${QEMU} ${CITADEL_QEMU_ARGS}
|
||||
}
|
||||
|
||||
boot_kernel() {
|
||||
EXTRA_OPTIONS=""
|
||||
KERNEL_IMAGE="bzImage"
|
||||
@ -124,6 +158,10 @@ if [[ ${BOOT_TARGET} = "kernel" ]]; then
|
||||
boot_kernel
|
||||
elif [[ ${BOOT_TARGET} = "installer" ]]; then
|
||||
boot_installer
|
||||
elif [[ ${BOOT_TARGET} = "boot-to-install" ]]; then
|
||||
boot_to_install
|
||||
elif [[ ${BOOT_TARGET} = "boot-installed" ]]; then
|
||||
boot_installed
|
||||
else
|
||||
usage
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user