From bd49bccdf7b808a9f4b459cb066709b98d4e1ab1 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Thu, 28 Oct 2021 09:33:42 +0800 Subject: [PATCH 01/10] pantheon.elementary-mail: 6.2.0 -> 6.3.0 --- pkgs/desktops/pantheon/apps/elementary-mail/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-mail/default.nix b/pkgs/desktops/pantheon/apps/elementary-mail/default.nix index 743ed40d6dc9..d289431bf008 100644 --- a/pkgs/desktops/pantheon/apps/elementary-mail/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-mail/default.nix @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { pname = "elementary-mail"; - version = "6.2.0"; + version = "6.3.0"; repoName = "mail"; @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { owner = "elementary"; repo = repoName; rev = version; - sha256 = "1ab620zhwqqjq1bs1alvpcw9jmdxjij0ywczvwbg8gqvcsc80lkn"; + sha256 = "sha256-lIVAMTtRrzJI5Qcd6y24ZmtzFWeTSbcKiEhG8hLC+PM="; }; passthru = { From d4e5b14e90e1b6b5912807ac32e9b1000228470d Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Thu, 28 Oct 2021 09:41:44 +0800 Subject: [PATCH 02/10] pantheon.switchboard-plug-display: 2.3.1 -> 2.3.2 --- .../pantheon/apps/switchboard-plugs/display/default.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/display/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/display/default.nix index 0fbb1eb81e7c..8e6cbf080631 100644 --- a/pkgs/desktops/pantheon/apps/switchboard-plugs/display/default.nix +++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/display/default.nix @@ -7,6 +7,7 @@ , pkg-config , vala , libgee +, libhandy , granite , gtk3 , switchboard @@ -14,13 +15,13 @@ stdenv.mkDerivation rec { pname = "switchboard-plug-display"; - version = "2.3.1"; + version = "2.3.2"; src = fetchFromGitHub { owner = "elementary"; repo = pname; rev = version; - sha256 = "1dqd34v124y71nnk0l617a53x652m0sb7b58465imr6ppyhx4vsv"; + sha256 = "sha256-3sYZCazGnTjIi3Iry5673TMI13sD0GuY+46AK+NJH70="; }; passthru = { @@ -40,6 +41,7 @@ stdenv.mkDerivation rec { granite gtk3 libgee + libhandy switchboard ]; From 72fe1b16627e439b36777282ef5cad7522b6613f Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Thu, 28 Oct 2021 09:44:00 +0800 Subject: [PATCH 03/10] pantheon.elementary-screenshot: 6.0.0 -> 6.0.1 --- pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix b/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix index 4eb574d69f26..3dc2173e5ac6 100644 --- a/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-screenshot/default.nix @@ -19,7 +19,7 @@ stdenv.mkDerivation rec { pname = "elementary-screenshot"; - version = "6.0.0"; + version = "6.0.1"; repoName = "screenshot"; @@ -27,7 +27,7 @@ stdenv.mkDerivation rec { owner = "elementary"; repo = repoName; rev = version; - sha256 = "1fvsl9zdkv7bgx3jpy7pr9lflm4ckr3swdby379mdxn2x6kxji0x"; + sha256 = "sha256-MDmk+0IUCe6PSV5QOjjDRedv7X3lcBJ04jn9cE9DP3M="; }; passthru = { From 7dd57213b388b61e3416eb75d2eae5bbc7d3cc22 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Thu, 28 Oct 2021 09:54:39 +0800 Subject: [PATCH 04/10] pantheon.gala: use smooth scroll events to handle mouse wheel in multitasking view --- .../pantheon/desktop/gala/default.nix | 29 ++++++++++++------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/pkgs/desktops/pantheon/desktop/gala/default.nix b/pkgs/desktops/pantheon/desktop/gala/default.nix index db757b1aa4ae..d0aa48850429 100644 --- a/pkgs/desktops/pantheon/desktop/gala/default.nix +++ b/pkgs/desktops/pantheon/desktop/gala/default.nix @@ -1,5 +1,7 @@ -{ lib, stdenv +{ lib +, stdenv , fetchFromGitHub +, fetchpatch , nix-update-script , pantheon , pkg-config @@ -38,11 +40,16 @@ stdenv.mkDerivation rec { sha256 = "1phnhj731kvk8ykmm33ypcxk8fkfny9k6kdapl582qh4d47wcy6f"; }; - passthru = { - updateScript = nix-update-script { - attrPath = "pantheon.${pname}"; - }; - }; + patches = [ + ./plugins-dir.patch + # Multitasking view: Don't use smooth scroll events to handle mouse wheel + # Avoid breaking the multitasking view scroll once xf86-input-libinput 1.2.0 lands + # https://github.com/elementary/gala/pull/1266 + (fetchpatch { + url = "https://github.com/elementary/gala/commit/d2dcfdefdf97c1b49654179a7acd01ebfe017308.patch"; + sha256 = "sha256-2lKrCz3fSjrfKfysuUHzeUjhmMm84K47n882CLpfAyg="; + }) + ]; nativeBuildInputs = [ desktop-file-utils @@ -73,15 +80,17 @@ stdenv.mkDerivation rec { mutter ]; - patches = [ - ./plugins-dir.patch - ]; - postPatch = '' chmod +x build-aux/meson/post_install.py patchShebangs build-aux/meson/post_install.py ''; + passthru = { + updateScript = nix-update-script { + attrPath = "pantheon.${pname}"; + }; + }; + meta = with lib; { description = "A window & compositing manager based on mutter and designed by elementary for use with Pantheon"; homepage = "https://github.com/elementary/gala"; From 1c64941016edfa2d28a637cb2333cd84ef908007 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Thu, 28 Oct 2021 14:29:18 +0800 Subject: [PATCH 05/10] pantheon.elementary-default-settings: fix gtk-theme-name and gtk-font-name --- .../elementary-default-settings/default.nix | 23 ++++++++++++++----- 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix b/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix index 1751636da008..f302fd994025 100644 --- a/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix +++ b/pkgs/desktops/pantheon/desktop/elementary-default-settings/default.nix @@ -1,5 +1,7 @@ -{ lib, stdenv +{ lib +, stdenv , fetchFromGitHub +, fetchpatch , nix-update-script , pantheon , meson @@ -26,11 +28,14 @@ stdenv.mkDerivation rec { sha256 = "0gqnrm968j4v699yhhiyw5fqjy4zbvvrjci2v1jrlycn09c2yrwf"; }; - passthru = { - updateScript = nix-update-script { - attrPath = "pantheon.${pname}"; - }; - }; + patches = [ + # Update gtk-theme-name and gtk-font-name for Pantheon 6 + # https://github.com/elementary/default-settings/pull/252 + (fetchpatch { + url = "https://github.com/elementary/default-settings/commit/be24c151492bb9115c75bd1a7abc88714240294a.patch"; + sha256 = "sha256-EglFiN4CLbL8osfNGLvjD220Al35uBXuRNC9Ud3QYBI="; + }) + ]; nativeBuildInputs = [ accountsservice @@ -80,6 +85,12 @@ stdenv.mkDerivation rec { rm -rf $out/share/applications ''; + passthru = { + updateScript = nix-update-script { + attrPath = "pantheon.${pname}"; + }; + }; + meta = with lib; { description = "Default settings and configuration files for elementary"; homepage = "https://github.com/elementary/default-settings"; From ea8d53ed168e84f7ea6589323fa8300d8bf385db Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Thu, 28 Oct 2021 14:30:35 +0800 Subject: [PATCH 06/10] nixos/pantheon: use Inter as default sans-serif font --- nixos/modules/services/x11/desktop-managers/pantheon.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/x11/desktop-managers/pantheon.nix b/nixos/modules/services/x11/desktop-managers/pantheon.nix index 8155a1844e14..578097f3367c 100644 --- a/nixos/modules/services/x11/desktop-managers/pantheon.nix +++ b/nixos/modules/services/x11/desktop-managers/pantheon.nix @@ -268,7 +268,7 @@ in fonts.fontconfig.defaultFonts = { monospace = [ "Roboto Mono" ]; - sansSerif = [ "Open Sans" ]; + sansSerif = [ "Inter" ]; }; }) From 829e92098e49997f56c484e0d9560419fce416cc Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Thu, 28 Oct 2021 23:01:23 +0800 Subject: [PATCH 07/10] pantheon.appcenter: drop downstream patch --- .../pantheon/apps/appcenter/default.nix | 9 - .../apps/appcenter/drop-homepage-banner.patch | 234 ------------------ .../apps/appcenter/flatpak-only.patch | 162 ------------ 3 files changed, 405 deletions(-) delete mode 100644 pkgs/desktops/pantheon/apps/appcenter/drop-homepage-banner.patch delete mode 100644 pkgs/desktops/pantheon/apps/appcenter/flatpak-only.patch diff --git a/pkgs/desktops/pantheon/apps/appcenter/default.nix b/pkgs/desktops/pantheon/apps/appcenter/default.nix index c8526c489889..b7a59907b483 100644 --- a/pkgs/desktops/pantheon/apps/appcenter/default.nix +++ b/pkgs/desktops/pantheon/apps/appcenter/default.nix @@ -39,15 +39,6 @@ stdenv.mkDerivation rec { sha256 = "sha256-d7DGyAC8itBxTfuabDPN16W4S4d42s5UPp8AusZfy5k="; }; - patches = [ - # Try to remove other backends to make flatpak backend work. - # https://github.com/NixOS/nixpkgs/issues/70214 - ./flatpak-only.patch - # The homepage banner does not show up on first run, - # has issues with app icon and mouse scrolling. - ./drop-homepage-banner.patch - ]; - passthru = { updateScript = nix-update-script { attrPath = "pantheon.${pname}"; diff --git a/pkgs/desktops/pantheon/apps/appcenter/drop-homepage-banner.patch b/pkgs/desktops/pantheon/apps/appcenter/drop-homepage-banner.patch deleted file mode 100644 index 4841a7b3ee63..000000000000 --- a/pkgs/desktops/pantheon/apps/appcenter/drop-homepage-banner.patch +++ /dev/null @@ -1,234 +0,0 @@ -From c1916699cd388cc8d9968127e43ba955471623bf Mon Sep 17 00:00:00 2001 -From: Bobby Rong -Date: Wed, 27 Oct 2021 09:33:15 +0800 -Subject: [PATCH 2/2] Drop homepage banner - ---- - src/Views/Homepage.vala | 181 +--------------------------------------- - 1 file changed, 1 insertion(+), 180 deletions(-) - -diff --git a/src/Views/Homepage.vala b/src/Views/Homepage.vala -index 52cb36cc..80a1d221 100644 ---- a/src/Views/Homepage.vala -+++ b/src/Views/Homepage.vala -@@ -31,67 +31,12 @@ public class AppCenter.Homepage : AbstractView { - public bool viewing_package { get; private set; default = false; } - - public AppStream.Category currently_viewed_category; -- private Hdy.Carousel banner_carousel; -- private Gtk.Revealer banner_revealer; -- private Gtk.FlowBox recently_updated_carousel; -- private Gtk.Revealer recently_updated_revealer; -- -- private uint banner_timeout_id; - - construct { -- banner_carousel = new Hdy.Carousel () { -- allow_long_swipes = true -- }; -- -- var banner_event_box = new Gtk.EventBox (); -- banner_event_box.events |= Gdk.EventMask.ENTER_NOTIFY_MASK; -- banner_event_box.events |= Gdk.EventMask.LEAVE_NOTIFY_MASK; -- banner_event_box.add (banner_carousel); -- -- var banner_dots = new Hdy.CarouselIndicatorDots () { -- carousel = banner_carousel -- }; -- -- var banner_grid = new Gtk.Grid () { -- orientation = Gtk.Orientation.VERTICAL -- }; -- banner_grid.add (banner_event_box); -- banner_grid.add (banner_dots); -- -- banner_revealer = new Gtk.Revealer (); -- banner_revealer.add (banner_grid); -- -- var recently_updated_label = new Granite.HeaderLabel (_("Recently Updated")) { -- margin_start = 12 -- }; -- -- recently_updated_carousel = new Gtk.FlowBox () { -- activate_on_single_click = true, -- column_spacing = 12, -- row_spacing = 12, -- homogeneous = true, -- max_children_per_line = 5, -- min_children_per_line = 3 -- }; -- -- var recently_updated_grid = new Gtk.Grid () { -- margin_end = 12, -- margin_start = 12 -- }; -- recently_updated_grid.attach (recently_updated_label, 0, 0); -- recently_updated_grid.attach (recently_updated_carousel, 0, 1); -- -- recently_updated_revealer = new Gtk.Revealer (); -- recently_updated_revealer.add (recently_updated_grid ); -- -- var categories_label = new Granite.HeaderLabel (_("Categories")) { -- margin_start = 24, -- margin_top = 24 -- }; -- - category_flow = new Widgets.CategoryFlowBox () { - margin_start = 12, - margin_end =12, -+ margin_top = 12, - valign = Gtk.Align.START - }; - -@@ -99,9 +44,6 @@ public class AppCenter.Homepage : AbstractView { - column_spacing = 24, - orientation = Gtk.Orientation.VERTICAL - }; -- grid.add (banner_revealer); -- grid.add (recently_updated_revealer); -- grid.add (categories_label); - grid.add (category_flow); - - scrolled_window = new Gtk.ScrolledWindow (null, null) { -@@ -111,19 +53,6 @@ public class AppCenter.Homepage : AbstractView { - - add (scrolled_window); - -- var local_package = App.local_package; -- if (local_package != null) { -- var banner = new Widgets.Banner (local_package); -- -- banner_carousel.prepend (banner); -- -- banner.clicked.connect (() => { -- show_package (local_package); -- }); -- } -- -- load_banners_and_carousels.begin (); -- - category_flow.child_activated.connect ((child) => { - var item = child as Widgets.CategoryItem; - if (item != null) { -@@ -159,94 +88,8 @@ public class AppCenter.Homepage : AbstractView { - } - } - } -- -- return GLib.Source.REMOVE; - }); - }); -- -- banner_event_box.enter_notify_event.connect (() => { -- banner_timeout_stop (); -- }); -- -- banner_event_box.leave_notify_event.connect (() => { -- banner_timeout_start (); -- }); -- -- recently_updated_carousel.child_activated.connect ((child) => { -- var package_row_grid = (AppCenter.Widgets.ListPackageRowGrid) child.get_child (); -- -- show_package (package_row_grid.package); -- }); -- } -- -- private async void load_banners_and_carousels () { -- unowned var fp_client = AppCenterCore.FlatpakBackend.get_default (); -- var packages_by_release_date = fp_client.get_featured_packages_by_release_date (); -- var packages_in_banner = new Gee.LinkedList (); -- -- int package_count = 0; -- foreach (var package in packages_by_release_date) { -- if (package_count >= MAX_PACKAGES_IN_BANNER) { -- break; -- } -- -- var installed = false; -- foreach (var origin_package in package.origin_packages) { -- try { -- if (yield origin_package.backend.is_package_installed (origin_package)) { -- installed = true; -- break; -- } -- } catch (Error e) { -- continue; -- } -- } -- -- if (!installed) { -- packages_in_banner.add (package); -- package_count++; -- } -- } -- -- foreach (var package in packages_in_banner) { -- var banner = new Widgets.Banner (package); -- banner.clicked.connect (() => { -- show_package (package); -- }); -- -- banner_carousel.add (banner); -- } -- -- banner_carousel.show_all (); -- banner_revealer.reveal_child = true; -- banner_timeout_start (); -- -- foreach (var package in packages_by_release_date) { -- if (recently_updated_carousel.get_children ().length () >= MAX_PACKAGES_IN_CAROUSEL) { -- break; -- } -- -- var installed = false; -- foreach (var origin_package in package.origin_packages) { -- try { -- if (yield origin_package.backend.is_package_installed (origin_package)) { -- installed = true; -- break; -- } -- } catch (Error e) { -- continue; -- } -- } -- -- if (!installed && !(package in packages_in_banner)) { -- var package_row = new AppCenter.Widgets.ListPackageRowGrid (package); -- recently_updated_carousel.add (package_row); -- } -- } -- recently_updated_carousel.show_all (); -- recently_updated_revealer.reveal_child = recently_updated_carousel.get_children ().length () > 0; -- -- page_loaded (); - } - - public override void show_package ( -@@ -307,26 +150,4 @@ public class AppCenter.Homepage : AbstractView { - var apps = client.get_applications_for_category (category); - app_list_view.add_packages (apps); - } -- -- private void banner_timeout_start () { -- banner_timeout_id = Timeout.add (MILLISECONDS_BETWEEN_BANNER_ITEMS, () => { -- var new_index = (uint) banner_carousel.position + 1; -- var max_index = banner_carousel.n_pages - 1; // 0-based index -- -- if (banner_carousel.position >= max_index) { -- new_index = 0; -- } -- -- banner_carousel.switch_child (new_index, Granite.TRANSITION_DURATION_OPEN); -- -- return Source.CONTINUE; -- }); -- } -- -- private void banner_timeout_stop () { -- if (banner_timeout_id != 0) { -- Source.remove (banner_timeout_id); -- banner_timeout_id = 0; -- } -- } - } diff --git a/pkgs/desktops/pantheon/apps/appcenter/flatpak-only.patch b/pkgs/desktops/pantheon/apps/appcenter/flatpak-only.patch deleted file mode 100644 index aa8cde89616a..000000000000 --- a/pkgs/desktops/pantheon/apps/appcenter/flatpak-only.patch +++ /dev/null @@ -1,162 +0,0 @@ -From 5d3f20b49a89b55e39339a0f90ae7f846356b0e1 Mon Sep 17 00:00:00 2001 -From: Bobby Rong -Date: Wed, 22 Sep 2021 11:54:24 +0800 -Subject: [PATCH 1/2] Drop PackageKitBackend and UbuntuDriversBackend - ---- - src/Application.vala | 14 --------- - src/Core/BackendAggregator.vala | 2 -- - src/Core/UpdateManager.vala | 56 --------------------------------- - src/MainWindow.vala | 17 ---------- - 4 files changed, 89 deletions(-) - -diff --git a/src/Application.vala b/src/Application.vala -index 65fae5aa..9d42b14f 100644 ---- a/src/Application.vala -+++ b/src/Application.vala -@@ -167,10 +167,6 @@ public class AppCenter.App : Gtk.Application { - - var client = AppCenterCore.Client.get_default (); - -- if (fake_update_packages != null) { -- AppCenterCore.PackageKitBackend.get_default ().fake_packages = fake_update_packages; -- } -- - if (silent) { - NetworkMonitor.get_default ().network_changed.connect ((available) => { - schedule_cache_update (!available); -@@ -183,16 +179,6 @@ public class AppCenter.App : Gtk.Application { - return; - } - -- if (local_path != null) { -- var file = File.new_for_commandline_arg (local_path); -- -- try { -- local_package = AppCenterCore.PackageKitBackend.get_default ().add_local_component_file (file); -- } catch (Error e) { -- warning ("Failed to load local AppStream XML file: %s", e.message); -- } -- } -- - if (main_window == null) { - main_window = new MainWindow (this); - -diff --git a/src/Core/BackendAggregator.vala b/src/Core/BackendAggregator.vala -index 2f8bdedf..b705ca87 100644 ---- a/src/Core/BackendAggregator.vala -+++ b/src/Core/BackendAggregator.vala -@@ -26,8 +26,6 @@ public class AppCenterCore.BackendAggregator : Backend, Object { - - construct { - backends = new Gee.ArrayList (); -- backends.add (PackageKitBackend.get_default ()); -- backends.add (UbuntuDriversBackend.get_default ()); - backends.add (FlatpakBackend.get_default ()); - - unowned Gtk.Application app = (Gtk.Application) GLib.Application.get_default (); -diff --git a/src/Core/UpdateManager.vala b/src/Core/UpdateManager.vala -index 29fa397a..ce42dd57 100644 ---- a/src/Core/UpdateManager.vala -+++ b/src/Core/UpdateManager.vala -@@ -53,42 +53,9 @@ public class AppCenterCore.UpdateManager : Object { - installed_package.update_state (); - } - -- Pk.Results pk_updates; -- unowned PackageKitBackend client = PackageKitBackend.get_default (); -- try { -- pk_updates = yield client.get_updates (cancellable); -- } catch (Error e) { -- warning ("Unable to get updates from PackageKit backend: %s", e.message); -- return 0; -- } -- - uint os_count = 0; - string os_desc = ""; - -- var package_array = pk_updates.get_package_array (); -- debug ("PackageKit backend reports %d updates", package_array.length); -- -- package_array.foreach ((pk_package) => { -- var pkg_name = pk_package.get_name (); -- var appcenter_package = client.lookup_package_by_id (pkg_name); -- if (appcenter_package != null) { -- debug ("Added %s to app updates", pkg_name); -- apps_with_updates.add (appcenter_package); -- appcenter_package.latest_version = pk_package.get_version (); -- } else { -- debug ("Added %s to OS updates", pkg_name); -- os_count++; -- unowned string pkg_summary = pk_package.get_summary (); -- unowned string pkg_version = pk_package.get_version (); -- os_desc += Markup.printf_escaped ( -- "
  • %s\n\t%s\n\t%s
  • \n", -- pkg_name, -- pkg_summary, -- _("Version: %s").printf (pkg_version) -- ); -- } -- }); -- - os_updates.component.set_pkgnames ({}); - os_updates.change_information.clear_update_info (); - -@@ -160,29 +127,6 @@ public class AppCenterCore.UpdateManager : Object { - count += 1; - } - -- pk_updates.get_details_array ().foreach ((pk_detail) => { -- var pk_package = new Pk.Package (); -- try { -- pk_package.set_id (pk_detail.get_package_id ()); -- var pkg_name = pk_package.get_name (); -- var appcenter_package = client.lookup_package_by_id (pkg_name); -- if (appcenter_package != null) { -- appcenter_package.change_information.updatable_packages.@set (client, pk_package.get_id ()); -- appcenter_package.change_information.size += pk_detail.size; -- appcenter_package.update_state (); -- } else { -- var pkgnames = os_updates.component.pkgnames; -- pkgnames += pkg_name; -- os_updates.component.pkgnames = pkgnames; -- -- os_updates.change_information.updatable_packages.@set (client, pk_package.get_id ()); -- os_updates.change_information.size += pk_detail.size; -- } -- } catch (Error e) { -- critical (e.message); -- } -- }); -- - os_updates.update_state (); - return count; - } -diff --git a/src/MainWindow.vala b/src/MainWindow.vala -index a32ce47b..b9f8594a 100644 ---- a/src/MainWindow.vala -+++ b/src/MainWindow.vala -@@ -292,23 +292,6 @@ public class AppCenter.MainWindow : Hdy.ApplicationWindow { - } - - public override bool delete_event (Gdk.EventAny event) { -- unowned AppCenterCore.PackageKitBackend client = AppCenterCore.PackageKitBackend.get_default (); -- if (client.working) { -- if (task_finished_connection != 0U) { -- client.disconnect (task_finished_connection); -- } -- -- hide (); -- task_finished_connection = client.notify["working"].connect (() => { -- if (!visible && !client.working) { -- destroy (); -- } -- }); -- -- AppCenterCore.Client.get_default ().cancel_updates (false); //Timeouts keep running -- return true; -- } -- - return false; - } - From 758d85fed36cb9b4f9d96e37bf6f3ff012614df1 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Thu, 28 Oct 2021 23:05:16 +0800 Subject: [PATCH 08/10] pantheon.elementary-mail: drop downstream patch --- .../pantheon/apps/elementary-mail/default.nix | 7 --- .../elementary-mail/revert-fix-warning.patch | 55 ------------------- 2 files changed, 62 deletions(-) delete mode 100644 pkgs/desktops/pantheon/apps/elementary-mail/revert-fix-warning.patch diff --git a/pkgs/desktops/pantheon/apps/elementary-mail/default.nix b/pkgs/desktops/pantheon/apps/elementary-mail/default.nix index d289431bf008..5562eb3e77da 100644 --- a/pkgs/desktops/pantheon/apps/elementary-mail/default.nix +++ b/pkgs/desktops/pantheon/apps/elementary-mail/default.nix @@ -1,6 +1,5 @@ { lib, stdenv , fetchFromGitHub -, fetchpatch , nix-update-script , pantheon , pkg-config @@ -43,12 +42,6 @@ stdenv.mkDerivation rec { }; }; - patches = [ - # The app stuck when loading gravatar, temporarily reverts part - # of https://github.com/elementary/mail/pull/600 to fix this - ./revert-fix-warning.patch - ]; - nativeBuildInputs = [ appstream desktop-file-utils diff --git a/pkgs/desktops/pantheon/apps/elementary-mail/revert-fix-warning.patch b/pkgs/desktops/pantheon/apps/elementary-mail/revert-fix-warning.patch deleted file mode 100644 index 85534aaf4c60..000000000000 --- a/pkgs/desktops/pantheon/apps/elementary-mail/revert-fix-warning.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 9e61e9493e78b83b9599886561ee596c096030ed Mon Sep 17 00:00:00 2001 -From: Bobby Rong -Date: Thu, 29 Jul 2021 13:57:21 +0800 -Subject: [PATCH] Partly revert "Fix Warnings in Vala Code (#600)" - -This partly reverts commit 9477c24201d3c9c3c7bcc650e0290daa0ee1ab21. ---- - src/MessageList/MessageListItem.vala | 27 ++++++++++++++++++++++++++- - 1 file changed, 26 insertions(+), 1 deletion(-) - -diff --git a/src/MessageList/MessageListItem.vala b/src/MessageList/MessageListItem.vala -index 96b61027..a7ef8f9e 100644 ---- a/src/MessageList/MessageListItem.vala -+++ b/src/MessageList/MessageListItem.vala -@@ -290,7 +290,7 @@ public class Mail.MessageListItem : Gtk.ListBoxRow { - expanded = false; - show_all (); - -- avatar.set_loadable_icon (new GravatarIcon (parsed_address, get_style_context ().get_scale ())); -+ download_gravatar.begin (parsed_address, avatar.size); - - /* Override default handler to stop event propagation. Otherwise clicking the menu will - expand or collapse the MessageListItem. */ -@@ -348,6 +348,31 @@ public class Mail.MessageListItem : Gtk.ListBoxRow { - }); - } - -+ private async void download_gravatar (string address, int size) { -+ if (avatars[address] == null) { -+ var uri = "https://secure.gravatar.com/avatar/%s?d=404&s=%d".printf ( -+ Checksum.compute_for_string (ChecksumType.MD5, address.strip ().down ()), -+ size * get_style_context ().get_scale () -+ ); -+ -+ var server_file = File.new_for_uri (uri); -+ var path = Path.build_filename (Environment.get_tmp_dir (), server_file.get_basename ()); -+ var local_file = File.new_for_path (path); -+ -+ try { -+ yield server_file.copy_async (local_file, FileCopyFlags.OVERWRITE, Priority.DEFAULT, null); -+ avatars[address] = new Gdk.Pixbuf.from_file_at_scale (path, size, size, true); -+ } catch (Error e) { -+ debug ("Unable to fetch gravatar: %s", e.message); -+ return; -+ } -+ } -+ -+ avatar.set_image_load_func (() => { -+ return avatars[address]; -+ }); -+ } -+ - private void add_inline_composer (ComposerWidget.Type composer_type) { - var message_list_box = (MessageListBox) get_parent (); - message_list_box.add_inline_composer.begin (composer_type, this); From d49d9a24b7b5b0ddfe349c355e79aa992c108a74 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Thu, 28 Oct 2021 23:14:23 +0800 Subject: [PATCH 09/10] nixos/pantheon: mention latest appcenter changes in manual --- nixos/modules/services/x11/desktop-managers/pantheon.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/services/x11/desktop-managers/pantheon.xml b/nixos/modules/services/x11/desktop-managers/pantheon.xml index fe0a1c496223..70cd7410c1e0 100644 --- a/nixos/modules/services/x11/desktop-managers/pantheon.xml +++ b/nixos/modules/services/x11/desktop-managers/pantheon.xml @@ -105,7 +105,7 @@ switchboard-with-plugs.override { - AppCenter has been available since 20.03, but it is of little use. This is because there is no functioning PackageKit backend for Nix 2.0. Starting from 21.11, the Flatpak backend should work so you can install some Flatpak applications using it. See this issue. + AppCenter has been available since 20.03, but it is of little use. This is because there is no functioning PackageKit backend for Nix 2.0. The Flatpak backend will not work before flag for Flatpak-only is provided. See this issue. To use AppCenter on NixOS, add pantheon.appcenter to , enable Flatpak support and optionally add the appcenter Flatpak remote: From 8a7f053f3c35a9da701fdf2d066e5d67a5c6c289 Mon Sep 17 00:00:00 2001 From: Bobby Rong Date: Thu, 28 Oct 2021 23:52:56 +0800 Subject: [PATCH 10/10] pantheon.switchboard-plug-about: fix wallpaper path --- .../apps/switchboard-plugs/about/default.nix | 9 +++-- .../about/fix-background-path.patch | 13 +++++++ .../about/remove-logo-background.patch | 36 ------------------- 3 files changed, 19 insertions(+), 39 deletions(-) create mode 100644 pkgs/desktops/pantheon/apps/switchboard-plugs/about/fix-background-path.patch delete mode 100644 pkgs/desktops/pantheon/apps/switchboard-plugs/about/remove-logo-background.patch diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix index c1144dd4ecd6..f196ba970bd6 100644 --- a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix +++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/default.nix @@ -15,6 +15,7 @@ , switchboard , fwupd , appstream +, nixos-artwork }: stdenv.mkDerivation rec { @@ -53,9 +54,11 @@ stdenv.mkDerivation rec { ]; patches = [ - # The NixOS logo is not centered in the circular background and path - # to the background is hardcoded, we will drop the background. - ./remove-logo-background.patch + # Use NixOS's default wallpaper + (substituteAll { + src = ./fix-background-path.patch; + default_wallpaper = "${nixos-artwork.wallpapers.simple-dark-gray.gnomeFilePath}"; + }) ]; meta = with lib; { diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/fix-background-path.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/fix-background-path.patch new file mode 100644 index 000000000000..6fea88691331 --- /dev/null +++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/fix-background-path.patch @@ -0,0 +1,13 @@ +diff --git a/src/Views/OperatingSystemView.vala b/src/Views/OperatingSystemView.vala +index fdb92e7e..4161538e 100644 +--- a/src/Views/OperatingSystemView.vala ++++ b/src/Views/OperatingSystemView.vala +@@ -47,7 +47,7 @@ public class About.OperatingSystemView : Gtk.Grid { + }; + logo.set_image_load_func ((size) => { + try { +- return new Gdk.Pixbuf.from_file_at_scale ("/usr/share/backgrounds/elementaryos-default", -1, size, true); ++ return new Gdk.Pixbuf.from_file_at_scale ("@default_wallpaper@", -1, size, true); + } catch (Error e) { + critical (e.message); + } diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/remove-logo-background.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/about/remove-logo-background.patch deleted file mode 100644 index bc7805a22c47..000000000000 --- a/pkgs/desktops/pantheon/apps/switchboard-plugs/about/remove-logo-background.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff --git a/src/Views/OperatingSystemView.vala b/src/Views/OperatingSystemView.vala -index fdb92e7..87bb3a4 100644 ---- a/src/Views/OperatingSystemView.vala -+++ b/src/Views/OperatingSystemView.vala -@@ -39,21 +39,6 @@ public class About.OperatingSystemView : Gtk.Grid { - logo_icon_name = "distributor-logo"; - } - -- var logo = new Hdy.Avatar (128, "", false) { -- // In case the wallpaper can't be loaded, we don't want an icon or text -- icon_name = "invalid-icon-name", -- // We need this for the shadow to not get clipped by Gtk.Overlay -- margin = 6 -- }; -- logo.set_image_load_func ((size) => { -- try { -- return new Gdk.Pixbuf.from_file_at_scale ("/usr/share/backgrounds/elementaryos-default", -1, size, true); -- } catch (Error e) { -- critical (e.message); -- } -- }); -- logo.get_style_context ().add_provider (style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); -- - var icon = new Gtk.Image () { - icon_name = logo_icon_name + "-symbolic", - // 128 minus 3px padding on each side -@@ -65,8 +50,7 @@ public class About.OperatingSystemView : Gtk.Grid { - icon_style_context.add_provider (style_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION); - - var logo_overlay = new Gtk.Overlay (); -- logo_overlay.add (logo); -- logo_overlay.add_overlay (icon); -+ logo_overlay.add (icon); - - // Intentionally not using GLib.OsInfoKey.PRETTY_NAME here because we - // want more granular control over text formatting