Re: [Merge] lp:~khurshid-alam/unity-control-center/sharing-panel into lp:unity-control-center

2018-10-05 Thread Khurshid Alam
Laney also approved this on 
https://bugs.launchpad.net/ubuntu/+source/unity-control-center/+bug/1741027/comments/9
 (though it was for bionic)

so I ask him ?
-- 
https://code.launchpad.net/~khurshid-alam/unity-control-center/sharing-panel/+merge/341306
Your team Unity Control Center development team is subscribed to branch 
lp:unity-control-center.

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


[Merge] ~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-recent-search-memory-fixes into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic

2018-10-05 Thread Treviño
Marco Trevisan (Treviño) has proposed merging 
~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-recent-search-memory-fixes into 
~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic with 
~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-fix-file-remote-type-search-crash 
as a prerequisite.

Requested reviews:
  Ubuntu Desktop (ubuntu-desktop)
Related bugs:
  Bug #1795028 in nautilus (Ubuntu): "Nautilus crashes during search in 
is_recursive_search (search-engine)"
  https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/1795028

For more details, see:
https://code.launchpad.net/~3v1n0/ubuntu/+source/nautilus/+git/nautilus/+merge/356149
-- 
Your team Ubuntu Desktop is requested to review the proposed merge of 
~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-recent-search-memory-fixes into 
~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic.
diff --git a/debian/changelog b/debian/changelog
index 1d1673f..7adf210 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,9 +1,11 @@
-nautilus (1:3.26.4-0~ubuntu18.04.2) bionic; urgency=medium
+nautilus (1:3.26.4-0~ubuntu18.04.2) UNRELEASED; urgency=medium
 
   * d/p/search-engine-Query-file-system-to-determine-remoteness.patch:
 - Fix remote filesystem check on file during search (LP: #1795028)
+  * d/p/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch:
+- Refreshed to add memory leak and potential crash fixes
 
- -- Marco Trevisan (Treviño)   Thu, 04 Oct 2018 16:15:08 +0200
+ -- Marco Trevisan (Treviño)   Thu, 04 Oct 2018 19:09:47 +0200
 
 nautilus (1:3.26.4-0~ubuntu18.04.1) bionic; urgency=medium
 
diff --git a/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch b/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch
index 20e597c..d2c1db5 100644
--- a/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch
+++ b/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch
@@ -13,13 +13,14 @@ simple engine will be already fast enough, while running this engine could be
 just a waste.
 
 Origin: upstream
-Applied-Upstream: https://gitlab.gnome.org/GNOME/nautilus/commit/69686372fd6e6
+Applied-Upstream: 3.30.0, https://gitlab.gnome.org/GNOME/nautilus/commit/69686372fd6e6
+Forwarded: yes, https://gitlab.gnome.org/GNOME/nautilus/merge_requests/323
 ---
  src/meson.build |   2 +
- src/nautilus-search-engine-recent.c | 427 
+ src/nautilus-search-engine-recent.c | 440 
  src/nautilus-search-engine-recent.h |  36 +++
  src/nautilus-search-engine.c|  11 +
- 4 files changed, 476 insertions(+)
+ 4 files changed, 489 insertions(+)
  create mode 100644 src/nautilus-search-engine-recent.c
  create mode 100644 src/nautilus-search-engine-recent.h
 
@@ -38,10 +39,10 @@ index 73aafe9..213b35f 100644
  'nautilus-search-hit.c',
 diff --git a/src/nautilus-search-engine-recent.c b/src/nautilus-search-engine-recent.c
 new file mode 100644
-index 000..bbd0d82
+index 000..bdd130d
 --- /dev/null
 +++ b/src/nautilus-search-engine-recent.c
-@@ -0,0 +1,427 @@
+@@ -0,0 +1,440 @@
 +/*
 + * Copyright (C) 2018 Canonical Ltd
 + *
@@ -86,6 +87,7 @@ index 000..bbd0d82
 +NautilusQuery *query;
 +GCancellable *cancellable;
 +GtkRecentManager *recent_manager;
++guint add_hits_idle_id;
 +};
 +
 +static void nautilus_search_provider_init (NautilusSearchProviderInterface *iface);
@@ -115,11 +117,13 @@ index 000..bbd0d82
 +{
 +NautilusSearchEngineRecent *self = NAUTILUS_SEARCH_ENGINE_RECENT (object);
 +
-+if (self->cancellable)
++if (self->add_hits_idle_id != 0)
 +{
-+g_cancellable_cancel (self->cancellable);
++g_source_remove (self->add_hits_idle_id);
 +}
 +
++g_cancellable_cancel (self->cancellable);
++
 +g_clear_object (&self->query);
 +g_clear_object (&self->cancellable);
 +
@@ -140,6 +144,8 @@ index 000..bbd0d82
 +NautilusSearchEngineRecent *self = search_hits->recent;
 +NautilusSearchProvider *provider = NAUTILUS_SEARCH_PROVIDER (self);
 +
++self->add_hits_idle_id = 0;
++
 +if (!g_cancellable_is_cancelled (self->cancellable))
 +{
 +nautilus_search_provider_hits_added (provider, search_hits->hits);
@@ -147,18 +153,36 @@ index 000..bbd0d82
 +}
 +
 +g_list_free_full (search_hits->hits, g_object_unref);
-+g_object_unref (self->query);
 +g_clear_object (&self->cancellable);
-+g_object_unref (self);
 +g_free (search_hits);
 +
 +nautilus_search_provider_finished (provider,
 +   NAUTILUS_SEARCH_PROVIDER_STATUS_NORMAL);
 +g_object_notify (G_OBJECT (provider), "running");
 +
++g_object_unref (self);
++
 +return FALSE;
 +}
 +
++static void
++search_add_hits_idle (NautilusSearchEngineRecent *self,
++  GList  *hits)
++{
++SearchHitsData *search_hits;
++
++if (self->

[Merge] ~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-fix-file-remote-type-search-crash into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic

2018-10-05 Thread Treviño
The proposal to merge 
~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-fix-file-remote-type-search-crash 
into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic has been updated.

Status: Needs review => Superseded

For more details, see:
https://code.launchpad.net/~3v1n0/ubuntu/+source/nautilus/+git/nautilus/+merge/355859
-- 
Your team Ubuntu Desktop is requested to review the proposed merge of 
~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-fix-file-remote-type-search-crash 
into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic.

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Merge] lp:~fitojb/ubiquity-slideshow-ubuntu/logo-refresh into lp:ubiquity-slideshow-ubuntu

2018-10-05 Thread Olivier Tilloy
I don't know who the designer is. Anyway, I’ve extracted the 24×24 variants 
from the upstream icons and made them available at 
https://people.canonical.com/~osomon/lo-icons/, would you mind using those?
-- 
https://code.launchpad.net/~fitojb/ubiquity-slideshow-ubuntu/logo-refresh/+merge/353025
Your team Ubuntu Desktop is requested to review the proposed merge of 
lp:~fitojb/ubiquity-slideshow-ubuntu/logo-refresh into 
lp:ubiquity-slideshow-ubuntu.

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


[Merge] ~3v1n0/ubuntu/+source/nautilus:ubuntu/master into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/master

2018-10-05 Thread Treviño
Marco Trevisan (Treviño) has proposed merging 
~3v1n0/ubuntu/+source/nautilus:ubuntu/master into 
~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/master.

Requested reviews:
  Ubuntu Desktop (ubuntu-desktop)

For more details, see:
https://code.launchpad.net/~3v1n0/ubuntu/+source/nautilus/+git/nautilus/+merge/356146
-- 
Your team Ubuntu Desktop is requested to review the proposed merge of 
~3v1n0/ubuntu/+source/nautilus:ubuntu/master into 
~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/master.
diff --git a/debian/changelog b/debian/changelog
index 10b8325..371cb1e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+nautilus (1:3.26.4-0ubuntu6) UNRELEASED; urgency=medium
+
+  * d/p/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch:
+- Refreshed to add memory leak and potential crash fixes
+
+ -- Marco Trevisan (Treviño)   Thu, 04 Oct 2018 18:41:10 +0200
+
 nautilus (1:3.26.4-0ubuntu5) cosmic; urgency=medium
 
   * d/p/search-engine-Query-file-system-to-determine-remoteness.patch:
diff --git a/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch b/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch
index 20e597c..d2c1db5 100644
--- a/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch
+++ b/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch
@@ -13,13 +13,14 @@ simple engine will be already fast enough, while running this engine could be
 just a waste.
 
 Origin: upstream
-Applied-Upstream: https://gitlab.gnome.org/GNOME/nautilus/commit/69686372fd6e6
+Applied-Upstream: 3.30.0, https://gitlab.gnome.org/GNOME/nautilus/commit/69686372fd6e6
+Forwarded: yes, https://gitlab.gnome.org/GNOME/nautilus/merge_requests/323
 ---
  src/meson.build |   2 +
- src/nautilus-search-engine-recent.c | 427 
+ src/nautilus-search-engine-recent.c | 440 
  src/nautilus-search-engine-recent.h |  36 +++
  src/nautilus-search-engine.c|  11 +
- 4 files changed, 476 insertions(+)
+ 4 files changed, 489 insertions(+)
  create mode 100644 src/nautilus-search-engine-recent.c
  create mode 100644 src/nautilus-search-engine-recent.h
 
@@ -38,10 +39,10 @@ index 73aafe9..213b35f 100644
  'nautilus-search-hit.c',
 diff --git a/src/nautilus-search-engine-recent.c b/src/nautilus-search-engine-recent.c
 new file mode 100644
-index 000..bbd0d82
+index 000..bdd130d
 --- /dev/null
 +++ b/src/nautilus-search-engine-recent.c
-@@ -0,0 +1,427 @@
+@@ -0,0 +1,440 @@
 +/*
 + * Copyright (C) 2018 Canonical Ltd
 + *
@@ -86,6 +87,7 @@ index 000..bbd0d82
 +NautilusQuery *query;
 +GCancellable *cancellable;
 +GtkRecentManager *recent_manager;
++guint add_hits_idle_id;
 +};
 +
 +static void nautilus_search_provider_init (NautilusSearchProviderInterface *iface);
@@ -115,11 +117,13 @@ index 000..bbd0d82
 +{
 +NautilusSearchEngineRecent *self = NAUTILUS_SEARCH_ENGINE_RECENT (object);
 +
-+if (self->cancellable)
++if (self->add_hits_idle_id != 0)
 +{
-+g_cancellable_cancel (self->cancellable);
++g_source_remove (self->add_hits_idle_id);
 +}
 +
++g_cancellable_cancel (self->cancellable);
++
 +g_clear_object (&self->query);
 +g_clear_object (&self->cancellable);
 +
@@ -140,6 +144,8 @@ index 000..bbd0d82
 +NautilusSearchEngineRecent *self = search_hits->recent;
 +NautilusSearchProvider *provider = NAUTILUS_SEARCH_PROVIDER (self);
 +
++self->add_hits_idle_id = 0;
++
 +if (!g_cancellable_is_cancelled (self->cancellable))
 +{
 +nautilus_search_provider_hits_added (provider, search_hits->hits);
@@ -147,18 +153,36 @@ index 000..bbd0d82
 +}
 +
 +g_list_free_full (search_hits->hits, g_object_unref);
-+g_object_unref (self->query);
 +g_clear_object (&self->cancellable);
-+g_object_unref (self);
 +g_free (search_hits);
 +
 +nautilus_search_provider_finished (provider,
 +   NAUTILUS_SEARCH_PROVIDER_STATUS_NORMAL);
 +g_object_notify (G_OBJECT (provider), "running");
 +
++g_object_unref (self);
++
 +return FALSE;
 +}
 +
++static void
++search_add_hits_idle (NautilusSearchEngineRecent *self,
++  GList  *hits)
++{
++SearchHitsData *search_hits;
++
++if (self->add_hits_idle_id != 0)
++{
++return;
++}
++
++search_hits = g_new0 (SearchHitsData, 1);
++search_hits->recent = self;
++search_hits->hits = hits;
++
++self->add_hits_idle_id = g_idle_add (search_thread_add_hits_idle, search_hits);
++}
++
 +static gboolean
 +is_file_valid_recursive (NautilusSearchEngineRecent *self,
 + GFile  *file,
@@ -272,8 +296,8 @@ index 000..bbd0d82
 +
 +if (rank <= 0)
 +{
-+name = gtk_recent_info_get_short_name (info);
-+   

[Merge] lp:~khurshid-alam/unity-settings-daemon/sharing-plugin into lp:unity-settings-daemon

2018-10-05 Thread Treviño
The proposal to merge lp:~khurshid-alam/unity-settings-daemon/sharing-plugin 
into lp:unity-settings-daemon has been updated.

Status: Needs review => Approved

For more details, see:
https://code.launchpad.net/~khurshid-alam/unity-settings-daemon/sharing-plugin/+merge/355887
-- 
Your team Unity Settings Daemon Development Team is subscribed to branch 
lp:unity-settings-daemon.

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Merge] lp:~khurshid-alam/unity-control-center/sharing-panel into lp:unity-control-center

2018-10-05 Thread Treviño
I can't global approve this, but it's fine for me.
-- 
https://code.launchpad.net/~khurshid-alam/unity-control-center/sharing-panel/+merge/341306
Your team Unity Control Center development team is subscribed to branch 
lp:unity-control-center.

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Merge] lp:~khurshid-alam/unity-settings-daemon/sharing-plugin into lp:unity-settings-daemon

2018-10-05 Thread Treviño
Review: Approve


-- 
https://code.launchpad.net/~khurshid-alam/unity-settings-daemon/sharing-plugin/+merge/355887
Your team Unity Settings Daemon Development Team is subscribed to branch 
lp:unity-settings-daemon.

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


Re: [Merge] lp:~khurshid-alam/unity-control-center/sharing-panel into lp:unity-control-center

2018-10-05 Thread Treviño
Review: Approve


-- 
https://code.launchpad.net/~khurshid-alam/unity-control-center/sharing-panel/+merge/341306
Your team Unity Control Center development team is subscribed to branch 
lp:unity-control-center.

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


[Merge] ~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-fix-file-remote-type-search-crash into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic

2018-10-05 Thread Treviño
The proposal to merge 
~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-fix-file-remote-type-search-crash 
into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic has been updated.

Description changed to:

Bileto ticket at https://bileto.ubuntu.com/#/ticket/3455

For more details, see:
https://code.launchpad.net/~3v1n0/ubuntu/+source/nautilus/+git/nautilus/+merge/356136
-- 
Your team Ubuntu Desktop is requested to review the proposed merge of 
~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-fix-file-remote-type-search-crash 
into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic.

-- 
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


[Merge] ~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-fix-file-remote-type-search-crash into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic

2018-10-05 Thread Treviño
Marco Trevisan (Treviño) has proposed merging 
~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-fix-file-remote-type-search-crash 
into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic.

Requested reviews:
  Ubuntu Desktop (ubuntu-desktop)
Related bugs:
  Bug #1795028 in nautilus (Ubuntu): "Nautilus crashes during search in 
is_recursive_search (search-engine)"
  https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/1795028

For more details, see:
https://code.launchpad.net/~3v1n0/ubuntu/+source/nautilus/+git/nautilus/+merge/356136
-- 
Your team Ubuntu Desktop is requested to review the proposed merge of 
~3v1n0/ubuntu/+source/nautilus:ubuntu/bionic-fix-file-remote-type-search-crash 
into ~ubuntu-desktop/ubuntu/+source/nautilus:ubuntu/bionic.
diff --git a/debian/changelog b/debian/changelog
index 62b7833..1d1673f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+nautilus (1:3.26.4-0~ubuntu18.04.2) bionic; urgency=medium
+
+  * d/p/search-engine-Query-file-system-to-determine-remoteness.patch:
+- Fix remote filesystem check on file during search (LP: #1795028)
+
+ -- Marco Trevisan (Treviño)   Thu, 04 Oct 2018 16:15:08 +0200
+
 nautilus (1:3.26.4-0~ubuntu18.04.1) bionic; urgency=medium
 
   * New upstream release: 3.26.4 (LP: #1782681, LP: #1765776)
diff --git a/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch b/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch
index f80997f..20e597c 100644
--- a/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch
+++ b/debian/patches/0016-search-engine-add-a-recent-search-engine-listing-Gtk.patch
@@ -512,7 +512,7 @@ index 000..bcd73b9
 +
 +#endif /* __NAUTILUS_SEARCH_ENGINE_RECENT_H__ */
 diff --git a/src/nautilus-search-engine.c b/src/nautilus-search-engine.c
-index 3a0c9d4..793b831 100644
+index 28863f7..a4c6007 100644
 --- a/src/nautilus-search-engine.c
 +++ b/src/nautilus-search-engine.c
 @@ -30,11 +30,13 @@
diff --git a/debian/patches/0017-recent-add-function-to-update-manager-on-file-rename.patch b/debian/patches/0017-recent-add-function-to-update-manager-on-file-rename.patch
index e6185da..ad248da 100644
--- a/debian/patches/0017-recent-add-function-to-update-manager-on-file-rename.patch
+++ b/debian/patches/0017-recent-add-function-to-update-manager-on-file-rename.patch
@@ -49,7 +49,7 @@ index 19316e8..9bb5460 100644
  
  /* Now send out the changed and added signals for existing file objects. */
 diff --git a/src/nautilus-file.c b/src/nautilus-file.c
-index 63413a6..9416214 100644
+index 28b5a13..7886d1f 100644
 --- a/src/nautilus-file.c
 +++ b/src/nautilus-file.c
 @@ -34,6 +34,7 @@
diff --git a/debian/patches/0018-search-engine-add-locate-based-search-engine.patch b/debian/patches/0018-search-engine-add-locate-based-search-engine.patch
index 91a7ec0..158b448 100644
--- a/debian/patches/0018-search-engine-add-locate-based-search-engine.patch
+++ b/debian/patches/0018-search-engine-add-locate-based-search-engine.patch
@@ -678,7 +678,7 @@ index 000..ac5e3fc
 +
 +#endif /* __NAUTILUS_SEARCH_ENGINE_LOCATE_H__ */
 diff --git a/src/nautilus-search-engine.c b/src/nautilus-search-engine.c
-index 793b831..902d483 100644
+index a4c6007..475a432 100644
 --- a/src/nautilus-search-engine.c
 +++ b/src/nautilus-search-engine.c
 @@ -29,6 +29,7 @@
diff --git a/debian/patches/query-add-recursive-flags-and-use-it-in-search-engines.patch b/debian/patches/query-add-recursive-flags-and-use-it-in-search-engines.patch
index fddae3e..3c89693 100644
--- a/debian/patches/query-add-recursive-flags-and-use-it-in-search-engines.patch
+++ b/debian/patches/query-add-recursive-flags-and-use-it-in-search-engines.patch
@@ -198,7 +198,7 @@ index b567611..b165d63 100644
 +
  #endif /* NAUTILUS_FILE_UTILITIES_H */
 diff --git a/src/nautilus-file.c b/src/nautilus-file.c
-index 3f6a69f..63413a6 100644
+index 22ea199..e30d791 100644
 --- a/src/nautilus-file.c
 +++ b/src/nautilus-file.c
 @@ -4975,6 +4975,29 @@ nautilus_file_get_filesystem_type (NautilusFile *file)
diff --git a/debian/patches/search-engine-Query-file-system-to-determine-remoteness.patch b/debian/patches/search-engine-Query-file-system-to-determine-remoteness.patch
new file mode 100644
index 000..1b7f874
--- /dev/null
+++ b/debian/patches/search-engine-Query-file-system-to-determine-remoteness.patch
@@ -0,0 +1,127 @@
+From: Ernestas Kulik 
+Date: Fri, 14 Sep 2018 12:52:11 +0200
+Subject: search-engine: Query file system to determine remoteness
+
+Querying the file cache in is_recursive_search() does not guarantee that
+the file system field will be populated with a value, and somehow
+results in data races, in turn resulting in random crashes/file list
+corruption.
+
+Hopefully fixes https://gitlab.gnome.org/GNOME/nautilus/issues/640,
+closes https://gitlab.gnome.org/GNOME/nautilus/issues/632 and resolves
+https://gitlab.gnome.org/GNOME/nautilus/issues/602
+
+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/