gnome-control-center, gnome-video-effects, gsound, cheese, gnome-autoar packaged
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
#!/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 3.
|
||||
# See the file https://www.gnu.org/licenses/gpl-3.0.txt
|
||||
#
|
||||
# TODO: fix grilo support
|
||||
|
||||
from pisi.actionsapi import mesontools
|
||||
from pisi.actionsapi import pisitools
|
||||
|
||||
def setup():
|
||||
mesontools.configure("-Dsnap=false \
|
||||
-Dgrilo=disabled")
|
||||
|
||||
def build():
|
||||
mesontools.build()
|
||||
|
||||
def install():
|
||||
mesontools.install()
|
||||
|
||||
pisitools.dodoc("NEWS", "README*", "COPYING")
|
||||
+207
@@ -0,0 +1,207 @@
|
||||
From ef111c9c11623be8e84526abec7c15198f5c0604 Mon Sep 17 00:00:00 2001
|
||||
From: Mart Raudsepp <leio@gentoo.org>
|
||||
Date: Sun, 12 Jul 2020 12:21:07 +0300
|
||||
Subject: [PATCH 1/5] build: Restore options for bluetooth, NetworkManager and
|
||||
Wacom
|
||||
|
||||
---
|
||||
meson.build | 33 ++++++++++++++++++++-------------
|
||||
meson_options.txt | 3 +++
|
||||
panels/meson.build | 16 ++++++++++------
|
||||
panels/power/cc-power-panel.c | 4 ++++
|
||||
panels/power/meson.build | 4 ++--
|
||||
shell/meson.build | 2 +-
|
||||
tests/meson.build | 2 +-
|
||||
7 files changed, 41 insertions(+), 23 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 900216962..4470376db 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -216,7 +216,8 @@ endif
|
||||
config_h.set('HAVE_MALCONTENT', enable_malcontent,
|
||||
description: 'Define to 1 if malcontent support is enabled')
|
||||
|
||||
-if host_is_linux
|
||||
+enable_network_manager = get_option('network_manager')
|
||||
+if enable_network_manager
|
||||
# network manager
|
||||
network_manager_deps = [
|
||||
dependency('libnm', version: '>= 1.24.0'),
|
||||
@@ -224,15 +225,20 @@ if host_is_linux
|
||||
dependency('mm-glib', version: '>= 0.7')
|
||||
]
|
||||
endif
|
||||
-config_h.set('BUILD_NETWORK', host_is_linux,
|
||||
+config_h.set('BUILD_NETWORK', enable_network_manager,
|
||||
description: 'Define to 1 to build the Network panel')
|
||||
-config_h.set('HAVE_NETWORK_MANAGER', host_is_linux,
|
||||
+config_h.set('HAVE_NETWORK_MANAGER', enable_network_manager,
|
||||
description: 'Define to 1 if NetworkManager is available')
|
||||
|
||||
-if host_is_linux_not_s390
|
||||
+enable_bluetooth = get_option('bluetooth')
|
||||
+if enable_bluetooth
|
||||
# gnome-bluetooth
|
||||
gnome_bluetooth_dep = dependency('gnome-bluetooth-1.0', version: '>= 3.18.2')
|
||||
+endif
|
||||
|
||||
+enable_wacom = get_option('wacom')
|
||||
+if enable_wacom
|
||||
+ # Wacom
|
||||
libwacom_dep = dependency('libwacom', version: '>= 0.7')
|
||||
|
||||
wacom_deps = [
|
||||
@@ -240,17 +246,18 @@ if host_is_linux_not_s390
|
||||
]
|
||||
config_h.set('HAVE_WACOM_3D_STYLUS', libwacom_dep.version().version_compare('>= 0.27'),
|
||||
description: 'Define to 1 if libwacom provides definition for 3D styli')
|
||||
-else
|
||||
- message('Bluetooth and Wacom panels will not be built (no USB support on this platform)')
|
||||
+endif
|
||||
+
|
||||
+if not host_is_linux_not_s390
|
||||
message('Thunderbolt panel will not be built (not supported on this platform)')
|
||||
endif
|
||||
-config_h.set('BUILD_BLUETOOTH', host_is_linux_not_s390,
|
||||
+config_h.set('BUILD_BLUETOOTH', enable_bluetooth,
|
||||
description: 'Define to 1 to build the Bluetooth panel')
|
||||
-config_h.set('HAVE_BLUETOOTH', host_is_linux_not_s390,
|
||||
+config_h.set('HAVE_BLUETOOTH', enable_bluetooth,
|
||||
description: 'Define to 1 if bluetooth support is available')
|
||||
-config_h.set('BUILD_WACOM', host_is_linux_not_s390,
|
||||
+config_h.set('BUILD_WACOM', enable_wacom,
|
||||
description: 'Define to 1 to build the Wacom panel')
|
||||
-config_h.set('HAVE_WACOM', host_is_linux_not_s390,
|
||||
+config_h.set('HAVE_WACOM', enable_wacom,
|
||||
description: 'Define to 1 if Wacom is supportted')
|
||||
config_h.set('BUILD_THUNDERBOLT', host_is_linux_not_s390,
|
||||
description: 'Define to 1 to build the Thunderbolt panel')
|
||||
@@ -301,9 +308,9 @@ summary({
|
||||
})
|
||||
|
||||
summary({
|
||||
- 'GNOME Bluetooth': host_is_linux_not_s390,
|
||||
- 'NetworkManager': host_is_linux,
|
||||
- 'Wacom': host_is_linux_not_s390,
|
||||
+ 'GNOME Bluetooth': enable_bluetooth,
|
||||
+ 'NetworkManager': enable_network_manager,
|
||||
+ 'Wacom': enable_wacom,
|
||||
}, section: 'Dependencies')
|
||||
|
||||
summary({
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index 1b7b54810..2b3da02c0 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -1,10 +1,13 @@
|
||||
+option('bluetooth', type: 'boolean', value: true, description: 'build with Bluetooth support')
|
||||
option('cheese', type: 'boolean', value: true, description: 'build with cheese webcam support')
|
||||
option('documentation', type: 'boolean', value: false, description: 'build documentation')
|
||||
option('ibus', type: 'boolean', value: true, description: 'build with IBus support')
|
||||
+option('network_manager', type: 'boolean', value: true, description: 'build with NetworkManager support')
|
||||
option('privileged_group', type: 'string', value: 'wheel', description: 'name of group that has elevated permissions')
|
||||
option('snap', type: 'boolean', value: false, description: 'build with Snap support')
|
||||
option('tests', type: 'boolean', value: true, description: 'build tests')
|
||||
option('tracing', type: 'boolean', value: false, description: 'add extra debugging information')
|
||||
+option('wacom', type: 'boolean', value: true, description: 'build with Wacom support')
|
||||
option('wayland', type: 'boolean', value: true, description: 'build with Wayland support')
|
||||
option('profile', type: 'combo', choices: ['default','development'], value: 'default')
|
||||
option('malcontent', type: 'boolean', value: false, description: 'build with malcontent support')
|
||||
diff --git a/panels/meson.build b/panels/meson.build
|
||||
index 2f4fdc5e3..6798f6997 100644
|
||||
--- a/panels/meson.build
|
||||
+++ b/panels/meson.build
|
||||
@@ -29,16 +29,20 @@ panels = [
|
||||
'user-accounts'
|
||||
]
|
||||
|
||||
-if host_is_linux
|
||||
+if enable_network_manager
|
||||
panels += ['network']
|
||||
endif
|
||||
|
||||
+if enable_bluetooth
|
||||
+ panels += ['bluetooth']
|
||||
+endif
|
||||
+
|
||||
+if enable_wacom
|
||||
+ panels += ['wacom']
|
||||
+endif
|
||||
+
|
||||
if host_is_linux_not_s390
|
||||
- panels += [
|
||||
- 'bluetooth',
|
||||
- 'thunderbolt',
|
||||
- 'wacom'
|
||||
- ]
|
||||
+ panels += ['thunderbolt']
|
||||
endif
|
||||
|
||||
panels_list = []
|
||||
diff --git a/panels/power/cc-power-panel.c b/panels/power/cc-power-panel.c
|
||||
index c9c4705da..b4a3a3323 100644
|
||||
--- a/panels/power/cc-power-panel.c
|
||||
+++ b/panels/power/cc-power-panel.c
|
||||
@@ -1745,11 +1745,15 @@ cc_power_panel_class_init (CcPowerPanelClass *klass)
|
||||
gtk_widget_class_bind_template_callback (widget_class, has_kbd_brightness_cb);
|
||||
gtk_widget_class_bind_template_callback (widget_class, idle_delay_combo_changed_cb);
|
||||
gtk_widget_class_bind_template_callback (widget_class, keynav_failed_cb);
|
||||
+#ifdef HAVE_NETWORK_MANAGER
|
||||
gtk_widget_class_bind_template_callback (widget_class, mobile_switch_changed_cb);
|
||||
+#endif
|
||||
gtk_widget_class_bind_template_callback (widget_class, power_button_combo_changed_cb);
|
||||
gtk_widget_class_bind_template_callback (widget_class, power_profiles_row_activated_cb);
|
||||
gtk_widget_class_bind_template_callback (widget_class, power_saving_listbox_row_activated_cb);
|
||||
+#ifdef HAVE_NETWORK_MANAGER
|
||||
gtk_widget_class_bind_template_callback (widget_class, wifi_switch_changed_cb);
|
||||
+#endif
|
||||
}
|
||||
|
||||
static void
|
||||
diff --git a/panels/power/meson.build b/panels/power/meson.build
|
||||
index 625059dd2..e3b8c4233 100644
|
||||
--- a/panels/power/meson.build
|
||||
+++ b/panels/power/meson.build
|
||||
@@ -46,11 +46,11 @@ deps = common_deps + [
|
||||
upower_glib_dep
|
||||
]
|
||||
|
||||
-if host_is_linux
|
||||
+if enable_network_manager
|
||||
deps += network_manager_deps
|
||||
endif
|
||||
|
||||
-if host_is_linux_not_s390
|
||||
+if enable_bluetooth
|
||||
deps += gnome_bluetooth_dep
|
||||
endif
|
||||
|
||||
diff --git a/shell/meson.build b/shell/meson.build
|
||||
index 89b96590e..93e1f8994 100644
|
||||
--- a/shell/meson.build
|
||||
+++ b/shell/meson.build
|
||||
@@ -119,7 +119,7 @@ if enable_cheese
|
||||
shell_deps += cheese_deps
|
||||
endif
|
||||
|
||||
-if host_is_linux_not_s390
|
||||
+if enable_wacom
|
||||
shell_deps += wacom_deps
|
||||
endif
|
||||
|
||||
diff --git a/tests/meson.build b/tests/meson.build
|
||||
index d4fe361ef..8410c636d 100644
|
||||
--- a/tests/meson.build
|
||||
+++ b/tests/meson.build
|
||||
@@ -1,6 +1,6 @@
|
||||
subdir('common')
|
||||
#subdir('datetime')
|
||||
-if host_is_linux
|
||||
+if enable_network_manager
|
||||
subdir('network')
|
||||
endif
|
||||
|
||||
--
|
||||
2.26.3
|
||||
|
||||
+107
@@ -0,0 +1,107 @@
|
||||
From 783a71be49b32b2c0d92509579f425cdbf5208ac Mon Sep 17 00:00:00 2001
|
||||
From: Mart Raudsepp <leio@gentoo.org>
|
||||
Date: Sun, 12 Jul 2020 12:27:59 +0300
|
||||
Subject: [PATCH 2/5] build: Make kerberos optional
|
||||
|
||||
---
|
||||
meson.build | 5 +++++
|
||||
meson_options.txt | 1 +
|
||||
panels/user-accounts/cc-realm-manager.c | 9 +++++++++
|
||||
panels/user-accounts/meson.build | 4 ----
|
||||
4 files changed, 15 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 4470376db..acf68a1da 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -262,6 +262,11 @@ config_h.set('HAVE_WACOM', enable_wacom,
|
||||
config_h.set('BUILD_THUNDERBOLT', host_is_linux_not_s390,
|
||||
description: 'Define to 1 to build the Thunderbolt panel')
|
||||
|
||||
+# Kerberos support
|
||||
+krb_dep = dependency('krb5', required: get_option('kerberos'))
|
||||
+config_h.set('HAVE_KERBEROS', krb_dep.found(),
|
||||
+ description: 'Define to 1 if kerberos support is available')
|
||||
+
|
||||
gnome = import('gnome')
|
||||
i18n = import('i18n')
|
||||
pkg = import('pkgconfig')
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index 2b3da02c0..5c558557d 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -2,6 +2,7 @@ option('bluetooth', type: 'boolean', value: true, description: 'build with Bluet
|
||||
option('cheese', type: 'boolean', value: true, description: 'build with cheese webcam support')
|
||||
option('documentation', type: 'boolean', value: false, description: 'build documentation')
|
||||
option('ibus', type: 'boolean', value: true, description: 'build with IBus support')
|
||||
+option('kerberos', type: 'feature', value: 'auto', description: 'build with kerberos support')
|
||||
option('network_manager', type: 'boolean', value: true, description: 'build with NetworkManager support')
|
||||
option('privileged_group', type: 'string', value: 'wheel', description: 'name of group that has elevated permissions')
|
||||
option('snap', type: 'boolean', value: false, description: 'build with Snap support')
|
||||
diff --git a/panels/user-accounts/cc-realm-manager.c b/panels/user-accounts/cc-realm-manager.c
|
||||
index bc43e6d0f..cd1cb025d 100644
|
||||
--- a/panels/user-accounts/cc-realm-manager.c
|
||||
+++ b/panels/user-accounts/cc-realm-manager.c
|
||||
@@ -22,7 +22,9 @@
|
||||
|
||||
#include "cc-realm-manager.h"
|
||||
|
||||
+#ifdef HAVE_KERBEROS
|
||||
#include <krb5/krb5.h>
|
||||
+#endif
|
||||
|
||||
#include <glib.h>
|
||||
#include <glib/gi18n.h>
|
||||
@@ -596,6 +598,7 @@ login_closure_free (gpointer data)
|
||||
g_slice_free (LoginClosure, login);
|
||||
}
|
||||
|
||||
+#ifdef HAVE_KERBEROS
|
||||
static krb5_error_code
|
||||
login_perform_kinit (krb5_context k5,
|
||||
const gchar *realm,
|
||||
@@ -657,6 +660,7 @@ login_perform_kinit (krb5_context k5,
|
||||
|
||||
return code;
|
||||
}
|
||||
+#endif
|
||||
|
||||
static void
|
||||
kinit_thread_func (GTask *t,
|
||||
@@ -665,6 +669,7 @@ kinit_thread_func (GTask *t,
|
||||
GCancellable *cancellable)
|
||||
{
|
||||
g_autoptr(GTask) task = t;
|
||||
+#ifdef HAVE_KERBEROS
|
||||
LoginClosure *login = task_data;
|
||||
krb5_context k5 = NULL;
|
||||
krb5_error_code code;
|
||||
@@ -740,6 +745,10 @@ kinit_thread_func (GTask *t,
|
||||
|
||||
if (k5)
|
||||
krb5_free_context (k5);
|
||||
+#else
|
||||
+ g_task_return_new_error (task, CC_REALM_ERROR, CC_REALM_ERROR_GENERIC,
|
||||
+ _("gnome-control-center was built without kerberos support"));
|
||||
+#endif
|
||||
}
|
||||
|
||||
void
|
||||
diff --git a/panels/user-accounts/meson.build b/panels/user-accounts/meson.build
|
||||
index b8ee9d98e..4375d3816 100644
|
||||
--- a/panels/user-accounts/meson.build
|
||||
+++ b/panels/user-accounts/meson.build
|
||||
@@ -169,10 +169,6 @@ sources += gnome.mkenums_simple(
|
||||
'cc-user-accounts-enum-types',
|
||||
sources: files(enum_headers))
|
||||
|
||||
-# Kerberos support
|
||||
-krb_dep = dependency('krb5', required: false)
|
||||
-assert(krb_dep.found(), 'kerberos libraries not found in your path')
|
||||
-
|
||||
deps = common_deps + [
|
||||
accounts_dep,
|
||||
gdk_pixbuf_dep,
|
||||
--
|
||||
2.26.3
|
||||
|
||||
+263
@@ -0,0 +1,263 @@
|
||||
From b7726d558c10c2c3b6c987954a0367116ccdfc18 Mon Sep 17 00:00:00 2001
|
||||
From: Mart Raudsepp <leio@gentoo.org>
|
||||
Date: Mon, 4 Mar 2019 01:22:13 +0200
|
||||
Subject: [PATCH 3/5] build: Make grilo and gnome-online-accounts optional
|
||||
|
||||
grilo requires goa
|
||||
---
|
||||
meson.build | 15 ++++++++++++++-
|
||||
meson_options.txt | 2 ++
|
||||
panels/background/bg-pictures-source.c | 20 ++++++++++++++++++++
|
||||
panels/background/meson.build | 7 +++++--
|
||||
panels/meson.build | 5 ++++-
|
||||
shell/cc-panel-loader.c | 4 ++++
|
||||
6 files changed, 49 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index acf68a1da..24f54815f 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -124,7 +124,7 @@ gio_dep = dependency('gio-2.0')
|
||||
glib_dep = dependency('glib-2.0', version: '>= 2.56.0')
|
||||
gnome_desktop_dep = dependency('gnome-desktop-3.0', version: '>= 3.33.4')
|
||||
gnome_settings_dep = dependency('gnome-settings-daemon', version: '>= 3.27.90')
|
||||
-goa_dep = dependency('goa-1.0', version: goa_req_version)
|
||||
+goa_dep = dependency('goa-1.0', version: goa_req_version, required: get_option('goa'))
|
||||
gsettings_desktop_dep = dependency('gsettings-desktop-schemas', version: '>= 3.37.1')
|
||||
libxml_dep = dependency('libxml-2.0')
|
||||
polkit_gobject_dep = dependency('polkit-gobject-1', version: '>= 0.114')
|
||||
@@ -138,6 +138,19 @@ epoxy_dep = dependency('epoxy')
|
||||
|
||||
m_dep = cc.find_library('m')
|
||||
|
||||
+enable_goa = goa_dep.found()
|
||||
+config_h.set('BUILD_GOA', enable_goa,
|
||||
+ description: 'Define to 1 to build the Online Accounts panel')
|
||||
+
|
||||
+grilo_dep = dependency('grilo-0.3', version: '>= 0.3.0', required: get_option('grilo'))
|
||||
+enable_grilo = grilo_dep.found()
|
||||
+config_h.set('HAVE_GRILO', enable_grilo,
|
||||
+ description: 'Define to 1 to enable grilo support')
|
||||
+
|
||||
+if enable_grilo and not enable_goa
|
||||
+ error('Grilo support requires goa')
|
||||
+endif
|
||||
+
|
||||
common_deps = [
|
||||
gio_dep,
|
||||
glib_dep,
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index 5c558557d..17e3551fa 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -1,6 +1,8 @@
|
||||
option('bluetooth', type: 'boolean', value: true, description: 'build with Bluetooth support')
|
||||
option('cheese', type: 'boolean', value: true, description: 'build with cheese webcam support')
|
||||
option('documentation', type: 'boolean', value: false, description: 'build documentation')
|
||||
+option('goa', type: 'feature', value: 'auto', description: 'build with gnome-online-accounts support')
|
||||
+option('grilo', type: 'feature', value: 'auto', description: 'build with grilo support (background panel)')
|
||||
option('ibus', type: 'boolean', value: true, description: 'build with IBus support')
|
||||
option('kerberos', type: 'feature', value: 'auto', description: 'build with kerberos support')
|
||||
option('network_manager', type: 'boolean', value: true, description: 'build with NetworkManager support')
|
||||
diff --git a/panels/background/bg-pictures-source.c b/panels/background/bg-pictures-source.c
|
||||
index 3a3027b13..edc6c3247 100644
|
||||
--- a/panels/background/bg-pictures-source.c
|
||||
+++ b/panels/background/bg-pictures-source.c
|
||||
@@ -23,13 +23,17 @@
|
||||
|
||||
#include "bg-pictures-source.h"
|
||||
|
||||
+#ifdef HAVE_GRILO
|
||||
#include "cc-background-grilo-miner.h"
|
||||
+#endif
|
||||
#include "cc-background-item.h"
|
||||
|
||||
#include <string.h>
|
||||
#include <cairo-gobject.h>
|
||||
#include <gio/gio.h>
|
||||
+#ifdef HAVE_GRILO
|
||||
#include <grilo.h>
|
||||
+#endif
|
||||
#include <libgnome-desktop/gnome-desktop-thumbnail.h>
|
||||
#include <gdesktop-enums.h>
|
||||
|
||||
@@ -43,7 +47,9 @@ struct _BgPicturesSource
|
||||
|
||||
GCancellable *cancellable;
|
||||
|
||||
+#ifdef HAVE_GRILO
|
||||
CcBackgroundGriloMiner *grl_miner;
|
||||
+#endif
|
||||
|
||||
GFileMonitor *picture_dir_monitor;
|
||||
GFileMonitor *cache_dir_monitor;
|
||||
@@ -83,7 +89,9 @@ bg_pictures_source_dispose (GObject *object)
|
||||
g_clear_object (&source->cancellable);
|
||||
}
|
||||
|
||||
+#ifdef HAVE_GRILO
|
||||
g_clear_object (&source->grl_miner);
|
||||
+#endif
|
||||
|
||||
G_OBJECT_CLASS (bg_pictures_source_parent_class)->dispose (object);
|
||||
}
|
||||
@@ -392,7 +400,9 @@ add_single_file (BgPicturesSource *bg_source,
|
||||
const gchar *pictures_path;
|
||||
g_autoptr(GFile) pictures_dir = NULL;
|
||||
g_autoptr(GFile) cache_dir = NULL;
|
||||
+#ifdef HAVE_GRILO
|
||||
GrlMedia *media;
|
||||
+#endif
|
||||
|
||||
/* find png and jpeg files */
|
||||
if (!content_type)
|
||||
@@ -432,14 +442,17 @@ add_single_file (BgPicturesSource *bg_source,
|
||||
"source-url", source_uri,
|
||||
NULL);
|
||||
|
||||
+#ifdef HAVE_GRILO
|
||||
media = g_object_get_data (G_OBJECT (file), "grl-media");
|
||||
if (media == NULL)
|
||||
+#endif
|
||||
{
|
||||
g_object_set_data_full (G_OBJECT (file), "item", g_object_ref (item), g_object_unref);
|
||||
g_file_read_async (file, G_PRIORITY_DEFAULT,
|
||||
bg_source->cancellable,
|
||||
picture_opened_for_read, bg_source);
|
||||
}
|
||||
+#ifdef HAVE_GRILO
|
||||
else
|
||||
{
|
||||
g_autoptr(GFile) native_file = NULL;
|
||||
@@ -476,6 +489,7 @@ add_single_file (BgPicturesSource *bg_source,
|
||||
picture_copied_for_read,
|
||||
bg_source);
|
||||
}
|
||||
+#endif
|
||||
|
||||
retval = TRUE;
|
||||
|
||||
@@ -496,6 +510,7 @@ add_single_file_from_info (BgPicturesSource *bg_source,
|
||||
return add_single_file (bg_source, file, content_type, mtime);
|
||||
}
|
||||
|
||||
+#ifdef HAVE_GRILO
|
||||
static gboolean
|
||||
add_single_file_from_media (BgPicturesSource *bg_source,
|
||||
GFile *file,
|
||||
@@ -520,6 +535,7 @@ add_single_file_from_media (BgPicturesSource *bg_source,
|
||||
|
||||
return add_single_file (bg_source, file, content_type, (guint64) mtime_unix);
|
||||
}
|
||||
+#endif
|
||||
|
||||
gboolean
|
||||
bg_pictures_source_add (BgPicturesSource *bg_source,
|
||||
@@ -804,6 +820,7 @@ monitor_path (BgPicturesSource *self,
|
||||
return monitor;
|
||||
}
|
||||
|
||||
+#ifdef HAVE_GRILO
|
||||
static void
|
||||
media_found_cb (BgPicturesSource *self, GrlMedia *media)
|
||||
{
|
||||
@@ -815,6 +832,7 @@ media_found_cb (BgPicturesSource *self, GrlMedia *media)
|
||||
g_object_set_data_full (G_OBJECT (file), "grl-media", g_object_ref (media), g_object_unref);
|
||||
add_single_file_from_media (self, file, media);
|
||||
}
|
||||
+#endif
|
||||
|
||||
static void
|
||||
bg_pictures_source_init (BgPicturesSource *self)
|
||||
@@ -837,9 +855,11 @@ bg_pictures_source_init (BgPicturesSource *self)
|
||||
cache_path = bg_pictures_source_get_cache_path ();
|
||||
self->cache_dir_monitor = monitor_path (self, cache_path);
|
||||
|
||||
+#ifdef HAVE_GRILO
|
||||
self->grl_miner = cc_background_grilo_miner_new ();
|
||||
g_signal_connect_object (self->grl_miner, "media-found", G_CALLBACK (media_found_cb), self, G_CONNECT_SWAPPED);
|
||||
cc_background_grilo_miner_start (self->grl_miner);
|
||||
+#endif
|
||||
}
|
||||
|
||||
BgPicturesSource *
|
||||
diff --git a/panels/background/meson.build b/panels/background/meson.build
|
||||
index e9fa398d4..db18ffd8c 100644
|
||||
--- a/panels/background/meson.build
|
||||
+++ b/panels/background/meson.build
|
||||
@@ -81,20 +81,23 @@ sources = common_sources + files(
|
||||
'bg-source.c',
|
||||
'bg-wallpapers-source.c',
|
||||
'cc-background-chooser.c',
|
||||
- 'cc-background-grilo-miner.c',
|
||||
'cc-background-item.c',
|
||||
'cc-background-panel.c',
|
||||
'cc-background-preview.c',
|
||||
'cc-background-xml.c',
|
||||
)
|
||||
|
||||
+if enable_grilo
|
||||
+ sources += files('cc-background-grilo-miner.c')
|
||||
+endif
|
||||
+
|
||||
deps = common_deps + [
|
||||
gdk_pixbuf_dep,
|
||||
gnome_desktop_dep,
|
||||
goa_dep,
|
||||
libxml_dep,
|
||||
dependency('cairo-gobject'),
|
||||
- dependency('grilo-0.3', version: '>= 0.3.0')
|
||||
+ grilo_dep
|
||||
]
|
||||
|
||||
cflags += [
|
||||
diff --git a/panels/meson.build b/panels/meson.build
|
||||
index 6798f6997..90bb3deef 100644
|
||||
--- a/panels/meson.build
|
||||
+++ b/panels/meson.build
|
||||
@@ -16,7 +16,6 @@ panels = [
|
||||
'microphone',
|
||||
'mouse',
|
||||
'notifications',
|
||||
- 'online-accounts',
|
||||
'power',
|
||||
'printers',
|
||||
'region',
|
||||
@@ -29,6 +28,10 @@ panels = [
|
||||
'user-accounts'
|
||||
]
|
||||
|
||||
+if enable_goa
|
||||
+ panels += ['online-accounts']
|
||||
+endif
|
||||
+
|
||||
if enable_network_manager
|
||||
panels += ['network']
|
||||
endif
|
||||
diff --git a/shell/cc-panel-loader.c b/shell/cc-panel-loader.c
|
||||
index f20384394..b10611c80 100644
|
||||
--- a/shell/cc-panel-loader.c
|
||||
+++ b/shell/cc-panel-loader.c
|
||||
@@ -48,7 +48,9 @@ extern GType cc_network_panel_get_type (void);
|
||||
extern GType cc_wifi_panel_get_type (void);
|
||||
#endif /* BUILD_NETWORK */
|
||||
extern GType cc_notifications_panel_get_type (void);
|
||||
+#ifdef BUILD_GOA
|
||||
extern GType cc_goa_panel_get_type (void);
|
||||
+#endif /* BUILD_GOA */
|
||||
extern GType cc_power_panel_get_type (void);
|
||||
extern GType cc_printers_panel_get_type (void);
|
||||
extern GType cc_region_panel_get_type (void);
|
||||
@@ -112,7 +114,9 @@ static CcPanelLoaderVtable default_panels[] =
|
||||
PANEL_TYPE("wifi", cc_wifi_panel_get_type, cc_wifi_panel_static_init_func),
|
||||
#endif
|
||||
PANEL_TYPE("notifications", cc_notifications_panel_get_type, NULL),
|
||||
+#ifdef BUILD_GOA
|
||||
PANEL_TYPE("online-accounts", cc_goa_panel_get_type, NULL),
|
||||
+#endif
|
||||
PANEL_TYPE("power", cc_power_panel_get_type, NULL),
|
||||
PANEL_TYPE("printers", cc_printers_panel_get_type, NULL),
|
||||
PANEL_TYPE("region", cc_region_panel_get_type, NULL),
|
||||
--
|
||||
2.26.3
|
||||
|
||||
@@ -0,0 +1,157 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "https://pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>gnome-control-center</Name>
|
||||
<Homepage>https://gitlab.gnome.org/GNOME/gnome-control-center</Homepage>
|
||||
<Packager>
|
||||
<Name>Pisi Linux Admins</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>GPLv2</License>
|
||||
<IsA>app:gui</IsA>
|
||||
<Summary>GNOME's main interface to configure various aspects of the desktop</Summary>
|
||||
<Description>GNOME Settings is GNOME's main interface for configuration of various aspects of your desktop.</Description>
|
||||
<Archive sha1sum="06a456d779b174a29ea65801133d2b85fcc02732">https://download.gnome.org/sources/gnome-control-center/40/gnome-control-center-40.0.tar.xz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency>glib2-devel</Dependency>
|
||||
<Dependency>gsettings-desktop-schemas-devel</Dependency>
|
||||
<Dependency>intltool</Dependency>
|
||||
<Dependency>meson</Dependency>
|
||||
<Dependency>polkit-devel</Dependency>
|
||||
<Dependency>python3-devel</Dependency>
|
||||
<Dependency>ModemManager-devel</Dependency>
|
||||
<Dependency>accountsservice-devel</Dependency>
|
||||
<Dependency>colord-gtk-devel</Dependency>
|
||||
<Dependency>gnome-bluetooth-devel</Dependency>
|
||||
<Dependency>gnome-desktop-devel</Dependency>
|
||||
<Dependency>gnome-menus-devel</Dependency>
|
||||
<Dependency>gnome-online-accounts-devel</Dependency>
|
||||
<Dependency>gsettings-desktop-schemas-devel</Dependency>
|
||||
<Dependency>gnome-settings-daemon-devel</Dependency>
|
||||
<Dependency>grilo-devel</Dependency>
|
||||
<Dependency>ibus-devel</Dependency>
|
||||
<Dependency>libSM-devel</Dependency>
|
||||
<Dependency>libXxf86misc-devel</Dependency>
|
||||
<Dependency>libgtop-devel</Dependency>
|
||||
<Dependency>libhandy-devel</Dependency>
|
||||
<Dependency>libpwquality-devel</Dependency>
|
||||
<Dependency>mit-kerberos</Dependency>
|
||||
<Dependency>e2fsprogs-devel</Dependency>
|
||||
<Dependency>libnma-devel</Dependency>
|
||||
<Dependency>pulseaudio-libs-devel</Dependency>
|
||||
<Dependency>samba-devel</Dependency>
|
||||
<Dependency>upower-devel</Dependency>
|
||||
<Dependency>vala-devel</Dependency>
|
||||
<Dependency>clutter-gtk-devel</Dependency>
|
||||
<Dependency>libxml2-devel</Dependency>
|
||||
<Dependency>libX11-devel</Dependency>
|
||||
<Dependency>gtk3-devel</Dependency>
|
||||
<Dependency>cups-devel</Dependency>
|
||||
<Dependency>libgudev-devel</Dependency>
|
||||
<Dependency>libwacom-devel</Dependency>
|
||||
<Dependency>clutter-devel</Dependency>
|
||||
<Dependency>libsecret-devel</Dependency>
|
||||
<Dependency>libcanberra-devel</Dependency>
|
||||
<Dependency>udisks2-devel</Dependency>
|
||||
<Dependency>gsound-devel</Dependency>
|
||||
<Dependency>libsoup-devel</Dependency>
|
||||
<Dependency>cheese-devel</Dependency>
|
||||
<Dependency>libseccomp-devel</Dependency>
|
||||
<Dependency>libmm-glib-devel</Dependency>
|
||||
<Dependency>docbook-xsl</Dependency>
|
||||
<Dependency>gettext-devel</Dependency>
|
||||
<Dependency>openssh</Dependency>
|
||||
</BuildDependencies>
|
||||
<Patches>
|
||||
<Patch>0001-build-Restore-options-for-bluetooth-NetworkManager-a.patch</Patch>
|
||||
<Patch>0002-build-Make-kerberos-optional.patch</Patch>
|
||||
<Patch>0003-build-Make-grilo-and-gnome-online-accounts-optional.patch</Patch>
|
||||
</Patches>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>gnome-control-center</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency>atk</Dependency>
|
||||
<Dependency>cups</Dependency>
|
||||
<Dependency>gtk3</Dependency>
|
||||
<Dependency>ibus</Dependency>
|
||||
<Dependency>cairo</Dependency>
|
||||
<Dependency>glib2</Dependency>
|
||||
<Dependency>libXi</Dependency>
|
||||
<Dependency>pango</Dependency>
|
||||
<Dependency>samba</Dependency>
|
||||
<Dependency>cheese</Dependency>
|
||||
<Dependency>colord</Dependency>
|
||||
<Dependency>gsound</Dependency>
|
||||
<Dependency>libX11</Dependency>
|
||||
<Dependency>libnma</Dependency>
|
||||
<Dependency>polkit</Dependency>
|
||||
<Dependency>upower</Dependency>
|
||||
<Dependency>libgtop</Dependency>
|
||||
<Dependency>libsoup</Dependency>
|
||||
<Dependency>libxml2</Dependency>
|
||||
<Dependency>udisks2</Dependency>
|
||||
<Dependency>libepoxy</Dependency>
|
||||
<Dependency>libgudev</Dependency>
|
||||
<Dependency>libhandy</Dependency>
|
||||
<Dependency>libwacom</Dependency>
|
||||
<Dependency>libsecret</Dependency>
|
||||
<Dependency>colord-gtk</Dependency>
|
||||
<Dependency>fontconfig</Dependency>
|
||||
<Dependency>gdk-pixbuf</Dependency>
|
||||
<Dependency>libmm-glib</Dependency>
|
||||
<Dependency>libpwquality</Dependency>
|
||||
<Dependency>mit-kerberos</Dependency>
|
||||
<Dependency>gnome-desktop</Dependency>
|
||||
<Dependency>NetworkManager</Dependency>
|
||||
<Dependency>wayland-server</Dependency>
|
||||
<Dependency>accountsservice</Dependency>
|
||||
<Dependency>gnome-bluetooth</Dependency>
|
||||
<Dependency>pulseaudio-libs</Dependency>
|
||||
<Dependency>gnome-online-accounts</Dependency>
|
||||
<Dependency>grilo</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="executable">/usr/bin</Path>
|
||||
<Path fileType="library">/usr/lib</Path>
|
||||
<Path fileType="executable">/usr/libexec</Path>
|
||||
<Path fileType="localedata">/usr/share/locale</Path>
|
||||
<Path fileType="man">/usr/share/man</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
<Path fileType="data">/usr/share/applications</Path>
|
||||
<Path fileType="data">/usr/share/gnome-control-center</Path>
|
||||
<Path fileType="data">/usr/share/icons</Path>
|
||||
<Path fileType="data">/usr/share/glib-2.0</Path>
|
||||
<Path fileType="data">/usr/share/dbus-1</Path>
|
||||
<Path fileType="info">/usr/share/metainfo</Path>
|
||||
<Path fileType="data">/usr/share/gettext</Path>
|
||||
<Path fileType="data">/usr/share/gnome-shell</Path>
|
||||
<Path fileType="data">/usr/share/bash-completion</Path>
|
||||
<Path fileType="data">/usr/share/pixmaps</Path>
|
||||
<Path fileType="data">/usr/share/polkit-1</Path>
|
||||
<Path fileType="data">/usr/share/sounds</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>gnome-control-center-devel</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency release="current">gnome-control-center</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="data">/usr/share/pkgconfig</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="1">
|
||||
<Date>2021-05-28</Date>
|
||||
<Version>40.0</Version>
|
||||
<Comment>First release for Pisi Linux</Comment>
|
||||
<Name>Berk Çakar</Name>
|
||||
<Email>berk2238@hotmail.com</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
@@ -0,0 +1,19 @@
|
||||
#!/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 3.
|
||||
# See the file https://www.gnu.org/licenses/gpl-3.0.txt
|
||||
|
||||
from pisi.actionsapi import mesontools
|
||||
from pisi.actionsapi import pisitools
|
||||
|
||||
def setup():
|
||||
mesontools.configure()
|
||||
|
||||
def build():
|
||||
mesontools.build()
|
||||
|
||||
def install():
|
||||
mesontools.install()
|
||||
|
||||
pisitools.dodoc("NEWS", "README*", "COPYING", "ChangeLog", "AUTHORS")
|
||||
@@ -0,0 +1,54 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "https://pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>gnome-video-effects</Name>
|
||||
<Homepage>https://gitlab.gnome.org/GNOME/gnome-video-effects</Homepage>
|
||||
<Packager>
|
||||
<Name>Pisi Linux Admins</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>GPLv2</License>
|
||||
<Summary>Collection of GStreamer effects for GNOME</Summary>
|
||||
<Description>The GNOME Video Effects package contains a collection of GStreamer effects.</Description>
|
||||
<Archive sha1sum="40a729136da028ffea343d57fd7810c0dfb35d28" type="tarxz">https://download.gnome.org/sources/gnome-video-effects/0.5/gnome-video-effects-0.5.0.tar.xz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency>intltool</Dependency>
|
||||
<Dependency>gettext-devel</Dependency>
|
||||
<Dependency>meson</Dependency>
|
||||
</BuildDependencies>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>gnome-video-effects</Name>
|
||||
<Files>
|
||||
<Path fileType="data">/usr/share/gnome-video-effects</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
</Files>
|
||||
<RuntimeDependencies>
|
||||
<Dependency>gst-plugins-good</Dependency>
|
||||
<Dependency>gst-plugins-bad</Dependency>
|
||||
<Dependency>frei0r-plugins</Dependency>
|
||||
</RuntimeDependencies>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>gnome-video-effects-devel</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency release="current">gnome-video-effects</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="data">/usr/share/pkgconfig</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="1">
|
||||
<Date>2021-05-28</Date>
|
||||
<Version>0.5.0</Version>
|
||||
<Comment>First release for Pisi Linux</Comment>
|
||||
<Name>Berk Çakar</Name>
|
||||
<Email>berk2238@hotmail.com</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
@@ -0,0 +1,19 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 2.
|
||||
# See the file http://www.gnu.org/copyleft/gpl.txt.
|
||||
|
||||
from pisi.actionsapi import autotools
|
||||
from pisi.actionsapi import pisitools
|
||||
|
||||
def setup():
|
||||
autotools.configure()
|
||||
|
||||
def build():
|
||||
autotools.make()
|
||||
|
||||
def install():
|
||||
autotools.install()
|
||||
|
||||
pisitools.dodoc("README*", "NEWS", "ChangeLog")
|
||||
@@ -0,0 +1,68 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "https://pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>gsound</Name>
|
||||
<Homepage>https://gitlab.gnome.org/GNOME/gsound</Homepage>
|
||||
<Packager>
|
||||
<Name>Pisi Linux Admins</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>LGPLv2.1</License>
|
||||
<IsA>library</IsA>
|
||||
<Summary>GSound is a small library for playing system sounds.</Summary>
|
||||
<Description>GSound is a small library for playing system sounds. It's designed to be used via GObject Introspection, and is a thin wrapper around the libcanberra C library.</Description>
|
||||
<Archive sha1sum="bd3f96673f58c339b00df2c6e3d76781d405b2b9">https://download.gnome.org/sources/gsound/1.0/gsound-1.0.2.tar.xz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency>gobject-introspection-devel</Dependency>
|
||||
<Dependency>vala-devel</Dependency>
|
||||
<Dependency>glib2-devel</Dependency>
|
||||
<Dependency>intltool</Dependency>
|
||||
<Dependency>libcanberra-devel</Dependency>
|
||||
</BuildDependencies>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>gsound</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency>glib2</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library">/usr/lib/girepository-1.0</Path>
|
||||
<Path fileType="library">/usr/lib/lib*.*</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
<Path fileType="executable">/usr/bin</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>gsound-devel</Name>
|
||||
<Summary>Development files for gsound</Summary>
|
||||
<RuntimeDependencies>
|
||||
<Dependency release="current">gsound</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="header">/usr/include</Path>
|
||||
<Path fileType="data">/usr/lib/pkgconfig</Path>
|
||||
<Path fileType="data">/usr/share/gir-1.0</Path>
|
||||
<Path fileType="library">/usr/share/vala</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>gsound-docs</Name>
|
||||
<Files>
|
||||
<Path fileType="doc">/usr/share/gtk-doc</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="1">
|
||||
<Date>2021-05-28</Date>
|
||||
<Version>1.0.2</Version>
|
||||
<Comment>First release for Pisi Linux</Comment>
|
||||
<Name>Berk Çakar</Name>
|
||||
<Email>berk2238@hotmail.com</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
@@ -0,0 +1,21 @@
|
||||
#!/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 3.
|
||||
# See the file http://www.gnu.org/licenses/gpl.txt
|
||||
|
||||
from pisi.actionsapi import mesontools
|
||||
from pisi.actionsapi import pisitools
|
||||
|
||||
def setup():
|
||||
mesontools.configure("-Dgtk_doc=false \
|
||||
-Dman=false")
|
||||
|
||||
def build():
|
||||
mesontools.build()
|
||||
|
||||
|
||||
def install():
|
||||
mesontools.install()
|
||||
|
||||
pisitools.dodoc("README", "COPYING", "AUTHORS", "NEWS", "ChangeLog")
|
||||
@@ -0,0 +1,17 @@
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 7ef4075f..36638472 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -149,11 +149,7 @@ gnome_video_effects_dep = dependency(
|
||||
# Recommend some runtime GStreamer plugins.
|
||||
gst_inspect = find_program('gst-inspect-1.0', required: false)
|
||||
if gst_inspect.found()
|
||||
- foreach plugin: ['camerabin', 'vp8enc', 'webmmux']
|
||||
- if run_command(gst_inspect, plugin).returncode() != 0
|
||||
- warning(plugin + ' was not found. It needs to be installed before Cheese is run')
|
||||
- endif
|
||||
- endforeach
|
||||
+ warning('unable to check for runtime GStreamer plugin dependencies due to Gentoo\'s sandbox: camerabin, vp8enc, webmmux')
|
||||
else
|
||||
warning('unable to check for runtime GStreamer plugin dependencies')
|
||||
endif
|
||||
@@ -0,0 +1,177 @@
|
||||
From 7cf6268e54620bbbe5e6e61800c50fb0cb4bea57 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Corentin=20No=C3=ABl?= <corentin@elementary.io>
|
||||
Date: Fri, 16 Oct 2020 19:56:26 +0200
|
||||
Subject: [PATCH] Change GLib.PtrArray into GLib.GenericArray
|
||||
|
||||
This is the vala-friendly way of handling GPtrArray.
|
||||
Fix several memory leaks on the go and unnecessary reference increase.
|
||||
---
|
||||
src/cheese-preferences.vala | 26 ++++++++++++--------------
|
||||
src/cheese-window.vala | 22 +++++++++++-----------
|
||||
src/vapi/cheese-common.vapi | 2 +-
|
||||
3 files changed, 24 insertions(+), 26 deletions(-)
|
||||
|
||||
diff --git a/src/cheese-preferences.vala b/src/cheese-preferences.vala
|
||||
index f56af7e0..80a92431 100644
|
||||
--- a/src/cheese-preferences.vala
|
||||
+++ b/src/cheese-preferences.vala
|
||||
@@ -100,7 +100,7 @@ public PreferencesDialog (Cheese.Camera camera)
|
||||
*/
|
||||
private void initialize_camera_devices ()
|
||||
{
|
||||
- unowned GLib.PtrArray devices = camera.get_camera_devices ();
|
||||
+ GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
|
||||
camera_model = new Gtk.ListStore (2, typeof (string), typeof (Cheese.CameraDevice));
|
||||
|
||||
source_combo.model = camera_model;
|
||||
@@ -357,13 +357,13 @@ public PreferencesDialog (Cheese.Camera camera)
|
||||
*/
|
||||
private void on_camera_update_num_camera_devices ()
|
||||
{
|
||||
- unowned GLib.PtrArray devices = camera.get_camera_devices ();
|
||||
- Cheese.CameraDevice dev;
|
||||
+ GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
|
||||
+ unowned Cheese.CameraDevice dev;
|
||||
|
||||
// Add (if) / Remove (else) a camera device.
|
||||
- if (devices.len > camera_model.iter_n_children (null))
|
||||
+ if (devices.length > camera_model.iter_n_children (null))
|
||||
{
|
||||
- dev = (Cheese.CameraDevice) devices.index (devices.len - 1);
|
||||
+ dev = devices.get (devices.length - 1);
|
||||
add_camera_device(dev);
|
||||
}
|
||||
else
|
||||
@@ -382,12 +382,11 @@ public PreferencesDialog (Cheese.Camera camera)
|
||||
bool device_removed = false;
|
||||
devices.foreach ((device) =>
|
||||
{
|
||||
- var old_device = (Cheese.CameraDevice) device;
|
||||
Cheese.CameraDevice new_device;
|
||||
camera_model.get (iter, 1, out new_device, -1);
|
||||
|
||||
// Found the device that was removed.
|
||||
- if (old_device != new_device)
|
||||
+ if (device != new_device)
|
||||
{
|
||||
remove_camera_device (iter, new_device, active_device);
|
||||
device_removed = true;
|
||||
@@ -418,17 +417,16 @@ public PreferencesDialog (Cheese.Camera camera)
|
||||
*
|
||||
* @param device a Cheese.CameraDevice to add to the device combo box model
|
||||
*/
|
||||
- private void add_camera_device (void *device)
|
||||
+ private void add_camera_device (Cheese.CameraDevice device)
|
||||
{
|
||||
TreeIter iter;
|
||||
- Cheese.CameraDevice dev = (Cheese.CameraDevice) device;
|
||||
|
||||
camera_model.append (out iter);
|
||||
camera_model.set (iter,
|
||||
- 0, dev.get_name (),
|
||||
- 1, dev);
|
||||
+ 0, device.get_name (),
|
||||
+ 1, device);
|
||||
|
||||
- if (camera.get_selected_device () == dev)
|
||||
+ if (camera.get_selected_device () == device)
|
||||
source_combo.set_active_iter (iter);
|
||||
|
||||
if (camera_model.iter_n_children (null) > 1)
|
||||
@@ -445,12 +443,12 @@ public PreferencesDialog (Cheese.Camera camera)
|
||||
private void remove_camera_device (TreeIter iter, Cheese.CameraDevice device_node,
|
||||
Cheese.CameraDevice active_device_node)
|
||||
{
|
||||
- unowned GLib.PtrArray devices = camera.get_camera_devices ();
|
||||
+ GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
|
||||
|
||||
// Check if the camera that we want to remove, is the active one
|
||||
if (device_node == active_device_node)
|
||||
{
|
||||
- if (devices.len > 0)
|
||||
+ if (devices.length > 0)
|
||||
set_new_available_camera_device (iter);
|
||||
else
|
||||
this.hide ();
|
||||
diff --git a/src/cheese-window.vala b/src/cheese-window.vala
|
||||
index ff069808..cc119b68 100644
|
||||
--- a/src/cheese-window.vala
|
||||
+++ b/src/cheese-window.vala
|
||||
@@ -1216,9 +1216,9 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
|
||||
*/
|
||||
public void on_switch_camera_clicked ()
|
||||
{
|
||||
- Cheese.CameraDevice selected;
|
||||
- Cheese.CameraDevice next = null;
|
||||
- GLib.PtrArray cameras;
|
||||
+ unowned Cheese.CameraDevice selected;
|
||||
+ unowned Cheese.CameraDevice next = null;
|
||||
+ GLib.GenericArray<unowned Cheese.CameraDevice> cameras;
|
||||
uint i;
|
||||
|
||||
if (camera == null)
|
||||
@@ -1235,9 +1235,9 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
|
||||
|
||||
cameras = camera.get_camera_devices ();
|
||||
|
||||
- for (i = 0; i < cameras.len; i++)
|
||||
+ for (i = 0; i < cameras.length; i++)
|
||||
{
|
||||
- next = (Cheese.CameraDevice )cameras.index (i);
|
||||
+ next = cameras.get (i);
|
||||
|
||||
if (next == selected)
|
||||
{
|
||||
@@ -1245,13 +1245,13 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
|
||||
}
|
||||
}
|
||||
|
||||
- if (i + 1 < cameras.len)
|
||||
+ if (i + 1 < cameras.length)
|
||||
{
|
||||
- next = (Cheese.CameraDevice )cameras.index (i + 1);
|
||||
+ next = cameras.get (i + 1);
|
||||
}
|
||||
else
|
||||
{
|
||||
- next = (Cheese.CameraDevice )cameras.index (0);
|
||||
+ next = cameras.get (0);
|
||||
}
|
||||
|
||||
if (next == selected)
|
||||
@@ -1269,8 +1269,8 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
|
||||
*/
|
||||
public void set_switch_camera_button_state ()
|
||||
{
|
||||
- Cheese.CameraDevice selected;
|
||||
- GLib.PtrArray cameras;
|
||||
+ unowned Cheese.CameraDevice selected;
|
||||
+ GLib.GenericArray<unowned Cheese.CameraDevice> cameras;
|
||||
|
||||
if (camera == null)
|
||||
{
|
||||
@@ -1288,7 +1288,7 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
|
||||
|
||||
cameras = camera.get_camera_devices ();
|
||||
|
||||
- if (cameras.len > 1)
|
||||
+ if (cameras.length > 1)
|
||||
{
|
||||
switch_camera_button.set_visible (true);
|
||||
return;
|
||||
diff --git a/src/vapi/cheese-common.vapi b/src/vapi/cheese-common.vapi
|
||||
index 6517cdfc..e4ae7ad3 100644
|
||||
--- a/src/vapi/cheese-common.vapi
|
||||
+++ b/src/vapi/cheese-common.vapi
|
||||
@@ -35,7 +35,7 @@ namespace Cheese
|
||||
[CCode (has_construct_function = false)]
|
||||
public Camera (Clutter.Actor video_texture, string camera_device_node, int x_resolution, int y_resolution);
|
||||
public bool get_balance_property_range (string property, double min, double max, double def);
|
||||
- public unowned GLib.PtrArray get_camera_devices ();
|
||||
+ public GLib.GenericArray<unowned Cheese.CameraDevice> get_camera_devices ();
|
||||
public unowned Cheese.VideoFormat get_current_video_format ();
|
||||
public int get_num_camera_devices ();
|
||||
public unowned Cheese.CameraDevice get_selected_device ();
|
||||
--
|
||||
GitLab
|
||||
|
||||
@@ -0,0 +1,87 @@
|
||||
From e7046d564a6f76c1af8f5640ac9c569e07284ec0 Mon Sep 17 00:00:00 2001
|
||||
From: Bastien Nocera <hadess@hadess.net>
|
||||
Date: Fri, 18 Sep 2020 12:06:45 +0200
|
||||
Subject: [PATCH] Fix infinite loop if thumbnailer is not available
|
||||
|
||||
The code in cheese_thumb_view_idle_append_item() in
|
||||
src/thumbview/cheese-thumb-view.c didn't pop the list of items to
|
||||
thumbnail if thumbnailing failed.
|
||||
|
||||
#0 0x00007f4a60e55314 in open64 () at /lib64/libc.so.6
|
||||
#1 0x00007f4a60de6386 in _IO_file_open () at /lib64/libc.so.6
|
||||
#2 0x00007f4a60de655a in __GI__IO_file_fopen () at /lib64/libc.so.6
|
||||
#3 0x00007f4a60dd9aad in __fopen_internal () at /lib64/libc.so.6
|
||||
#4 0x00007f4a6157a43f in gdk_pixbuf_new_from_file () at /lib64/libgdk_pixbuf-2.0.so.0
|
||||
#5 0x00007f4a61e84b3a in gnome_desktop_thumbnail_factory_lookup () at /lib64/libgnome-desktop-3.so.19
|
||||
#6 0x000055cef476046f in cheese_thumb_view_idle_append_item ()
|
||||
#7 0x00007f4a6124f47b in g_idle_dispatch () at /lib64/libglib-2.0.so.0
|
||||
#8 0x00007f4a612537af in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
|
||||
#9 0x00007f4a61253b38 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
|
||||
#10 0x00007f4a61253c03 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
|
||||
#11 0x00007f4a6146a7ca in g_application_run () at /lib64/libgio-2.0.so.0
|
||||
#12 0x000055cef4758547 in _vala_main ()
|
||||
#13 0x00007f4a60d8a042 in __libc_start_main () at /lib64/libc.so.6
|
||||
#14 0x000055cef47554be in _start ()
|
||||
|
||||
#0 0x00007f4a60ec562d in __strlen_avx2 () at /lib64/libc.so.6
|
||||
#1 0x00007f4a61275de8 in g_str_has_suffix () at /lib64/libglib-2.0.so.0
|
||||
#2 0x00007f4a618c0072 in icon_name_is_symbolic () at /lib64/libgtk-3.so.0
|
||||
#3 0x00007f4a618c00b1 in theme_dir_get_icon_suffix () at /lib64/libgtk-3.so.0
|
||||
#4 0x00007f4a618c32ed in theme_lookup_icon () at /lib64/libgtk-3.so.0
|
||||
#5 0x00007f4a618c3adf in real_choose_icon () at /lib64/libgtk-3.so.0
|
||||
#6 0x00007f4a618c4762 in gtk_icon_theme_lookup_icon_for_scale () at /lib64/libgtk-3.so.0
|
||||
#7 0x00007f4a618c5105 in gtk_icon_theme_load_icon_for_scale () at /lib64/libgtk-3.so.0
|
||||
#8 0x000055cef47605c9 in cheese_thumb_view_idle_append_item ()
|
||||
#9 0x00007f4a6124f47b in g_idle_dispatch () at /lib64/libglib-2.0.so.0
|
||||
#10 0x00007f4a612537af in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
|
||||
#11 0x00007f4a61253b38 in g_main_context_iterate.constprop () at /lib64/libglib-2.0.so.0
|
||||
#12 0x00007f4a61253c03 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
|
||||
#13 0x00007f4a6146a7d8 in g_application_run () at /lib64/libgio-2.0.so.0
|
||||
#14 0x000055cef4758547 in _vala_main ()
|
||||
#15 0x00007f4a60d8a042 in __libc_start_main () at /lib64/libc.so.6
|
||||
#16 0x000055cef47554be in _start ()
|
||||
|
||||
Closes: #81
|
||||
---
|
||||
src/thumbview/cheese-thumb-view.c | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/thumbview/cheese-thumb-view.c b/src/thumbview/cheese-thumb-view.c
|
||||
index 1d2d88f5..232fd4b6 100644
|
||||
--- a/src/thumbview/cheese-thumb-view.c
|
||||
+++ b/src/thumbview/cheese-thumb-view.c
|
||||
@@ -92,7 +92,7 @@ GtkWidget * cheese_thumb_view_new (void);
|
||||
static gboolean
|
||||
cheese_thumb_view_idle_append_item (gpointer data)
|
||||
{
|
||||
- CheeseThumbViewIdleData *item = g_queue_peek_head (data);
|
||||
+ CheeseThumbViewIdleData *item = g_queue_pop_head (data);
|
||||
CheeseThumbView *thumb_view;
|
||||
CheeseThumbViewPrivate *priv;
|
||||
|
||||
@@ -119,6 +119,7 @@ cheese_thumb_view_idle_append_item (gpointer data)
|
||||
if (!info)
|
||||
{
|
||||
g_warning ("Invalid filename\n");
|
||||
+ g_slice_free (CheeseThumbViewIdleData, item);
|
||||
return TRUE;
|
||||
}
|
||||
g_file_info_get_modification_time (info, &mtime);
|
||||
@@ -167,6 +168,7 @@ cheese_thumb_view_idle_append_item (gpointer data)
|
||||
if (error)
|
||||
{
|
||||
g_warning ("%s", error->message);
|
||||
+ g_slice_free (CheeseThumbViewIdleData, item);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
@@ -183,7 +185,6 @@ cheese_thumb_view_idle_append_item (gpointer data)
|
||||
g_object_unref (pixbuf);
|
||||
g_object_unref (file);
|
||||
g_slice_free (CheeseThumbViewIdleData, item);
|
||||
- g_queue_pop_head (data);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
--
|
||||
GitLab
|
||||
@@ -0,0 +1,110 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "https://pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>cheese</Name>
|
||||
<Homepage>https://gitlab.gnome.org/GNOME/cheese</Homepage>
|
||||
<Packager>
|
||||
<Name>Pisi Linux Admins</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>GPLv2</License>
|
||||
<Summary>Take photos and videos with your webcam, with fun graphical effects</Summary>
|
||||
<Description>Take photos and videos with your webcam, with fun graphical effects</Description>
|
||||
<Archive sha1sum="fef15ebb2dbe80d255de80cdbdfcd0bcd31f4850" type="tarxz">https://download.gnome.org/sources/cheese/3.38/cheese-3.38.0.tar.xz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency>appstream-glib-devel</Dependency>
|
||||
<Dependency>gobject-introspection-devel</Dependency>
|
||||
<Dependency>meson</Dependency>
|
||||
<Dependency>vala-devel</Dependency>
|
||||
<Dependency>yelp-tools</Dependency>
|
||||
<Dependency>clutter-devel</Dependency>
|
||||
<Dependency>clutter-gst-devel</Dependency>
|
||||
<Dependency>clutter-gtk-devel</Dependency>
|
||||
<Dependency>gnome-desktop-devel</Dependency>
|
||||
<Dependency>libseccomp-devel</Dependency>
|
||||
<Dependency>libseccomp</Dependency>
|
||||
<Dependency>libcanberra-devel</Dependency>
|
||||
<Dependency>libcanberra-gtk3-devel</Dependency>
|
||||
<Dependency>gettext-devel</Dependency>
|
||||
<Dependency>gdk-pixbuf-devel</Dependency>
|
||||
<Dependency>glib2-devel</Dependency>
|
||||
<Dependency>itstool</Dependency>
|
||||
<Dependency>libXtst-devel</Dependency>
|
||||
<Dependency>librsvg-devel</Dependency>
|
||||
<Dependency>libgee-devel</Dependency>
|
||||
<Dependency>gnome-video-effects</Dependency>
|
||||
<Dependency>gst-plugins-bad-devel</Dependency>
|
||||
</BuildDependencies>
|
||||
<Patches>
|
||||
<Patch>cheese-3.38.0-buildfix.patch</Patch>
|
||||
<Patch>infinite-loop-thumbnailer.patch</Patch>
|
||||
<Patch>fix-gnome40-build.patch</Patch>
|
||||
</Patches>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>cheese</Name>
|
||||
<Files>
|
||||
<Path fileType="executable">/usr/bin</Path>
|
||||
<Path fileType="library">/usr/lib/girepository-1.0</Path>
|
||||
<Path fileType="library">/usr/lib/lib*.so*</Path>
|
||||
<Path fileType="data">/usr/share/applications</Path>
|
||||
<Path fileType="data">/usr/share/dbus-1</Path>
|
||||
<Path fileType="data">/usr/share/help</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
<Path fileType="localedata">/usr/share/locale</Path>
|
||||
<Path fileType="man">/usr/share/man</Path>
|
||||
<Path fileType="data">/usr/share/glib-2.0</Path>
|
||||
<Path fileType="data">/usr/share/icons</Path>
|
||||
<Path fileType="info">/usr/share/metainfo</Path>
|
||||
</Files>
|
||||
<RuntimeDependencies>
|
||||
<Dependency>cogl</Dependency>
|
||||
<Dependency>gtk3</Dependency>
|
||||
<Dependency>cairo</Dependency>
|
||||
<Dependency>glib2</Dependency>
|
||||
<Dependency>libX11</Dependency>
|
||||
<Dependency>clutter</Dependency>
|
||||
<Dependency>gstreamer</Dependency>
|
||||
<Dependency>gdk-pixbuf</Dependency>
|
||||
<Dependency>clutter-gst</Dependency>
|
||||
<Dependency>clutter-gtk</Dependency>
|
||||
<Dependency>gnome-desktop</Dependency>
|
||||
<Dependency>gst-plugins-base</Dependency>
|
||||
<Dependency>libcanberra-gtk3</Dependency>
|
||||
</RuntimeDependencies>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>cheese-devel</Name>
|
||||
<Files>
|
||||
<Path fileType="header">/usr/include</Path>
|
||||
<Path fileType="data">/usr/lib/pkgconfig</Path>
|
||||
<Path fileType="data">/usr/share/gir-1.0</Path>
|
||||
</Files>
|
||||
<RuntimeDependencies>
|
||||
<Dependency release="current">cheese</Dependency>
|
||||
<Dependency>gtk3-devel</Dependency>
|
||||
<Dependency>glib2-devel</Dependency>
|
||||
<Dependency>libX11-devel</Dependency>
|
||||
<Dependency>clutter-devel</Dependency>
|
||||
<Dependency>gstreamer-devel</Dependency>
|
||||
<Dependency>gdk-pixbuf-devel</Dependency>
|
||||
<Dependency>clutter-gst-devel</Dependency>
|
||||
<Dependency>clutter-gtk-devel</Dependency>
|
||||
<Dependency>gst-plugins-base-devel</Dependency>
|
||||
<Dependency>gst-plugins-bad-devel</Dependency>
|
||||
</RuntimeDependencies>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="1">
|
||||
<Date>2021-05-28</Date>
|
||||
<Version>3.38.0</Version>
|
||||
<Comment>First release for Pisi Linux</Comment>
|
||||
<Name>Berk Çakar</Name>
|
||||
<Email>berk2238@hotmail.com</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
@@ -0,0 +1,25 @@
|
||||
#!/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 3.
|
||||
# See the file http://www.gnu.org/licenses/gpl.txt
|
||||
|
||||
from pisi.actionsapi import autotools
|
||||
from pisi.actionsapi import pisitools
|
||||
from pisi.actionsapi import shelltools
|
||||
from pisi.actionsapi import get
|
||||
|
||||
def setup():
|
||||
shelltools.system("NOCONFIGURE=1 ./autogen.sh")
|
||||
autotools.configure("--disable-static \
|
||||
--prefix=/usr")
|
||||
|
||||
pisitools.dosed("libtool", " -shared ", " -Wl,-O1,--as-needed -shared ")
|
||||
|
||||
def build():
|
||||
autotools.make()
|
||||
|
||||
def install():
|
||||
autotools.rawInstall("DESTDIR=%s" % get.installDIR())
|
||||
|
||||
pisitools.dodoc("COPYING*", "NEWS")
|
||||
@@ -0,0 +1,61 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "https://pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>gnome-autoar</Name>
|
||||
<Homepage>https://gitlab.gnome.org/GNOME/gnome-autoar</Homepage>
|
||||
<Packager>
|
||||
<Name>Pisi Linux Admins</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>LGPLv2.1</License>
|
||||
<Summary>Archive framework for GNOME</Summary>
|
||||
<Description>gnome-autoar provides functions and widgets for GNOME applications which want to use archives as a method to transfer directories over the Internet.</Description>
|
||||
<Archive sha1sum="312d92faba6ca4f0a74fb37ea8583d0dec7b5e46">https://download.gnome.org/sources/gnome-autoar/0.3/gnome-autoar-0.3.2.tar.xz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency>gtk-doc</Dependency>
|
||||
<Dependency>gtk3-devel</Dependency>
|
||||
<Dependency>libarchive-devel</Dependency>
|
||||
<Dependency>glib2-devel</Dependency>
|
||||
<Dependency>gobject-introspection</Dependency>
|
||||
</BuildDependencies>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>gnome-autoar</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency>gtk3</Dependency>
|
||||
<Dependency>libarchive</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library">/usr/lib/girepository-1.0</Path>
|
||||
<Path fileType="library">/usr/lib/lib*.so*</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
<Path fileType="doc">/usr/share/gtk-doc</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>gnome-autoar-devel</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency release="current">gnome-autoar</Dependency>
|
||||
<Dependency>gtk3-devel</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library">/usr/lib/pkgconfig</Path>
|
||||
<Path fileType="header">/usr/include</Path>
|
||||
<Path fileType="data">/usr/share/gir-1.0</Path>
|
||||
<Path fileType="data">/usr/share/vala</Path>
|
||||
</Files>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="1">
|
||||
<Date>2021-05-28</Date>
|
||||
<Version>0.3.2</Version>
|
||||
<Comment>First release for Pisi Linux</Comment>
|
||||
<Name>Berk Çakar</Name>
|
||||
<Email>berk2238@hotmail.com</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
Reference in New Issue
Block a user