gamin, fileschanged: remove

The projects have not been in development for around a decade. The
original source for gamin does not exist. Although it exists in gnome
archive now, it only has one similarily unmaintained tool.

Remove both instead of fixing gamin for the latest clang update.
This commit is contained in:
Stanisław Pitucha 2024-04-19 10:17:12 +10:00 committed by Sandro Jäckel
parent ffdd6582a0
commit 2163a45ca7
No known key found for this signature in database
GPG Key ID: 3AF5A43A3EECC2E5
10 changed files with 3 additions and 302 deletions

View File

@ -1,73 +0,0 @@
From 737452159d521aef2041a2767f3ebf9f68f4b6a9 Mon Sep 17 00:00:00 2001
From: Christian Kampka <christian@kampka.net>
Date: Tue, 1 Sep 2020 13:54:35 +0200
Subject: [PATCH] Pin abstract namespace sockets to host_os
Running programs with AC_RUN_IFELSE fails when cross-compiling.
Since abstract namespace sockets are linux feature, we can easily
assume it is available for linux and not for darwin.
---
configure.in | 47 ++++++-----------------------------------------
1 file changed, 6 insertions(+), 41 deletions(-)
diff --git a/configure.in b/configure.in
index eb129db..0ed82ba 100644
--- a/configure.in
+++ b/configure.in
@@ -387,47 +387,12 @@ fi
#### Abstract sockets
-AC_MSG_CHECKING(abstract socket namespace)
-AC_LANG_PUSH(C)
-AC_RUN_IFELSE([AC_LANG_PROGRAM(
-[[
-#include <sys/types.h>
-#include <stdlib.h>
-#include <string.h>
-#include <stdio.h>
-#include <sys/socket.h>
-#include <sys/un.h>
-#include <errno.h>
-]],
-[[
- int listen_fd;
- struct sockaddr_un addr;
-
- listen_fd = socket (PF_UNIX, SOCK_STREAM, 0);
-
- if (listen_fd < 0)
- {
- fprintf (stderr, "socket() failed: %s\n", strerror (errno));
- exit (1);
- }
-
- memset (&addr, '\0', sizeof (addr));
- addr.sun_family = AF_UNIX;
- strcpy (addr.sun_path, "X/tmp/dbus-fake-socket-path-used-in-configure-test");
- addr.sun_path[0] = '\0'; /* this is what makes it abstract */
-
- if (bind (listen_fd, (struct sockaddr*) &addr, SUN_LEN (&addr)) < 0)
- {
- fprintf (stderr, "Abstract socket namespace bind() failed: %s\n",
- strerror (errno));
- exit (1);
- }
- else
- exit (0);
-]])],
- [have_abstract_sockets=yes],
- [have_abstract_sockets=no])
-AC_LANG_POP(C)
+AC_MSG_CHECKING([whether target os has abstract socket namespace])
+if test x$target_os = xlinux-gnu ; then
+ have_abstract_sockets=yes
+else
+ have_abstract_sockets=no
+fi
AC_MSG_RESULT($have_abstract_sockets)
if test x$enable_abstract_sockets = xyes; then
--
2.25.4

View File

@ -1,68 +0,0 @@
Fix for a deadlock:
https://bugzilla.gnome.org/show_bug.cgi?id=667230
From cc14440eface093548cb3bc7814da11d9a99d283 Mon Sep 17 00:00:00 2001
From: Anssi Hannula <anssi@mageia.org>
Date: Wed, 4 Jan 2012 00:23:55 +0200
Subject: [PATCH] fix possible server deadlock in ih_sub_cancel
ih_sub_foreach() calls ih_sub_cancel() while inotify_lock is locked.
However, ih_sub_cancel() locks it again, and locking GMutex recursively
causes undefined behaviour.
Fix that by removing locking from ih_sub_cancel() as ih_sub_foreach()
is its only user. Also make the function static so that it won't
accidentally get used by other files without locking (inotify-helper.h
is an internal server header).
This should fix the intermittent deadlocks I've been experiencing
causing KDE applications to no longer start, and probably also
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=542361
---
server/inotify-helper.c | 7 ++-----
server/inotify-helper.h | 1 -
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/server/inotify-helper.c b/server/inotify-helper.c
index d77203e..0789fa4 100644
--- a/server/inotify-helper.c
+++ b/server/inotify-helper.c
@@ -123,13 +123,11 @@ ih_sub_add (ih_sub_t * sub)
/**
* Cancels a subscription which was being monitored.
+ * inotify_lock must be held when calling.
*/
-gboolean
+static gboolean
ih_sub_cancel (ih_sub_t * sub)
{
- G_LOCK(inotify_lock);
-
-
if (!sub->cancelled)
{
IH_W("cancelling %s\n", sub->pathname);
@@ -140,7 +138,6 @@ ih_sub_cancel (ih_sub_t * sub)
sub_list = g_list_remove (sub_list, sub);
}
- G_UNLOCK(inotify_lock);
return TRUE;
}
diff --git a/server/inotify-helper.h b/server/inotify-helper.h
index 5d3b6d0..d36b5fd 100644
--- a/server/inotify-helper.h
+++ b/server/inotify-helper.h
@@ -34,7 +34,6 @@ gboolean ih_startup (event_callback_t ecb,
found_callback_t fcb);
gboolean ih_running (void);
gboolean ih_sub_add (ih_sub_t *sub);
-gboolean ih_sub_cancel (ih_sub_t *sub);
/* Return FALSE from 'f' if the subscription should be cancelled */
void ih_sub_foreach (void *callerdata, gboolean (*f)(ih_sub_t *sub, void *callerdata));
--
1.7.7.2

