diff --git a/nixos/modules/services/desktop-managers/pantheon.nix b/nixos/modules/services/desktop-managers/pantheon.nix index 5b24304b4993..9eca235f8740 100644 --- a/nixos/modules/services/desktop-managers/pantheon.nix +++ b/nixos/modules/services/desktop-managers/pantheon.nix @@ -322,6 +322,7 @@ in elementary-files elementary-mail elementary-maps + elementary-monitor elementary-music elementary-photos elementary-screenshot diff --git a/pkgs/applications/system/monitor/default.nix b/pkgs/applications/system/monitor/default.nix deleted file mode 100644 index 5115a6e12d72..000000000000 --- a/pkgs/applications/system/monitor/default.nix +++ /dev/null @@ -1,116 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, - gitUpdater, - meson, - ninja, - vala, - pkg-config, - pantheon, - python3, - curl, - flatpak, - gettext, - glib, - gtk3, - json-glib, - libwnck, - libgee, - libgtop, - libhandy, - sassc, - udisks2, - wrapGAppsHook3, - libX11, - libXext, - libXNVCtrl, -}: - -stdenv.mkDerivation rec { - pname = "monitor"; - version = "0.17.2"; - - src = fetchFromGitHub { - owner = "stsdc"; - repo = "monitor"; - rev = version; - hash = "sha256-Kk3L4hfHon0B6Y6vU7en1UFpg221+EiVCxMX9mvu7pU="; - fetchSubmodules = true; - }; - - nativeBuildInputs = [ - gettext - meson - ninja - vala - pkg-config - python3 - wrapGAppsHook3 - ]; - - buildInputs = [ - curl - flatpak - glib - gtk3 - json-glib - pantheon.granite - pantheon.wingpanel - libgee - libgtop - libhandy - libwnck - sassc - udisks2 - libX11 - libXext - libXNVCtrl - ]; - - # Force link against Xext, otherwise build fails with: - # ld: /nix/store/...-libXNVCtrl-495.46/lib/libXNVCtrl.a(NVCtrl.o): undefined reference to symbol 'XextAddDisplay' - # ld: /nix/store/...-libXext-1.3.4/lib/libXext.so.6: error adding symbols: DSO missing from command line - # https://github.com/stsdc/monitor/issues/292 - NIX_LDFLAGS = "-lXext"; - - mesonFlags = [ "-Dindicator-wingpanel=enabled" ]; - - postPatch = '' - chmod +x meson/post_install.py - patchShebangs meson/post_install.py - - # Alternatively, using pkg-config here should just work. - substituteInPlace meson.build --replace \ - "meson.get_compiler('c').find_library('libcurl', dirs: vapidir)" \ - "meson.get_compiler('c').find_library('libcurl', dirs: '${curl.out}/lib')" - - # Fix build with Vala 0.56.18 - # https://github.com/elementary/monitor/issues/444 - for i in $(find src/Resources -type f -name "*.vala"); do - substituteInPlace $i --replace-warn "[Compact]" "" - done - ''; - - passthru = { - updateScript = gitUpdater { - # Upstream frequently tags these to fix CI, which are mostly irrelevant to us. - ignoredVersions = "-"; - }; - }; - - meta = with lib; { - description = "Manage processes and monitor system resources"; - longDescription = '' - Manage processes and monitor system resources. - To use the wingpanel indicator in this application, see the Pantheon - section in the NixOS manual. - ''; - homepage = "https://github.com/stsdc/monitor"; - maintainers = with maintainers; [ xiorcale ]; - teams = [ teams.pantheon ]; - platforms = platforms.linux; - license = licenses.gpl3Plus; - mainProgram = "com.github.stsdc.monitor"; - }; -} diff --git a/pkgs/by-name/re/reco/package.nix b/pkgs/by-name/re/reco/package.nix index 27742087dc43..0dfff8cefcbb 100644 --- a/pkgs/by-name/re/reco/package.nix +++ b/pkgs/by-name/re/reco/package.nix @@ -2,13 +2,14 @@ lib, stdenv, fetchFromGitHub, + blueprint-compiler, meson, ninja, pkg-config, vala, wrapGAppsHook4, + libadwaita, libgee, - live-chart, ryokucha, pantheon, gst_all_1, @@ -16,16 +17,17 @@ stdenv.mkDerivation (finalAttrs: { pname = "reco"; - version = "5.0.2"; + version = "5.1.1"; src = fetchFromGitHub { owner = "ryonakano"; repo = "reco"; rev = finalAttrs.version; - hash = "sha256-uZAcZJLQH0MTI4NSJnZvzYPBFVXGBqAhsjVLAVP/ZwI="; + hash = "sha256-vSVWGXC0QJ20t2MRImBwG8ZTrTLE5Z98GO6No80mCUU="; }; nativeBuildInputs = [ + blueprint-compiler meson ninja pkg-config @@ -34,10 +36,10 @@ stdenv.mkDerivation (finalAttrs: { ]; buildInputs = [ + libadwaita libgee - live-chart + pantheon.live-chart ryokucha - pantheon.granite7 gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good diff --git a/pkgs/desktops/pantheon/apps/elementary-monitor/default.nix b/pkgs/desktops/pantheon/apps/elementary-monitor/default.nix new file mode 100644 index 000000000000..0bcd1ea66166 --- /dev/null +++ b/pkgs/desktops/pantheon/apps/elementary-monitor/default.nix @@ -0,0 +1,93 @@ +{ + stdenv, + lib, + fetchFromGitHub, + desktop-file-utils, + gettext, + meson, + ninja, + pkg-config, + sassc, + vala, + wrapGAppsHook4, + flatpak, + glib, + granite7, + gtk4, + json-glib, + libadwaita, + libgee, + libgtop, + libX11, + linuxPackages, + live-chart, + pciutils, + udisks2, + wingpanel, + nix-update-script, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "elementary-monitor"; + version = "8.0.0"; + + src = fetchFromGitHub { + owner = "elementary"; + repo = "monitor"; + tag = finalAttrs.version; + hash = "sha256-pFyDC22YzThHPElBt/JjFP1A8hoCw9QoIjS2Re8Se9w="; + }; + + strictDeps = true; + + nativeBuildInputs = [ + desktop-file-utils + gettext + meson + ninja + pkg-config + sassc + vala + wrapGAppsHook4 + ]; + + buildInputs = [ + flatpak + glib + granite7 + gtk4 + json-glib + libadwaita + libgee + libgtop + libX11 + linuxPackages.nvidia_x11.settings.libXNVCtrl + live-chart + pciutils + udisks2 + wingpanel + ]; + + mesonFlags = [ "-Dindicator-wingpanel=enabled" ]; + + postPatch = '' + # Fix build with Vala 0.56.18 + # https://github.com/elementary/monitor/issues/444 + for i in $(find src/Resources -type f -name "*.vala"); do + substituteInPlace $i --replace-warn "[Compact]" "" + done + ''; + + passthru = { + updateScript = nix-update-script { }; + }; + + meta = { + description = "Manage processes and monitor system resources"; + homepage = "https://github.com/elementary/monitor"; + teams = [ lib.teams.pantheon ]; + platforms = lib.platforms.linux; + license = lib.licenses.gpl3Plus; + mainProgram = "io.elementary.monitor"; + }; +}) diff --git a/pkgs/desktops/pantheon/default.nix b/pkgs/desktops/pantheon/default.nix index 3d15f9b9f72b..9b2b97dc3fc4 100644 --- a/pkgs/desktops/pantheon/default.nix +++ b/pkgs/desktops/pantheon/default.nix @@ -29,6 +29,7 @@ lib.makeScope pkgs.newScope ( ]; wingpanelIndicators = [ + elementary-monitor wingpanel-applications-menu wingpanel-indicator-bluetooth wingpanel-indicator-datetime @@ -76,6 +77,8 @@ lib.makeScope pkgs.newScope ( elementary-maps = callPackage ./apps/elementary-maps { }; + elementary-monitor = callPackage ./apps/elementary-monitor { }; + elementary-music = callPackage ./apps/elementary-music { }; elementary-photos = callPackage ./apps/elementary-photos { }; @@ -122,6 +125,8 @@ lib.makeScope pkgs.newScope ( granite7 = callPackage ./libraries/granite/7 { }; + live-chart = callPackage ./libraries/live-chart { }; + pantheon-wayland = callPackage ./libraries/pantheon-wayland { }; #### SERVICES diff --git a/pkgs/desktops/pantheon/desktop/wingpanel/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel/default.nix index c614ca8930b4..2288d8908232 100644 --- a/pkgs/desktops/pantheon/desktop/wingpanel/default.nix +++ b/pkgs/desktops/pantheon/desktop/wingpanel/default.nix @@ -10,6 +10,7 @@ ninja, vala, gala, + glib, gtk3, libgee, granite, @@ -54,13 +55,17 @@ stdenv.mkDerivation rec { elementary-icon-theme gala granite - gtk3 json-glib libgee mutter wayland ]; + propagatedBuildInputs = [ + glib + gtk3 + ]; + preFixup = '' gappsWrapperArgs+=( # this GTK theme is required diff --git a/pkgs/by-name/li/live-chart/package.nix b/pkgs/desktops/pantheon/libraries/live-chart/default.nix similarity index 58% rename from pkgs/by-name/li/live-chart/package.nix rename to pkgs/desktops/pantheon/libraries/live-chart/default.nix index 942fe3545562..ba3a390f71f9 100644 --- a/pkgs/by-name/li/live-chart/package.nix +++ b/pkgs/desktops/pantheon/libraries/live-chart/default.nix @@ -1,24 +1,26 @@ { - lib, stdenv, + lib, fetchFromGitHub, meson, ninja, pkg-config, vala, + xvfb-run, gtk4, libgee, + nix-update-script, }: stdenv.mkDerivation (finalAttrs: { pname = "live-chart"; - version = "1.10.0"; + version = "2.0.0"; src = fetchFromGitHub { - owner = "lcallarec"; + owner = "elementary"; repo = "live-chart"; - rev = finalAttrs.version; - hash = "sha256-SOZJ9sVrmsZybs5BVXWmqBJ/P7SZI/X8TGWHXGvXAU8="; + tag = finalAttrs.version; + hash = "sha256-X/wdmKw381Fkjcvj7k2AmA/nXWKFFNx5KDNxeWEiqzs="; }; outputs = [ @@ -26,11 +28,14 @@ stdenv.mkDerivation (finalAttrs: { "dev" ]; + strictDeps = true; + nativeBuildInputs = [ meson ninja pkg-config vala + xvfb-run ]; buildInputs = [ @@ -38,13 +43,15 @@ stdenv.mkDerivation (finalAttrs: { libgee ]; - strictDeps = true; + passthru = { + updateScript = nix-update-script { }; + }; meta = { description = "Real-time charting library for Vala and GTK4 based on Cairo"; - homepage = "https://github.com/lcallarec/live-chart"; + homepage = "https://github.com/elementary/live-chart"; license = lib.licenses.mit; - maintainers = with lib.maintainers; [ aleksana ]; - platforms = lib.platforms.unix; + teams = [ lib.teams.pantheon ]; + platforms = lib.platforms.linux; }; }) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 44148783bdcd..48b601634ca9 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1443,6 +1443,7 @@ mapAliases { litecoind = throw "litecoind has been removed as nobody was maintaining it and the packaged version had known vulnerabilities"; # Added 2024-11-24 Literate = literate; # Added 2024-06-12 littlenavmap = throw "littlenavmap has been removed as it depends on KDE Gear 5, which has reached EOL"; # Added 2025-08-20 + live-chart = throw "live-chart has been removed as it is no longer used in Nixpkgs. livechart-2 (elementary's fork) is available as pantheon.live-chart"; # Added 2025-10-10 llama = walk; # Added 2023-01-23 lincity_ng = lib.warnOnInstantiate "lincity_ng has been renamed to lincity-ng" lincity-ng; # Added 2025-10-09 @@ -1768,6 +1769,7 @@ mapAliases { mod_spkac = throw "'mod_spkac' has been renamed to/replaced by 'apacheHttpdPackages.mod_spkac'"; # Converted to throw 2024-10-17 mod_pkcs12 = throw "'mod_pkcs12' has been renamed to/replaced by 'apacheHttpdPackages.mod_pkcs12'"; # Converted to throw 2024-10-17 mod_timestamp = throw "'mod_timestamp' has been renamed to/replaced by 'apacheHttpdPackages.mod_timestamp'"; # Converted to throw 2024-10-17 + monitor = pantheon.elementary-monitor; # Added 2025-10-10 mono-addins = throw "mono-addins has been removed due to its dependency on the removed mono4. Consider alternative frameworks or migrate to newer .NET technologies."; # Added 2025-08-25 mono4 = mono6; # Added 2025-08-25 mono5 = mono6; # Added 2025-08-25 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 83f4de8f01d8..c5d04515ace3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11884,10 +11884,6 @@ with pkgs; ocamlPackages = ocaml-ng.ocamlPackages_4_14_unsafe_string; }; - monitor = callPackage ../applications/system/monitor { - libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl; - }; - moolticute = libsForQt5.callPackage ../applications/misc/moolticute { }; mopidyPackages =