diff --git a/sysutils/gsmartcontrol/Makefile b/sysutils/gsmartcontrol/Makefile index c0cc5fa2dcb0..237f2fbf4dec 100644 --- a/sysutils/gsmartcontrol/Makefile +++ b/sysutils/gsmartcontrol/Makefile @@ -1,48 +1,31 @@ PORTNAME= gsmartcontrol -PORTVERSION= 1.1.4 -PORTREVISION= 3 +DISTVERSIONPREFIX= v +DISTVERSION= 2.0.2 CATEGORIES= sysutils -MASTER_SITES= SF/${PORTNAME}/${PORTVERSION} -MAINTAINER= ports@FreeBSD.org +MAINTAINER= mce@FreeBSD.org COMMENT= Graphical user interface for smartmontools -WWW= https://gsmartcontrol.sourceforge.io +WWW= https://gsmartcontrol.shaduri.dev/ -LICENSE= BSD3CLAUSE BSL GPLv2 GPLv3 PD ZLIB +LICENSE= GPLv3 LGPL3+ LICENSE_COMB= multi -LICENSE_FILE_BSD3CLAUSE=${WRKSRC}/LICENSE_bsd-ac.txt -LICENSE_FILE_BSL= ${WRKSRC}/LICENSE_boost_1_0.txt -LICENSE_FILE_GPLv2= ${WRKSRC}/LICENSE_gpl2.txt -LICENSE_FILE_GPLv3= ${WRKSRC}/LICENSE_gpl3.txt -LICENSE_FILE_PD= ${WRKSRC}/LICENSE_unlicense.txt -LICENSE_FILE_ZLIB= ${WRKSRC}/LICENSE_zlib.txt +LICENSE_FILE_GPLv3= ${WRKSRC}/LICENSE.txt +LICENSE_FILE_LGPL3+ = ${WRKSRC}/LICENSE.LGPL3.txt -LIB_DEPENDS= libpcre.so:devel/pcre +BUILD_DEPENDS= nlohmann-json>0:devel/nlohmann-json \ + tl-expected>0:devel/tl-expected RUN_DEPENDS= bash:shells/bash \ pkexec:sysutils/polkit \ smartctl:sysutils/smartmontools \ xterm:x11/xterm -USES= compiler:c++11-lang gnome libtool pkgconfig tar:bzip2 -USE_CXXSTD= c++11 -USE_GNOME= atkmm cairo glibmm gtk30 gtkmm30 libsigc++20 pangomm +USES= cmake compiler:c++20-lang gnome pkgconfig shebangfix +USE_GITHUB= yes +GH_ACCOUNT= ashaduri +USE_GNOME= gtkmm30 -GNU_CONFIGURE= yes -GNU_CONFIGURE_MANPREFIX=${PREFIX}/share -CONFIGURE_ARGS= --disable-libglade +SHEBANG_FILES= data/gsmartcontrol-root.in.sh OPTIONS_DEFINE= DOCS -post-patch: -# Avoid conflict with C++20 by ignoring <...> under WRKSRC - @${REINPLACE_CMD} -i .c++20 '/ADDITIONAL_INCLUDES/s/-I/-iquote/g' \ - ${WRKSRC}/configure - @${REINPLACE_CMD} -i .c++20 's/-I/-iquote/g' \ - ${WRKSRC}/src/Makefile.in \ - ${WRKSRC}/src/*/Makefile.in - @${REINPLACE_CMD} -i .c++20 '/config\.h/y/<>/""/' \ - ${WRKSRC}/src/global_macros.h - @${REINPLACE_CMD} -i '' 's|%%PREFIX%%|${PREFIX}|g' \ - ${WRKSRC}/data/org.gsmartcontrol.policy - .include diff --git a/sysutils/gsmartcontrol/distinfo b/sysutils/gsmartcontrol/distinfo index 2b0a954f13ea..5f710fba7755 100644 --- a/sysutils/gsmartcontrol/distinfo +++ b/sysutils/gsmartcontrol/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1659755487 -SHA256 (gsmartcontrol-1.1.4.tar.bz2) = fc409f2b8a84cc40bb103d6c82401b9d4c0182d5a3b223c93959c7ad66191847 -SIZE (gsmartcontrol-1.1.4.tar.bz2) = 691155 +TIMESTAMP = 1789179208 +SHA256 (ashaduri-gsmartcontrol-v2.0.2_GH0.tar.gz) = 7cebd83fd34883d51e143389aa88f8173ea7b67c760b12b7de847f3c3c8cee34 +SIZE (ashaduri-gsmartcontrol-v2.0.2_GH0.tar.gz) = 1609401 diff --git a/sysutils/gsmartcontrol/files/patch-CMakeLists.txt b/sysutils/gsmartcontrol/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..4c98d6b82740 --- /dev/null +++ b/sysutils/gsmartcontrol/files/patch-CMakeLists.txt @@ -0,0 +1,11 @@ +--- CMakeLists.txt.orig 2026-09-12 02:44:17 UTC ++++ CMakeLists.txt +@@ -43,8 +43,6 @@ set(DOC_FILES + + # Install documentation + set(DOC_FILES +- LICENSE.LGPL3.txt +- LICENSE.txt + NEWS.txt + README.md + ) diff --git a/sysutils/gsmartcontrol/files/patch-Makefile.in b/sysutils/gsmartcontrol/files/patch-Makefile.in deleted file mode 100644 index 37cb16f6f281..000000000000 --- a/sysutils/gsmartcontrol/files/patch-Makefile.in +++ /dev/null @@ -1,19 +0,0 @@ ---- Makefile.in.orig 2022-02-04 09:57:12 UTC -+++ Makefile.in -@@ -388,15 +388,7 @@ dist_doc_DATA = AUTHORS.txt ChangeLog NEWS README.txt - # These will be installed into docdir. - # Some of these files are actually needed for compilation (see src/res/Makefile.am). - dist_doc_DATA = AUTHORS.txt ChangeLog NEWS README.txt \ -- LICENSE_boost_1_0.txt \ -- LICENSE_bsd-ac.txt \ -- LICENSE_bsd-ucb.txt \ -- LICENSE_gpl2.txt \ -- LICENSE_gpl3.txt \ -- LICENSE_gsmartcontrol.txt \ -- LICENSE_hz.txt \ -- LICENSE_unlicense.txt \ -- LICENSE_zlib.txt -+ LICENSE_gsmartcontrol.txt - - - # nobase_ preserves their directory names. diff --git a/sysutils/gsmartcontrol/files/patch-data_org.gsmartcontrol.policy b/sysutils/gsmartcontrol/files/patch-data_org.gsmartcontrol.policy deleted file mode 100644 index 8cb3cbda9556..000000000000 --- a/sysutils/gsmartcontrol/files/patch-data_org.gsmartcontrol.policy +++ /dev/null @@ -1,11 +0,0 @@ ---- data/org.gsmartcontrol.policy.orig 2017-08-27 18:49:36.000000000 +0200 -+++ data/org.gsmartcontrol.policy 2021-02-02 21:41:16.437199000 +0100 -@@ -12,7 +12,7 @@ - auth_admin - auth_admin - -- /usr/sbin/gsmartcontrol -+ %%PREFIX%%/sbin/gsmartcontrol - true - - diff --git a/sysutils/gsmartcontrol/files/patch-dependencies_CMakeLists.txt b/sysutils/gsmartcontrol/files/patch-dependencies_CMakeLists.txt new file mode 100644 index 000000000000..8fada0c1cac9 --- /dev/null +++ b/sysutils/gsmartcontrol/files/patch-dependencies_CMakeLists.txt @@ -0,0 +1,9 @@ +--- dependencies/CMakeLists.txt.orig 2026-09-12 06:53:51 UTC ++++ dependencies/CMakeLists.txt +@@ -69,6 +69,4 @@ add_subdirectory(fmt) + + add_subdirectory(catch2) + add_subdirectory(fmt) +-add_subdirectory(nlohmann_json) + add_subdirectory(whereami) +-add_subdirectory(tl_expected) diff --git a/sysutils/gsmartcontrol/files/patch-src_hz_CMakeLists.txt b/sysutils/gsmartcontrol/files/patch-src_hz_CMakeLists.txt new file mode 100644 index 000000000000..49cb97daf6d3 --- /dev/null +++ b/sysutils/gsmartcontrol/files/patch-src_hz_CMakeLists.txt @@ -0,0 +1,10 @@ +--- src/hz/CMakeLists.txt.orig 2026-09-12 03:15:00 UTC ++++ src/hz/CMakeLists.txt +@@ -37,7 +37,6 @@ target_link_libraries(hz + app_gettext_interface # format_unit.h uses this + libdebug # debug.h + whereami # whereami.h +- tl_expected # error_container.h + # std::filesystem # fs_ns.h, linking to stdc++fs / c++fs if needed + ) + diff --git a/sysutils/gsmartcontrol/files/patch-src_rconfig_CMakeLists.txt b/sysutils/gsmartcontrol/files/patch-src_rconfig_CMakeLists.txt new file mode 100644 index 000000000000..8c867af8c1f9 --- /dev/null +++ b/sysutils/gsmartcontrol/files/patch-src_rconfig_CMakeLists.txt @@ -0,0 +1,10 @@ +--- src/rconfig/CMakeLists.txt.orig 2026-09-12 03:14:51 UTC ++++ src/rconfig/CMakeLists.txt +@@ -18,7 +18,6 @@ target_link_libraries(rconfig + target_link_libraries(rconfig + INTERFACE + hz +- nlohmann_json + app_gtkmm_interface + ) + diff --git a/sysutils/gsmartcontrol/pkg-descr b/sysutils/gsmartcontrol/pkg-descr index e834fc44fd15..410cc3bb76e2 100644 --- a/sysutils/gsmartcontrol/pkg-descr +++ b/sysutils/gsmartcontrol/pkg-descr @@ -1,6 +1,6 @@ GSmartControl is a graphical user interface for smartctl (from sysutils/smartmontools port), which is a tool for querying and -controlling SMART (Self-Monitoring, Analysis, and Reporting -Technology) data on modern hard disk drives. It allows you to -inspect the drive's SMART data to determine its health, as well -as run various tests on it. +controlling SMART (Self-Monitoring, Analysis, and Reporting Technology) +data on modern hard disk and solid-state drives. It allows you to +inspect the drive's SMART data to determine its health, as well as run +various tests on it. diff --git a/sysutils/gsmartcontrol/pkg-plist b/sysutils/gsmartcontrol/pkg-plist index bd9eaca01a66..25b7319000b5 100644 --- a/sysutils/gsmartcontrol/pkg-plist +++ b/sysutils/gsmartcontrol/pkg-plist @@ -1,28 +1,51 @@ bin/gsmartcontrol-root -share/man/man1/gsmartcontrol-root.1.gz -share/man/man1/gsmartcontrol.1.gz sbin/gsmartcontrol share/applications/gsmartcontrol.desktop -%%PORTDOCS%%%%DOCSDIR%%/AUTHORS.txt -%%PORTDOCS%%%%DOCSDIR%%/ChangeLog -%%PORTDOCS%%%%DOCSDIR%%/LICENSE_gsmartcontrol.txt -%%PORTDOCS%%%%DOCSDIR%%/NEWS -%%PORTDOCS%%%%DOCSDIR%%/README.txt +%%PORTDOCS%%%%DOCSDIR%%/NEWS.txt +%%PORTDOCS%%%%DOCSDIR%%/README.md %%PORTDOCS%%%%DOCSDIR%%/contrib/cron-based_noadmin/README %%PORTDOCS%%%%DOCSDIR%%/contrib/cron-based_noadmin/cron_gather_smart.sh %%PORTDOCS%%%%DOCSDIR%%/contrib/cron-based_noadmin/crontab.example %%PORTDOCS%%%%DOCSDIR%%/contrib/cron-based_noadmin/smartctl_subst.sh -%%DATADIR%%/icon_cddvd.png -%%DATADIR%%/icon_hdd.png +%%PORTDOCS%%%%DOCSDIR%%/docs/_includes/extra/styles.scss +%%PORTDOCS%%%%DOCSDIR%%/docs/assets/images/favicon.svg +%%PORTDOCS%%%%DOCSDIR%%/docs/downloads.md +%%PORTDOCS%%%%DOCSDIR%%/docs/github.md +%%PORTDOCS%%%%DOCSDIR%%/docs/index.md +%%PORTDOCS%%%%DOCSDIR%%/docs/screenshots.md +%%PORTDOCS%%%%DOCSDIR%%/docs/screenshots/3ware-raid.png +%%PORTDOCS%%%%DOCSDIR%%/docs/screenshots/info_failing.png +%%PORTDOCS%%%%DOCSDIR%%/docs/screenshots/info_identity.png +%%PORTDOCS%%%%DOCSDIR%%/docs/screenshots/info_stats.png +%%PORTDOCS%%%%DOCSDIR%%/docs/screenshots/info_testing.png +%%PORTDOCS%%%%DOCSDIR%%/docs/screenshots/main_failing.png +%%PORTDOCS%%%%DOCSDIR%%/docs/screenshots/main_ok.png +%%PORTDOCS%%%%DOCSDIR%%/docs/smart.md +%%PORTDOCS%%%%DOCSDIR%%/docs/smartctl_man.html +%%PORTDOCS%%%%DOCSDIR%%/docs/software_requirements.md +%%PORTDOCS%%%%DOCSDIR%%/docs/support.md +%%PORTDOCS%%%%DOCSDIR%%/docs/supported_hardware.md +%%PORTDOCS%%%%DOCSDIR%%/docs/troubleshooting.md +%%PORTDOCS%%%%DOCSDIR%%/docs/usage.md +%%DATADIR%%/icons/drive-harddisk.png +%%DATADIR%%/icons/drive-optical.png +%%DATADIR%%/icons/drive-removable-media-usb.png +%%DATADIR%%/ui/gsc_about_dialog.glade +%%DATADIR%%/ui/gsc_add_device_window.glade +%%DATADIR%%/ui/gsc_executor_log_window.glade +%%DATADIR%%/ui/gsc_info_window.glade +%%DATADIR%%/ui/gsc_main_window.glade +%%DATADIR%%/ui/gsc_preferences_window.glade +%%DATADIR%%/ui/gsc_text_window.glade share/icons/hicolor/128x128/apps/gsmartcontrol.png share/icons/hicolor/16x16/apps/gsmartcontrol.png share/icons/hicolor/22x22/apps/gsmartcontrol.png share/icons/hicolor/24x24/apps/gsmartcontrol.png share/icons/hicolor/256x256/apps/gsmartcontrol.png share/icons/hicolor/32x32/apps/gsmartcontrol.png share/icons/hicolor/48x48/apps/gsmartcontrol.png share/icons/hicolor/64x64/apps/gsmartcontrol.png +share/man/man1/gsmartcontrol-root.1.gz +share/man/man1/gsmartcontrol.1.gz share/metainfo/gsmartcontrol.appdata.xml -share/pixmaps/gsmartcontrol.png -share/pixmaps/gsmartcontrol.xpm share/polkit-1/actions/org.gsmartcontrol.policy