From nobody Tue Feb 21 09:05:35 2023 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4PLYKW5ps2z3tJ7X; Tue, 21 Feb 2023 09:05:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4PLYKW5GLMz3qv8; Tue, 21 Feb 2023 09:05:35 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1676970335; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DJr7O6zROcIhV4lKaEIYPCelQS3z/jfQ00WHWHgdVHk=; b=OV1fSwLjDmGCy2OwVaW9BA2nnt44jBCipm/t/n9d3ITtUcdAGEVhqsRUVoKIs/ZT0ikKIf DDSl+MqOacRgUak+iFmAgPDWbUfNUDDZ7o3GvKtNc6cNTySkfh+7+tzoDQJGFMXc6PI5+P s5swrXX9PuxOj2j1fHh/yeWBi3UHcryvSvQMSldzTjusuqg0PCRvVdVnGS/5lNkRSl33dX NN2iACIZMwNDsuG8sFzIdIGl8szcMVD9AChxHR284p3cNpy2uUFUzZpkzlBj8ndJQqiyAZ gMwkpVqv2QI5uMik7qJUNhEGLWUKe4lRd3DO63TmcDiJb94BkQ8COIURCSybuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1676970335; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DJr7O6zROcIhV4lKaEIYPCelQS3z/jfQ00WHWHgdVHk=; b=YlzOSNUsDVBxs6G+C9pzMup16+d5vsRz0iXKP/idH1fAJrERPEeUttKCc/eeb7q58dyMre ud/drnTBf1AIkGeLNDHnE0vuOY6363w20FkXnRikH/w7NBGo9IgG7lg/4nEMQKrWhQw08g BU7oSROndy0ETtOJVQx7+Sw35EP/xrm4vlpCD6TXIgrTrCC6qHl0C0jGBASVCZS5XNsWDm /6UIrdAcn1RERVrl9qINH3577y3He2L0kDN2QV0nWDu16YJYIPi4hoLdMe69p9c2daNv4o S87QpoQ727+1cxbiuoPKT1FtdotTbjx5tGLYdRVGHQym4HeoEfjaxKfs+87r9Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1676970335; a=rsa-sha256; cv=none; b=gY/HdWFsdUMHs1BBeVkWOvV9n+4o8pH6/v2xWQuRJcRyMWy09DdSRKChwSt0fhVpfd3pFE GWbUISlg32EOUOeXZfYE/yaxioppX2NK/8uk/J0OCsU1enTtSVNZUm7lMkhrLXd43OjKNE W+1DYNDPDuT8gJP5+9LlkbXY4iw8cyU/1z6q5/17vihMKWPEbsrV3hvL9hD3VfpWUCKaEk M/ge1+jxeyIe8sARfU8Avhe7PkFEx3vdOx/1FTW32JDTZNqwboo3a7EqkksZMzIHSdit2/ anoqs3HTXzKIqBGbF+ZC0Q+LMjFn8vZRon6sepdr/PUBfGnEi+iYsIaRqSar4Q== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4PLYKW47bSzFqP; Tue, 21 Feb 2023 09:05:35 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 31L95Zds095785; Tue, 21 Feb 2023 09:05:35 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 31L95ZGv095784; Tue, 21 Feb 2023 09:05:35 GMT (envelope-from git) Date: Tue, 21 Feb 2023 09:05:35 GMT Message-Id: <202302210905.31L95ZGv095784@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Yuri Victorovich Subject: git: 2ed96e28b362 - main - deskutils/spacefm: New port: SpaceFM file manager List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: yuri X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 2ed96e28b3629d97e11811ce68b609ec3f2fe629 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=2ed96e28b3629d97e11811ce68b609ec3f2fe629 commit 2ed96e28b3629d97e11811ce68b609ec3f2fe629 Author: Yuri Victorovich AuthorDate: 2023-02-21 07:12:11 +0000 Commit: Yuri Victorovich CommitDate: 2023-02-21 09:05:29 +0000 deskutils/spacefm: New port: SpaceFM file manager --- deskutils/Makefile | 1 + deskutils/spacefm/Makefile | 68 +++++++++++++ deskutils/spacefm/distinfo | 3 + deskutils/spacefm/files/patch-src_settings.c | 10 ++ .../spacefm/files/patch-src_vfs_vfs-file-info.h | 11 +++ .../spacefm/files/patch-src_vfs_vfs-volume-nohal.c | 105 +++++++++++++++++++++ deskutils/spacefm/pkg-descr | 4 + deskutils/spacefm/pkg-plist | 84 +++++++++++++++++ 8 files changed, 286 insertions(+) diff --git a/deskutils/Makefile b/deskutils/Makefile index 2dc79156f89e..8848397fb8f3 100644 --- a/deskutils/Makefile +++ b/deskutils/Makefile @@ -246,6 +246,7 @@ SUBDIR += sliderule SUBDIR += solanum SUBDIR += sowon + SUBDIR += spacefm SUBDIR += spice-gtk SUBDIR += subsurface SUBDIR += synapse diff --git a/deskutils/spacefm/Makefile b/deskutils/spacefm/Makefile new file mode 100644 index 000000000000..234c72db8622 --- /dev/null +++ b/deskutils/spacefm/Makefile @@ -0,0 +1,68 @@ +PORTNAME= spacefm +DISTVERSION= 1.0.6 +CATEGORIES= deskutils + +MAINTAINER= yuri@FreeBSD.org +COMMENT= SpaceFM file manager +WWW= https://ignorantguru.github.io/spacefm + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/COPYING + +BUILD_DEPENDS= bash:shells/bash # for configure +LIB_DEPENDS= libffmpegthumbnailer.so:multimedia/ffmpegthumbnailer \ + libinotify.so:devel/libinotify \ + libstartup-notification-1.so:x11/startup-notification \ + libudev.so:devel/libudev-devd +RUN_DEPENDS= bash:shells/bash + +USES= desktop-file-utils gettext gmake gnome localbase:ldflags \ + pkgconfig shared-mime-info shebangfix xorg +USE_GNOME= cairo gdkpixbuf2 glib20 gtk20 intltool pango +USE_XORG= x11 + +USE_GITHUB= yes +GH_ACCOUNT= IgnorantGuru + +SHEBANG_FILES= src/spacefm-auth.bash spacefm-installer + +GNU_CONFIGURE= yes +CONFIGURE_SHELL= ${PREFIX}/bin/bash +CONFIGURE_ARGS= --sysconfdir=${LOCALBASE}/etc \ + --with-bash-path=${LOCALBASE}/bin/bash + +CFLAGS+= -Dstat64=stat -Dfstat64=fstat -Dlstat64=lstat \ + -fcommon +LDFLAGS+= -lX11 -linotify + +OPTIONS_DEFINE= DOCS +OPTIONS_GROUP= OPT_DEPS +OPTIONS_GROUP_OPT_DEPS= CURLFTPFS IFUSE JMTPFS LSOF PHOTOFS + +PORTDOCS= * + +CURLFTPFS_DESC= Mount FTP shares +CURLFTPFS_RUN_DEPENDS= fusefs-curlftpfs>0:sysutils/fusefs-curlftpfs + +IFUSE_DESC= Mount your iPhone/iPod Touch +IFUSE_RUN_DEPENDS= fusefs-ifuse>0:sysutils/fusefs-ifuse + +JMTPFS_DESC= Mount MTP devices +JMTPFS_RUN_DEPENDS= fusefs-jmtpfs>0:sysutils/fusefs-jmtpfs + +LSOF_DESC= Device processes +LSOF_RUN_DEPENDS= lsof:sysutils/lsof + +PHOTOFS_DESC= Mount cameras +PHOTOFS_RUN_DEPENDS= fusefs-gphotofs>0:graphics/fusefs-gphotofs + +post-patch: + @${REINPLACE_CMD} -e 's|#!/bin/bash|#!${LOCALBASE}/bin/bash|' \ + ${WRKSRC}/src/ptk/ptk-handler.c + @${REINPLACE_CMD} -e '\ + s|^/bin/bash|${LOCALBASE}/bin/bash|; \ + s|/usr/bin/sha256sum|/sbin/sha256| \ + ' \ + ${WRKSRC}/src/spacefm-auth.bash + +.include diff --git a/deskutils/spacefm/distinfo b/deskutils/spacefm/distinfo new file mode 100644 index 000000000000..d512763c508d --- /dev/null +++ b/deskutils/spacefm/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1676930139 +SHA256 (IgnorantGuru-spacefm-1.0.6_GH0.tar.gz) = fedea9fcad776e0af4b8d90c5a1c86684a9c96ef1cdd4e959530ce93bdebe7c9 +SIZE (IgnorantGuru-spacefm-1.0.6_GH0.tar.gz) = 3498587 diff --git a/deskutils/spacefm/files/patch-src_settings.c b/deskutils/spacefm/files/patch-src_settings.c new file mode 100644 index 000000000000..8d9b84e42548 --- /dev/null +++ b/deskutils/spacefm/files/patch-src_settings.c @@ -0,0 +1,10 @@ +--- src/settings.c.orig 2023-02-20 22:03:12 UTC ++++ src/settings.c +@@ -21,6 +21,7 @@ + #include + #include + #include ++#include + + #include "glib-utils.h" /* for g_mkdir_with_parents() */ + #include diff --git a/deskutils/spacefm/files/patch-src_vfs_vfs-file-info.h b/deskutils/spacefm/files/patch-src_vfs_vfs-file-info.h new file mode 100644 index 000000000000..d3bcc842f098 --- /dev/null +++ b/deskutils/spacefm/files/patch-src_vfs_vfs-file-info.h @@ -0,0 +1,11 @@ +--- src/vfs/vfs-file-info.h.orig 2023-02-20 22:01:54 UTC ++++ src/vfs/vfs-file-info.h +@@ -56,7 +56,7 @@ struct _VFSFileInfo + time_t mtime; + time_t atime; + long blksize; //sfm was long then blksize_t but blksize_t not defined for squeeze gcc +- blkcnt64_t blocks; //sfm was blkcnt_t ++ blkcnt_t blocks; //sfm was blkcnt_t + + char* name; /* real name on file system */ + char* disp_name; /* displayed name (in UTF-8) */ diff --git a/deskutils/spacefm/files/patch-src_vfs_vfs-volume-nohal.c b/deskutils/spacefm/files/patch-src_vfs_vfs-volume-nohal.c new file mode 100644 index 000000000000..1a9e9198f04b --- /dev/null +++ b/deskutils/spacefm/files/patch-src_vfs_vfs-volume-nohal.c @@ -0,0 +1,105 @@ +--- src/vfs/vfs-volume-nohal.c.orig 2023-02-20 22:04:57 UTC ++++ src/vfs/vfs-volume-nohal.c +@@ -35,8 +35,8 @@ + #include + + #include // kill +-#include // MAJOR MINOR +-#include // needed for dev_t ++//#include // MAJOR MINOR ++//#include // needed for dev_t + + #ifdef HAVE_STATVFS + #include +@@ -1000,6 +1000,7 @@ void info_device_properties( device_t *device ) + + gchar* info_mount_points( device_t *device ) + { ++#if 0 + gchar *contents; + gchar **lines; + GError *error; +@@ -1137,6 +1138,10 @@ gchar* info_mount_points( device_t *device ) + } + else + return NULL; ++ ++#else ++ return NULL; ++#endif + } + + void info_partition_table( device_t *device ) +@@ -1489,9 +1494,11 @@ char* device_show_info( device_t *device ) + + line[i++] = g_strdup_printf("Showing information for %s\n", device->devnode ); + line[i++] = g_strdup_printf(" native-path: %s\n", device->native_path ); ++#if 0 + line[i++] = g_strdup_printf(" device: %u:%u\n", + (unsigned int)MAJOR( device->devnum ), + (unsigned int)MINOR( device->devnum ) ); ++#endif + line[i++] = g_strdup_printf(" device-file: %s\n", device->devnode ); + line[i++] = g_strdup_printf(" presentation: %s\n", device->devnode ); + if ( device->device_by_id ) +@@ -1945,11 +1952,13 @@ void parse_mounts( gboolean report ) + if ( volume = vfs_volume_read_by_mount( devnum, + devmount->mount_points ) ) + { ++#if 0 + printf( "special mount changed: %s (%u:%u) on %s\n", + volume->device_file, + (unsigned int)MAJOR( volume->devnum ), + (unsigned int)MINOR( volume->devnum ), + devmount->mount_points ); ++#endif + vfs_volume_device_added( volume, FALSE ); //frees volume if needed + } + else +@@ -2465,8 +2474,12 @@ void vfs_volume_set_info( VFSVolume* volume ) + disp_fstype = g_strdup( volume->fs_type );// g_strdup_printf( "-%s", volume->fs_type ); + else + disp_fstype = g_strdup( "" ); ++#if 0 + disp_devnum = g_strdup_printf( "%u:%u", (unsigned int)MAJOR( volume->devnum ), + (unsigned int)MINOR( volume->devnum ) ); ++#else ++ disp_devnum = g_strdup_printf( "" ); ++#endif + + char* fmt = xset_get_s( "dev_dispname" ); + if ( !fmt ) +@@ -3652,6 +3665,7 @@ gboolean vfs_volume_is_automount( VFSVolume* vol ) + + char* vfs_volume_device_info( VFSVolume* vol ) + { ++#if 0 + struct udev_device* udevice = udev_device_new_from_devnum( udev, 'b', + vol->devnum ); + if ( udevice == NULL ) +@@ -3671,6 +3685,9 @@ char* vfs_volume_device_info( VFSVolume* vol ) + device_free( device ); + udev_device_unref( udevice ); + return info; ++#else ++ return g_strdup_printf( _("( no udev device )") ); ++#endif + } + + char* vfs_volume_device_mount_cmd( VFSVolume* vol, const char* options, +@@ -4203,6 +4220,7 @@ static void vfs_volume_device_added( VFSVolume* volume + + static gboolean vfs_volume_nonblock_removed( dev_t devnum ) + { ++#if 0 + GList* l; + VFSVolume* volume; + +@@ -4226,6 +4244,7 @@ static gboolean vfs_volume_nonblock_removed( dev_t dev + return TRUE; + } + } ++#endif + return FALSE; + } + diff --git a/deskutils/spacefm/pkg-descr b/deskutils/spacefm/pkg-descr new file mode 100644 index 000000000000..16f3c2e86ddb --- /dev/null +++ b/deskutils/spacefm/pkg-descr @@ -0,0 +1,4 @@ +SpaceFM is a multi-panel tabbed file and desktop manager for Linux with built-in +VFS, udev- or HAL-based device manager, customisable menu system, and bash-GTK +integration. SpaceFM aims to provide a stable, capable file manager with +significant customisation capabilities. diff --git a/deskutils/spacefm/pkg-plist b/deskutils/spacefm/pkg-plist new file mode 100644 index 000000000000..75506f1c21a6 --- /dev/null +++ b/deskutils/spacefm/pkg-plist @@ -0,0 +1,84 @@ +bin/spacefm +bin/spacefm-auth +bin/spacefm-installer +%%ETCDIR%%/spacefm.conf +share/applications/spacefm-find.desktop +share/applications/spacefm-folder-handler.desktop +share/applications/spacefm.desktop +share/icons/Faenza/apps/48/spacefm-find.png +share/icons/Faenza/apps/48/spacefm-root.png +share/icons/Faenza/apps/48/spacefm.png +share/icons/hicolor/128x128/apps/spacefm-128-cube-blue.png +share/icons/hicolor/128x128/apps/spacefm-128-cube-green.png +share/icons/hicolor/128x128/apps/spacefm-128-cube-red.png +share/icons/hicolor/128x128/apps/spacefm-128-pyramid-blue.png +share/icons/hicolor/128x128/apps/spacefm-128-pyramid-green.png +share/icons/hicolor/128x128/apps/spacefm-128-pyramid-red.png +share/icons/hicolor/48x48/apps/spacefm-48-cube-blue.png +share/icons/hicolor/48x48/apps/spacefm-48-cube-green.png +share/icons/hicolor/48x48/apps/spacefm-48-cube-red.png +share/icons/hicolor/48x48/apps/spacefm-48-folder-blue.png +share/icons/hicolor/48x48/apps/spacefm-48-folder-red.png +share/icons/hicolor/48x48/apps/spacefm-48-pyramid-blue.png +share/icons/hicolor/48x48/apps/spacefm-48-pyramid-green.png +share/icons/hicolor/48x48/apps/spacefm-48-pyramid-red.png +share/icons/hicolor/48x48/apps/spacefm-find.png +share/icons/hicolor/48x48/apps/spacefm-root.png +share/icons/hicolor/48x48/apps/spacefm.png +share/locale/af/LC_MESSAGES/spacefm.mo +share/locale/ar/LC_MESSAGES/spacefm.mo +share/locale/bg/LC_MESSAGES/spacefm.mo +share/locale/bn_IN/LC_MESSAGES/spacefm.mo +share/locale/ca/LC_MESSAGES/spacefm.mo +share/locale/cs/LC_MESSAGES/spacefm.mo +share/locale/da/LC_MESSAGES/spacefm.mo +share/locale/de/LC_MESSAGES/spacefm.mo +share/locale/el/LC_MESSAGES/spacefm.mo +share/locale/es/LC_MESSAGES/spacefm.mo +share/locale/et/LC_MESSAGES/spacefm.mo +share/locale/eu/LC_MESSAGES/spacefm.mo +share/locale/fa/LC_MESSAGES/spacefm.mo +share/locale/fi/LC_MESSAGES/spacefm.mo +share/locale/fr/LC_MESSAGES/spacefm.mo +share/locale/gl/LC_MESSAGES/spacefm.mo +share/locale/he/LC_MESSAGES/spacefm.mo +share/locale/hr/LC_MESSAGES/spacefm.mo +share/locale/hu/LC_MESSAGES/spacefm.mo +share/locale/id/LC_MESSAGES/spacefm.mo +share/locale/it/LC_MESSAGES/spacefm.mo +share/locale/ja/LC_MESSAGES/spacefm.mo +share/locale/km/LC_MESSAGES/spacefm.mo +share/locale/ko/LC_MESSAGES/spacefm.mo +share/locale/lt/LC_MESSAGES/spacefm.mo +share/locale/ltg/LC_MESSAGES/spacefm.mo +share/locale/ml/LC_MESSAGES/spacefm.mo +share/locale/ms/LC_MESSAGES/spacefm.mo +share/locale/nb/LC_MESSAGES/spacefm.mo +share/locale/nl/LC_MESSAGES/spacefm.mo +share/locale/nn/LC_MESSAGES/spacefm.mo +share/locale/pl/LC_MESSAGES/spacefm.mo +share/locale/ps/LC_MESSAGES/spacefm.mo +share/locale/pt/LC_MESSAGES/spacefm.mo +share/locale/pt_BR/LC_MESSAGES/spacefm.mo +share/locale/ru/LC_MESSAGES/spacefm.mo +share/locale/sk/LC_MESSAGES/spacefm.mo +share/locale/sl/LC_MESSAGES/spacefm.mo +share/locale/sr/LC_MESSAGES/spacefm.mo +share/locale/sr@latin/LC_MESSAGES/spacefm.mo +share/locale/sv/LC_MESSAGES/spacefm.mo +share/locale/tr/LC_MESSAGES/spacefm.mo +share/locale/uk/LC_MESSAGES/spacefm.mo +share/locale/ur/LC_MESSAGES/spacefm.mo +share/locale/ur_PK/LC_MESSAGES/spacefm.mo +share/locale/vi/LC_MESSAGES/spacefm.mo +share/locale/zh_CN/LC_MESSAGES/spacefm.mo +share/locale/zh_TW/LC_MESSAGES/spacefm.mo +share/mime/packages/spacefm-mime.xml +%%DATADIR%%/ui/about-dlg.ui +%%DATADIR%%/ui/appchooserdlg.ui +%%DATADIR%%/ui/file_properties.ui +%%DATADIR%%/ui/find-files.ui +%%DATADIR%%/ui/find-files2.ui +%%DATADIR%%/ui/godlg.ui +%%DATADIR%%/ui/prefdlg.ui +%%DATADIR%%/ui/prefdlg2.ui