View File

@ -1,10 +0,0 @@
# Generated by debian-patches.sh from debian-patches.txt
let
prefix = "https://sources.debian.org/data/main/g/gamin/0.1.10-4.1/debian/patches";
in
[
{
url = "${prefix}/17_deprecated_const_return.patch";
sha256 = "0bssrqcmyivlpk2g0q71d1yavd4wv1lw34l8qipm0ndljjd6rbrk";
}
]

View File

@ -1,2 +0,0 @@
gamin/0.1.10-4.1
17_deprecated_const_return.patch

View File

@ -1,50 +0,0 @@
{ lib, stdenv, fetchurl, fetchpatch, pkg-config, glib, autoreconfHook }:
stdenv.mkDerivation rec {
pname = "gamin";
version = "0.1.10";
src = fetchurl {
url = "https://www.gnome.org/~veillard/gamin/sources/gamin-${version}.tar.gz";
sha256 = "18cr51y5qacvs2fc2p1bqv32rs8bzgs6l67zhasyl45yx055y218";
};
nativeBuildInputs = [ pkg-config autoreconfHook ];
buildInputs = [ glib ];
# `_GNU_SOURCE' is needed, e.g., to get `struct ucred' from
# <sys/socket.h> with Glibc 2.9.
configureFlags = [
"--disable-debug"
"--without-python" # python3 not supported
"CPPFLAGS=-D_GNU_SOURCE"
];
preBuild = lib.optionalString stdenv.isDarwin ''
sed -i 's/,--version-script=.*$/\\/' libgamin/Makefile
'';
env = lib.optionalAttrs stdenv.cc.isClang {
NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration";
};
patches = [ ./deadlock.patch ]
++ map fetchurl (import ./debian-patches.nix)
++ lib.optional stdenv.cc.isClang ./returnval.patch
++ lib.optional stdenv.hostPlatform.isMusl (fetchpatch {
name = "fix-pthread-mutex.patch";
url = "https://git.alpinelinux.org/aports/plain/main/gamin/fix-pthread-mutex.patch?h=3.4-stable&id=a1a836b089573752c1b0da7d144c0948b04e8ea8";
sha256 = "13igdbqsxb3sz0h417k6ifmq2n4siwqspj6slhc7fdl5wd1fxmdz";
}) ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) ./abstract-socket-namespace.patch;
meta = with lib; {
homepage = "https://people.gnome.org/~veillard/gamin/";
description = "File and directory monitoring system";
maintainers = with maintainers; [ lovek323 ];
license = licenses.gpl2;
platforms = platforms.unix;
};
}

View File

@ -1,12 +0,0 @@
diff -rupN gamin-0.1.10-orig/server/gam_eq.c gamin-0.1.10/server/gam_eq.c
--- gamin-0.1.10-orig/server/gam_eq.c 2015-04-05 19:25:54.000000000 -0400
+++ gamin-0.1.10/server/gam_eq.c 2015-04-05 19:26:00.000000000 -0400
@@ -124,7 +124,7 @@ gam_eq_flush (gam_eq_t *eq, GamConnDataP
{
gboolean done_work = FALSE;
if (!eq)
- return;
+ return done_work;
#ifdef GAM_EQ_VERBOSE
GAM_DEBUG(DEBUG_INFO, "gam_eq: Flushing event queue for %s\n", gam_connection_get_pidname (conn));

View File

@ -1,34 +0,0 @@
{ lib, stdenv, fetchurl, gamin }:
stdenv.mkDerivation rec {
pname = "fileschanged";
version = "0.6.9";
src = fetchurl {
url = "mirror://savannah/fileschanged/fileschanged-${version}.tar.gz";
sha256 = "0ajc9h023vzpnlqqjli4wbvs0q36nr5p9msc3wzbic8rk687qcxc";
};
buildInputs = [ gamin ];
patches = [./unused-variables.debian.patch];
doCheck = true;
meta = {
homepage = "https://www.nongnu.org/fileschanged/";
description = "Command-line utility that reports when files have been altered";
license = lib.licenses.gpl3Plus;
longDescription = ''
This utility is a client to FAM (File Alteration Monitor) servers
like FAM or Gamin. You give it some filenames on the command line
and then it monitors those files for changes. When it discovers
that a file has been altered, it displays the filename on the
standard-output or executes a given command.
'';
platforms = lib.platforms.linux;
mainProgram = "fileschanged";
};
}

View File

@ -1,48 +0,0 @@
#! /bin/sh /usr/share/dpatch/dpatch-run
## 07_unused_variables.dpatch by Colin Watson <cjwatson@ubuntu.com>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: GCC 4.6 warns about unused variables, and fileschanged builds with
## DP: -Werror, so deal with unused variable warnings.
@DPATCH@
diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' fileschanged-0.6.5~/src/monitor.c fileschanged-0.6.5/src/monitor.c
--- fileschanged-0.6.5~/src/monitor.c 2006-04-19 20:42:29.000000000 +0100
+++ fileschanged-0.6.5/src/monitor.c 2011-09-14 01:17:23.000000000 +0100
@@ -84,6 +84,7 @@
retval = FAMMonitorDirectory (c, node->filename, &node->request,
(void *) node);
//printf ("FAMMonitorDirectory returns %d (reqnum %d)\n", retval, node->request.reqnum);
+ (void) retval;
}
else if (S_ISREG (node->statbuf.st_mode))
{
@@ -91,6 +92,7 @@
retval = FAMMonitorFile (c, node->filename, &node->request,
(void *) node);
//printf ("FAMMonitorFile returns %d (reqnum %d)\n", retval, node->request.reqnum);
+ (void) retval;
}
monitor_handle_events (c, list, 0, 30);
}
diff -r -U3 fileschanged-0.6.9-orig/src/main.c fileschanged-0.6.9/src/main.c
--- fileschanged-0.6.9-orig/src/main.c 2012-04-13 01:31:59.160601022 +0400
+++ fileschanged-0.6.9/src/main.c 2012-04-13 01:32:47.549599643 +0400
@@ -126,6 +126,7 @@
{
retval = process_file (filelist, filelist_len, arguments.args[i]);
}
+ (void) retval;
return 0;
}
@@ -168,6 +169,7 @@
if (fileptr != stdin)
fclose (fileptr);
+ (void) retval;
return 0;
}
int

View File

@ -441,6 +441,7 @@ mapAliases ({
### F ###
fam = throw "'fam' (aliased to 'gamin') has been removed as it is unmaintained upstream"; # Added 2024-04-19
fancypp = throw "'fancypp' was removed because it and its dependants are unmaintained"; # Added 2024-02-14
faustStk = faustPhysicalModeling; # Added 2023-05-16
fastnlo = fastnlo-toolkit; # Added 2021-04-24
@ -453,6 +454,7 @@ mapAliases ({
ffmpeg_5-headless = throw "ffmpeg_5-headless has been removed, please use another version"; # Added 2024-07-12
ffmpeg_5-full = throw "ffmpeg_5-full has been removed, please use another version"; # Added 2024-07-12
FIL-plugins = fil-plugins; # Added 2024-06-12
fileschanged = throw "'fileschanged' has been removed as it is unmaintained upstream"; # Added 2024-04-19
findimagedupes = throw "findimagedupes has been removed because the perl bindings are no longer compatible"; # Added 2023-07-10
finger_bsd = bsd-finger;
fingerd_bsd = bsd-fingerd;
@ -496,6 +498,7 @@ mapAliases ({
g4music = gapless; # Added 2024-07-26
g4py = python3Packages.geant4; # Added 2020-06-06
gamin = throw "'gamin' has been removed as it is unmaintained upstream"; # Added 2024-04-19
garage_0_7 = throw "garage 0.7.x has been removed as it is EOL. Please upgrade to 0.8 series."; # Added 2023-10-10
garage_0_7_3 = throw "garage 0.7.x has been removed as it is EOL. Please upgrade to 0.8 series."; # Added 2023-10-10
garmin-plugin = throw "garmin-plugin has been removed, as it is unmaintained upstream and no longer works with modern browsers."; # Added 2024-01-12

View File

@ -7733,8 +7733,6 @@ with pkgs;
filegive = callPackage ../tools/networking/filegive { };
fileschanged = callPackage ../tools/misc/fileschanged { };
filet = callPackage ../applications/misc/filet { };
findex = callPackage ../applications/misc/findex { };
@ -20129,9 +20127,6 @@ with pkgs;
game-music-emu = callPackage ../development/libraries/audio/game-music-emu { };
gamin = callPackage ../development/libraries/gamin { };
fam = gamin; # added 2018-04-25
ganv = callPackage ../development/libraries/ganv { };
garble = callPackage ../development/tools/garble { };