Compare commits

...

No commits in common. "imports/c9/gimp-2.99.8-2.el9_0.1" and "c8s-stream-2.8" have entirely different histories.

18 changed files with 10906 additions and 915 deletions

View File

@ -1 +1 @@
79324eeafe2b63fe7f2b1637e57b683695af8f05 SOURCES/gimp-2.99.8.tar.bz2
c894a0d9a864d418bdbd30a22d698c731583e5c4 SOURCES/gimp-2.8.22.tar.bz2

2
.gitignore vendored
View File

@ -1 +1 @@
SOURCES/gimp-2.99.8.tar.bz2
SOURCES/gimp-2.8.22.tar.bz2

View File

@ -1,25 +0,0 @@
diff -up gimp-2.10.14/etc/gimprc.in.cm-system-monitor-profile-by-default gimp-2.10.14/etc/gimprc.in
--- gimp-2.10.14/etc/gimprc.in.cm-system-monitor-profile-by-default 2019-10-26 21:46:48.000000000 +0200
+++ gimp-2.10.14/etc/gimprc.in 2019-11-04 13:17:23.322750636 +0100
@@ -317,9 +317,9 @@
# Defines the color management behavior. This is a parameter list.
#
-# (color-management
+(color-management
# (mode display)
-# (display-profile-from-gdk no)
+ (display-profile-from-gdk no)
# (display-rendering-intent relative-colorimetric)
# (display-use-black-point-compensation yes)
# (display-optimize yes)
@@ -328,7 +328,8 @@
# (simulation-optimize yes)
# (simulation-gamut-check no)
# (out-of-gamut-color (color-rgb 1 0 1))
-# (display-module "CdisplayLcms"))
+# (display-module "CdisplayLcms")
+)
# Keep a permanent record of all opened and saved files in the Recent
# Documents list. Possible values are yes and no.

View File

@ -1,12 +0,0 @@
diff -urNp a/etc/gimprc.in b/etc/gimprc.in
--- a/etc/gimprc.in 2019-08-20 13:03:43.195089141 +0200
+++ b/etc/gimprc.in 2019-08-20 13:04:09.109353485 +0200
@@ -153,7 +153,7 @@
# Where to look for fonts in addition to the system-wide installed fonts.
# This is a colon-separated list of folders to search.
#
-# (font-path "${gimp_dir}/fonts:${gimp_data_dir}/fonts")
+(font-path "${gimp_dir}/fonts")
# Specify a default brush. The brush is searched for in the specified brush
# path. This is a string value.

View File

@ -1,12 +0,0 @@
diff -up gimp-2.10.18/etc/gimprc.in.no-phone-home-default gimp-2.10.18/etc/gimprc.in
--- gimp-2.10.18/etc/gimprc.in.no-phone-home-default 2020-02-23 21:15:47.217777581 +0100
+++ gimp-2.10.18/etc/gimprc.in 2020-02-23 21:22:42.416162110 +0100
@@ -393,7 +393,7 @@
# Check for availability of GIMP updates through background internet queries.
# Possible values are yes and no.
#
-# (check-updates yes)
+(check-updates no)
# Timestamp of the last update check. (null)
#

View File

@ -1,12 +0,0 @@
diff -up gimp-2.10.24/etc/gimprc.in.external-help-browser gimp-2.10.24/etc/gimprc.in
--- gimp-2.10.24/etc/gimprc.in.external-help-browser 2021-04-03 00:02:39.312656132 +0200
+++ gimp-2.10.24/etc/gimprc.in 2021-04-03 00:03:27.360453285 +0200
@@ -836,7 +836,7 @@
# Sets the browser used by the help system. Possible values are gimp and
# web-browser.
#
-# (help-browser web-browser)
+(help-browser web-browser)
# When enabled, a search of actions will also return inactive actions.
# Possible values are yes and no.

View File

@ -0,0 +1,48 @@
From 9a3f047f90a79e96af54a73090313a670b2685d3 Mon Sep 17 00:00:00 2001
From: Nils Philippsen <nils@redhat.com>
Date: Mon, 19 Nov 2012 18:26:16 +0100
Subject: [PATCH] patch: cm-system-monitor-profile-by-default
Squashed commit of the following:
commit 1430096d27ba12566739fadf96302c9a4ce8f98b
Author: Nils Philippsen <nils@redhat.com>
Date: Mon Nov 19 18:25:28 2012 +0100
color mgmt: fix syntax error
commit eb78c3a0cfd7ff796110fcd3cd161ca11005fca5
Author: Richard Hughes <hughsient@gmail.com>
Date: Thu Nov 15 12:12:12 2012 +0100
color mgmt: try to use the system monitor profile by default
---
etc/gimprc | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/etc/gimprc b/etc/gimprc
index 8306571..1511cd6 100644
--- a/etc/gimprc
+++ b/etc/gimprc
@@ -285,14 +285,15 @@
# Defines the color management behavior. This is a parameter list.
#
-# (color-management
+(color-management
# (mode display)
-# (display-profile-from-gdk no)
+ (display-profile-from-gdk yes)
# (display-rendering-intent perceptual)
# (simulation-rendering-intent perceptual)
# (simulation-gamut-check no)
# (out-of-gamut-color (color-rgb 0.501961 0.501961 0.501961))
-# (display-module "CdisplayLcms"))
+# (display-module "CdisplayLcms")
+)
# How to handle embedded color profiles when opening a file. Possible values
# are ask, keep and convert.
--
1.7.11.7

View File

@ -0,0 +1,13 @@
diff -urNp old/plug-ins/common/file-gbr.c new/plug-ins/common/file-gbr.c
--- old/plug-ins/common/file-gbr.c 2018-01-04 12:13:17.553757864 +0100
+++ new/plug-ins/common/file-gbr.c 2018-01-04 12:18:01.723635742 +0100
@@ -443,7 +443,8 @@ load_image (const gchar *filename,
{
gchar *temp = g_new (gchar, bn_size);
- if ((read (fd, temp, bn_size)) < bn_size)
+ if ((read (fd, temp, bn_size)) < bn_size ||
+ temp[bn_size - 1] != '\0')
{
g_set_error (error, G_FILE_ERROR, G_FILE_ERROR_FAILED,
_("Error in GIMP brush file '%s'"),

View File

@ -0,0 +1,130 @@
diff -urNp old/plug-ins/file-fli/fli.c new/plug-ins/file-fli/fli.c
--- old/plug-ins/file-fli/fli.c 2018-01-04 12:19:54.714139464 +0100
+++ new/plug-ins/file-fli/fli.c 2018-01-04 12:34:18.568323629 +0100
@@ -25,6 +25,8 @@
#include "config.h"
+#include <glib/gstdio.h>
+
#include <string.h>
#include <stdio.h>
@@ -461,23 +463,27 @@ void fli_read_brun(FILE *f, s_fli_header
unsigned short yc;
unsigned char *pos;
for (yc=0; yc < fli_header->height; yc++) {
- unsigned short xc, pc, pcnt;
+ unsigned short pc, pcnt;
+ size_t n, xc;
pc=fli_read_char(f);
xc=0;
pos=framebuf+(fli_header->width * yc);
+ n=(size_t)fli_header->width * (fli_header->height-yc);
for (pcnt=pc; pcnt>0; pcnt--) {
unsigned short ps;
ps=fli_read_char(f);
if (ps & 0x80) {
unsigned short len;
- for (len=-(signed char)ps; len>0; len--) {
+ for (len=-(signed char)ps; len>0 && xc<n; len--) {
pos[xc++]=fli_read_char(f);
}
} else {
unsigned char val;
+ size_t len;
+ len=MIN(n-xc,ps);
val=fli_read_char(f);
- memset(&(pos[xc]), val, ps);
- xc+=ps;
+ memset(&(pos[xc]), val, len);
+ xc+=len;
}
}
}
@@ -564,25 +570,34 @@ void fli_read_lc(FILE *f, s_fli_header *
memcpy(framebuf, old_framebuf, fli_header->width * fli_header->height);
firstline = fli_read_short(f);
numline = fli_read_short(f);
+ if (numline > fli_header->height || fli_header->height-numline < firstline)
+ return;
+
for (yc=0; yc < numline; yc++) {
- unsigned short xc, pc, pcnt;
+ unsigned short pc, pcnt;
+ size_t n, xc;
pc=fli_read_char(f);
xc=0;
pos=framebuf+(fli_header->width * (firstline+yc));
+ n=(size_t)fli_header->width * (fli_header->height-firstline-yc);
for (pcnt=pc; pcnt>0; pcnt--) {
unsigned short ps,skip;
skip=fli_read_char(f);
ps=fli_read_char(f);
- xc+=skip;
+ xc+=MIN(n-xc,skip);
if (ps & 0x80) {
unsigned char val;
+ size_t len;
ps=-(signed char)ps;
val=fli_read_char(f);
- memset(&(pos[xc]), val, ps);
- xc+=ps;
+ len=MIN(n-xc,ps);
+ memset(&(pos[xc]), val, len);
+ xc+=len;
} else {
- fread(&(pos[xc]), ps, 1, f);
- xc+=ps;
+ size_t len;
+ len=MIN(n-xc,ps);
+ fread(&(pos[xc]), len, 1, f);
+ xc+=len;
}
}
}
@@ -689,7 +704,8 @@ void fli_read_lc_2(FILE *f, s_fli_header
yc=0;
numline = fli_read_short(f);
for (lc=0; lc < numline; lc++) {
- unsigned short xc, pc, pcnt, lpf, lpn;
+ unsigned short pc, pcnt, lpf, lpn;
+ size_t n, xc;
pc=fli_read_short(f);
lpf=0; lpn=0;
while (pc & 0x8000) {
@@ -700,26 +716,30 @@ void fli_read_lc_2(FILE *f, s_fli_header
}
pc=fli_read_short(f);
}
+ yc=MIN(yc, fli_header->height);
xc=0;
pos=framebuf+(fli_header->width * yc);
+ n=(size_t)fli_header->width * (fli_header->height-yc);
for (pcnt=pc; pcnt>0; pcnt--) {
unsigned short ps,skip;
skip=fli_read_char(f);
ps=fli_read_char(f);
- xc+=skip;
+ xc+=MIN(n-xc,skip);
if (ps & 0x80) {
unsigned char v1,v2;
ps=-(signed char)ps;
v1=fli_read_char(f);
v2=fli_read_char(f);
- while (ps>0) {
+ while (ps>0 && xc+1<n) {
pos[xc++]=v1;
pos[xc++]=v2;
ps--;
}
} else {
- fread(&(pos[xc]), ps, 2, f);
- xc+=ps << 1;
+ size_t len;
+ len=MIN((n-xc)/2,ps);
+ fread(&(pos[xc]), len, 2, f);
+ xc+=len << 1;
}
}
if (lpf) pos[xc]=lpn;

View File

@ -0,0 +1,25 @@
diff -urNp old/plug-ins/common/file-tga.c new/plug-ins/common/file-tga.c
--- old/plug-ins/common/file-tga.c 2018-01-04 12:36:22.333754882 +0100
+++ new/plug-ins/common/file-tga.c 2018-01-04 12:40:46.943070295 +0100
@@ -564,12 +564,17 @@ load_image (const gchar *filename,
}
break;
case TGA_TYPE_COLOR:
- if (info.bpp != 15 && info.bpp != 16 &&
- info.bpp != 24 && info.bpp != 32)
+ if ((info.bpp != 15 && info.bpp != 16 &&
+ info.bpp != 24 && info.bpp != 32) ||
+ ((info.bpp == 15 || info.bpp == 24) &&
+ info.alphaBits != 0) ||
+ (info.bpp == 16 && info.alphaBits != 1 &&
+ info.alphaBits != 0) ||
+ (info.bpp == 32 && info.alphaBits != 8))
{
- g_message ("Unhandled sub-format in '%s' (type = %u, bpp = %u)",
+ g_message ("Unhandled sub-format in '%s' (type = %u, bpp = %u, alpha = %u)",
gimp_filename_to_utf8 (filename),
- info.imageType, info.bpp);
+ info.imageType, info.bpp, info.alphaBits);
return -1;
}
break;

View File

@ -0,0 +1,16 @@
diff -urNp old/plug-ins/common/file-psp.c new/plug-ins/common/file-psp.c
--- old/plug-ins/common/file-psp.c 2018-01-04 11:58:46.928253797 +0100
+++ new/plug-ins/common/file-psp.c 2018-01-04 12:03:42.141874067 +0100
@@ -913,6 +913,12 @@ read_creator_block (FILE *f,
g_message ("Error reading creator keyword data");
return -1;
}
+ if (string[length - 1] != '\0')
+ {
+ g_message ("Creator keyword data not nul-terminated");
+ g_free (string);
+ return -1;
+ }
switch (keyword)
{
case PSP_CRTR_FLD_CRT_DATE:

View File

@ -0,0 +1,13 @@
diff -urNp old/app/xcf/xcf.c new/app/xcf/xcf.c
--- old/app/xcf/xcf.c 2017-04-30 23:47:39.000000000 +0200
+++ new/app/xcf/xcf.c 2018-01-04 11:56:31.399888783 +0100
@@ -318,7 +318,8 @@ xcf_load_invoker (GimpProcedure *pr
{
info.file_version = 0;
}
- else if (id[9] == 'v')
+ else if (id[9] == 'v' &&
+ id[13] == '\0')
{
info.file_version = atoi (id + 10);
}

View File

@ -0,0 +1,19 @@
diff -urNp old/plug-ins/common/file-psp.c new/plug-ins/common/file-psp.c
--- old/plug-ins/common/file-psp.c 2018-01-04 12:04:14.636811394 +0100
+++ new/plug-ins/common/file-psp.c 2018-01-04 12:12:41.717877789 +0100
@@ -1777,6 +1777,15 @@ load_image (const gchar *filename,
{
block_start = ftell (f);
+ if (block_start + block_total_len > st.st_size)
+ {
+ g_set_error (error, G_FILE_ERROR, G_FILE_ERROR_FAILED,
+ _("Could not open '%s' for reading: %s"),
+ gimp_filename_to_utf8 (filename),
+ _("invalid block size"));
+ goto error;
+ }
+
if (id == PSP_IMAGE_BLOCK)
{
if (block_number != 0)

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,163 @@
diff -urNp old/plug-ins/pygimp/plug-ins/benchmark-foreground-extract.py new/plug-ins/pygimp/plug-ins/benchmark-foreground-extract.py
--- old/plug-ins/pygimp/plug-ins/benchmark-foreground-extract.py 2018-05-22 13:09:58.522351307 +0200
+++ new/plug-ins/pygimp/plug-ins/benchmark-foreground-extract.py 2018-05-22 13:13:20.132412856 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# Foreground Extraction Benchmark
# Copyright 2005 Sven Neumann <sven@gimp.org>
diff -urNp old/plug-ins/pygimp/plug-ins/clothify.py new/plug-ins/pygimp/plug-ins/clothify.py
--- old/plug-ins/pygimp/plug-ins/clothify.py 2018-05-22 13:09:58.522351307 +0200
+++ new/plug-ins/pygimp/plug-ins/clothify.py 2018-05-22 13:13:30.123366531 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# Gimp-Python - allows the writing of Gimp plugins in Python.
# Copyright (C) 1997 James Henstridge <james@daa.com.au>
diff -urNp old/plug-ins/pygimp/plug-ins/colorxhtml.py new/plug-ins/pygimp/plug-ins/colorxhtml.py
--- old/plug-ins/pygimp/plug-ins/colorxhtml.py 2018-05-22 13:09:58.521351312 +0200
+++ new/plug-ins/pygimp/plug-ins/colorxhtml.py 2018-05-22 13:11:58.188793396 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# Gimp-Python - allows the writing of Gimp plugins in Python.
# Copyright (C) 2003, 2005 Manish Singh <yosh@gimp.org>
diff -urNp old/plug-ins/pygimp/plug-ins/file-openraster.py new/plug-ins/pygimp/plug-ins/file-openraster.py
--- old/plug-ins/pygimp/plug-ins/file-openraster.py 2018-05-22 13:09:58.521351312 +0200
+++ new/plug-ins/pygimp/plug-ins/file-openraster.py 2018-05-22 13:10:57.468076133 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# GIMP Plug-in for the OpenRaster file format
# http://create.freedesktop.org/wiki/OpenRaster
diff -urNp old/plug-ins/pygimp/plug-ins/foggify.py new/plug-ins/pygimp/plug-ins/foggify.py
--- old/plug-ins/pygimp/plug-ins/foggify.py 2018-05-22 13:09:58.522351307 +0200
+++ new/plug-ins/pygimp/plug-ins/foggify.py 2018-05-22 13:11:44.843855476 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# Gimp-Python - allows the writing of Gimp plugins in Python.
# Copyright (C) 1997 James Henstridge <james@daa.com.au>
diff -urNp old/plug-ins/pygimp/plug-ins/gradients-save-as-css.py new/plug-ins/pygimp/plug-ins/gradients-save-as-css.py
--- old/plug-ins/pygimp/plug-ins/gradients-save-as-css.py 2018-05-22 13:09:58.521351312 +0200
+++ new/plug-ins/pygimp/plug-ins/gradients-save-as-css.py 2018-05-22 13:11:34.716902608 +0200
@@ -1,4 +1,4 @@
-#! /usr/bin/env python
+#! /usr/bin/env python2
# -*- coding: utf-8 -*-
# Allows saving (TODO: and loading) CSS gradient files
@@ -101,4 +101,4 @@ register(
menu="<Gradients>",
domain=("gimp20-python", gimp.locale_directory)
)
-main()
\ Chybí znak konce řádku na konci souboru
+main()
diff -urNp old/plug-ins/pygimp/plug-ins/palette-offset.py new/plug-ins/pygimp/plug-ins/palette-offset.py
--- old/plug-ins/pygimp/plug-ins/palette-offset.py 2018-05-22 13:09:58.521351312 +0200
+++ new/plug-ins/pygimp/plug-ins/palette-offset.py 2018-05-22 13:12:38.003608362 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# -*- coding: utf-8 -*-
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff -urNp old/plug-ins/pygimp/plug-ins/palette-sort.py new/plug-ins/pygimp/plug-ins/palette-sort.py
--- old/plug-ins/pygimp/plug-ins/palette-sort.py 2018-05-22 13:09:58.522351307 +0200
+++ new/plug-ins/pygimp/plug-ins/palette-sort.py 2018-05-22 13:11:10.469015537 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff -urNp old/plug-ins/pygimp/plug-ins/palette-to-gradient.py new/plug-ins/pygimp/plug-ins/palette-to-gradient.py
--- old/plug-ins/pygimp/plug-ins/palette-to-gradient.py 2018-05-22 13:09:58.522351307 +0200
+++ new/plug-ins/pygimp/plug-ins/palette-to-gradient.py 2018-05-22 13:10:27.932213923 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff -urNp old/plug-ins/pygimp/plug-ins/py-slice.py new/plug-ins/pygimp/plug-ins/py-slice.py
--- old/plug-ins/pygimp/plug-ins/py-slice.py 2018-05-22 13:09:58.521351312 +0200
+++ new/plug-ins/pygimp/plug-ins/py-slice.py 2018-05-22 13:10:47.796121235 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# -*- coding: utf-8 -*-
#Copyright (c) Manish Singh
diff -urNp old/plug-ins/pygimp/plug-ins/python-console.py new/plug-ins/pygimp/plug-ins/python-console.py
--- old/plug-ins/pygimp/plug-ins/python-console.py 2018-05-22 13:09:58.522351307 +0200
+++ new/plug-ins/pygimp/plug-ins/python-console.py 2018-05-22 13:12:08.532745298 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# Gimp-Python - allows the writing of Gimp plugins in Python.
# Copyright (C) 1997 James Henstridge <james@daa.com.au>
diff -urNp old/plug-ins/pygimp/plug-ins/python-eval.py new/plug-ins/pygimp/plug-ins/python-eval.py
--- old/plug-ins/pygimp/plug-ins/python-eval.py 2018-05-22 13:09:58.522351307 +0200
+++ new/plug-ins/pygimp/plug-ins/python-eval.py 2018-05-22 13:13:44.059301940 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# Gimp-Python - allows the writing of Gimp plugins in Python.
# Copyright (C) 2006 Manish Singh <yosh@gimp.org>
diff -urNp old/plug-ins/pygimp/plug-ins/shadow_bevel.py new/plug-ins/pygimp/plug-ins/shadow_bevel.py
--- old/plug-ins/pygimp/plug-ins/shadow_bevel.py 2018-05-22 13:09:58.521351312 +0200
+++ new/plug-ins/pygimp/plug-ins/shadow_bevel.py 2018-05-22 13:13:56.019246529 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# Gimp-Python - allows the writing of Gimp plugins in Python.
# Copyright (C) 1997 James Henstridge <james@daa.com.au>
diff -urNp old/plug-ins/pygimp/plug-ins/sphere.py new/plug-ins/pygimp/plug-ins/sphere.py
--- old/plug-ins/pygimp/plug-ins/sphere.py 2018-05-22 13:09:58.522351307 +0200
+++ new/plug-ins/pygimp/plug-ins/sphere.py 2018-05-22 13:14:14.564160649 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# Gimp-Python - allows the writing of Gimp plugins in Python.
# Copyright (C) 1997 James Henstridge <james@daa.com.au>
diff -urNp old/plug-ins/pygimp/plug-ins/text-brush.py new/plug-ins/pygimp/plug-ins/text-brush.py
--- old/plug-ins/pygimp/plug-ins/text-brush.py 2018-05-22 13:09:58.521351312 +0200
+++ new/plug-ins/pygimp/plug-ins/text-brush.py 2018-05-22 13:12:49.291555951 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# coding: utf-8
# Author: João Sebastião de Oliveira Bueno
diff -urNp old/plug-ins/pygimp/plug-ins/whirlpinch.py new/plug-ins/pygimp/plug-ins/whirlpinch.py
--- old/plug-ins/pygimp/plug-ins/whirlpinch.py 2018-05-22 13:09:58.521351312 +0200
+++ new/plug-ins/pygimp/plug-ins/whirlpinch.py 2018-05-22 13:14:24.092116544 +0200
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
# Gimp-Python - allows the writing of Gimp plugins in Python.
# Copyright (C) 1997 James Henstridge <james@daa.com.au>
diff -urNp old/configure new/configure
--- old/configure 2018-06-28 08:44:29.162846929 +0200
+++ new/configure 2018-06-28 08:47:06.790148573 +0200
@@ -23051,7 +23051,7 @@ if ${am_cv_pathless_PYTHON+:} false; the
$as_echo_n "(cached) " >&6
else
- for am_cv_pathless_PYTHON in python python2 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do
+ for am_cv_pathless_PYTHON in python2 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do
test "$am_cv_pathless_PYTHON" = none && break
prog="import sys
# split strings by '.' and convert to numeric. Append some zeros

View File

@ -0,0 +1,12 @@
diff -up gimp-2.8.6/etc/gimprc.external-help-browser gimp-2.8.6/etc/gimprc
--- gimp-2.8.6/etc/gimprc.external-help-browser 2013-07-02 12:04:11.011774506 +0200
+++ gimp-2.8.6/etc/gimprc 2013-07-02 12:04:25.408824028 +0200
@@ -671,7 +671,7 @@
# Sets the browser used by the help system. Possible values are gimp and
# web-browser.
#
-# (help-browser gimp)
+(help-browser web-browser)
# When enabled, the online user manual will be used by the help system.
# Otherwise the locally installed copy is used. Possible values are yes and

View File

@ -1,371 +0,0 @@
diff -urNp a/extensions/goat-exercises/goat-exercise-lua.lua b/extensions/goat-exercises/goat-exercise-lua.lua
--- a/extensions/goat-exercises/goat-exercise-lua.lua 2022-03-09 09:39:44.007314944 +0100
+++ b/extensions/goat-exercises/goat-exercise-lua.lua 1970-01-01 01:00:00.000000000 +0100
@@ -1,184 +0,0 @@
-#!/usr/bin/env luajit
-
--- GIMP - The GNU Image Manipulation Program
--- Copyright (C) 1995 Spencer Kimball and Peter Mattis
---
--- goat-exercise-lua.lua
--- Copyright (C) Jehan
---
--- This program is free software: you can redistribute it and/or modify
--- it under the terms of the GNU General Public License as published by
--- the Free Software Foundation; either version 3 of the License, or
--- (at your option) any later version.
---
--- This program is distributed in the hope that it will be useful,
--- but WITHOUT ANY WARRANTY; without even the implied warranty of
--- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
--- GNU General Public License for more details.
---
--- You should have received a copy of the GNU General Public License
--- along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-local lgi = require 'lgi'
-
-local GLib = lgi.GLib
-local GObject = lgi.GObject
-local Gio = lgi.Gio
-local Gegl = lgi.Gegl
-local Gimp = lgi.Gimp
-local GimpUi = lgi.GimpUi
-local Gtk = lgi.Gtk
-local Gdk = lgi.Gdk
-
-local Goat = lgi.package 'Goat'
-local Goat = lgi.Goat
-
-function run(procedure, run_mode, image, drawables, args, run_data)
- -- procedure:new_return_values() crashes LGI so we construct the
- -- GimpValueArray manually.
- local retval = Gimp.ValueArray(1)
-
- if table.getn(drawables) ~= 1 then
- local calling_err = GObject.Value(Gimp.PDBStatusType, Gimp.PDBStatusType.CALLING_ERROR)
- local msg = "Procedure '%s' only works with one drawable."
-
- msg = string.format(msg, procedure:get_name())
-
- retval:append(calling_err)
- retval:append(GObject.Value(GObject.Type.STRING, msg))
- return retval
- end
-
- local drawable = drawables[1]
-
- -- Not sure why run_mode has become a string instead of testing
- -- against Gimp.RunMode.INTERACTIVE.
- if run_mode == "INTERACTIVE" then
- GimpUi.init("goat-exercise-lua");
- local dialog = GimpUi.Dialog {
- title = "Exercise a goat (Lua)",
- role = "goat-exercise-Lua",
- use_header_bar = 1
- }
- dialog:add_button("_Cancel", Gtk.ResponseType.CANCEL);
- dialog:add_button("_Source", Gtk.ResponseType.APPLY);
- dialog:add_button("_OK", Gtk.ResponseType.OK);
-
- local geometry = Gdk.Geometry()
- geometry.min_aspect = 0.5;
- geometry.max_aspect = 1.0;
- dialog:set_geometry_hints (nil, geometry, Gdk.WindowHints.ASPECT);
-
- local box = Gtk.Box {
- orientation = Gtk.Orientation.VERTICAL,
- spacing = 2
- }
- dialog:get_content_area():add(box)
- box:show()
-
- local lang = "Lua"
- local head_text = "This plug-in is an exercise in '%s' to demo plug-in creation.\n" ..
- "Check out the last version of the source code online by clicking the \"Source\" button."
-
- local label = Gtk.Label { label = string.format(head_text, lang) }
- box:pack_start(label, false, false, 1)
- label:show()
-
- local contents = GLib.file_get_contents(arg[0])
- if (contents) then
- local scrolled = Gtk.ScrolledWindow()
- scrolled:set_vexpand (true)
- box:pack_start(scrolled, true, true, 1)
- scrolled:show()
-
- local view = Gtk.TextView()
- view:set_wrap_mode(Gtk.WrapMode.WORD)
- view:set_editable(false)
- local buffer = view:get_buffer()
- buffer:set_text(contents, -1)
- scrolled:add(view)
- view:show()
- end
-
- while (true) do
- local response = dialog:run()
- local url = 'https://gitlab.gnome.org/GNOME/gimp/blob/master/extensions/goat-exercises/goat-exercise-lua.lua'
-
- if response == Gtk.ResponseType.OK then
- dialog:destroy()
- break
- elseif (response == Gtk.ResponseType.APPLY) then
- Gio.app_info_launch_default_for_uri(url, nil);
- else -- CANCEL, CLOSE, DELETE_EVENT
- dialog:destroy()
- local cancel = GObject.Value(Gimp.PDBStatusType, Gimp.PDBStatusType.CANCEL)
- retval:append(cancel)
- return retval
- end
- end
- end
-
- local x, y, width, height = drawable:mask_intersect()
- if width ~= nill and height ~= nil and width > 0 and height > 0 then
- Gegl.init(nil)
-
- local buffer = drawable:get_buffer()
- local shadow_buffer = drawable:get_shadow_buffer()
-
- local graph = Gegl.Node()
- local input = graph:create_child("gegl:buffer-source")
- input:set_property("buffer", GObject.Value(Gegl.Buffer, buffer))
- local invert = graph:create_child("gegl:invert")
- local output = graph:create_child("gegl:write-buffer")
- output:set_property("buffer", GObject.Value(Gegl.Buffer, shadow_buffer))
- input:link(invert)
- invert:link(output)
- output:process()
-
- shadow_buffer:flush()
-
- drawable:merge_shadow(true)
- drawable:update(x, y, width, height)
- Gimp.displays_flush()
- end
-
- local success = GObject.Value(Gimp.PDBStatusType, Gimp.PDBStatusType.SUCCESS)
- retval:append(success)
- return retval
-end
-
-Goat:class('Exercise', Gimp.PlugIn)
-
-function Goat.Exercise:do_query_procedures()
- return { 'plug-in-goat-exercise-lua' }
-end
-
-function Goat.Exercise:do_create_procedure(name)
- local procedure = Gimp.ImageProcedure.new(self, name,
- Gimp.PDBProcType.PLUGIN,
- run, nil)
-
- procedure:set_image_types("*");
- procedure:set_sensitivity_mask(Gimp.ProcedureSensitivityMask.DRAWABLE);
-
- procedure:set_menu_label("Exercise a Lua goat");
- procedure:set_icon_name(GimpUi.ICON_GEGL);
- procedure:add_menu_path('<Image>/Filters/Development/Goat exercises/');
-
- procedure:set_documentation("Exercise a goat in the Lua language",
- "Takes a goat for a walk in Lua",
- name);
- procedure:set_attribution("Jehan", "Jehan", "2019");
-
- return procedure
-end
-
--- 'arg' is a Lua table. When automatically converted to an array, the
--- value 0 is deleted (because Lua arrays start at 1!), which breaks
--- Gimp.main() call. So let's create our own array starting at 1.
-argv = {}
-for k, v in pairs(arg) do
- argv[k+1] = v
-end
-
-Gimp.main(GObject.Type.name(Goat.Exercise), argv)
diff -urNp a/extensions/goat-exercises/Makefile.am b/extensions/goat-exercises/Makefile.am
--- a/extensions/goat-exercises/Makefile.am 2022-03-09 09:39:44.007314944 +0100
+++ b/extensions/goat-exercises/Makefile.am 2022-03-09 10:27:14.623108639 +0100
@@ -72,10 +72,10 @@ endif
# Lua (lua-jit + LGI) version.
-if BUILD_LUA
-goat_exercise_luadir = $(goat_exercise_c_libexecdir)
-goat_exercise_lua_SCRIPTS = goat-exercise-lua.lua
-endif
+#if BUILD_LUA
+#goat_exercise_luadir = $(goat_exercise_c_libexecdir)
+#goat_exercise_lua_SCRIPTS = goat-exercise-lua.lua
+#endif
# Python 3 (pygobject) version.
@@ -135,7 +135,6 @@ org.gimp.extension.goat-exercises.metain
EXTRA_DIST = \
goat-exercise-gjs.js \
- goat-exercise-lua.lua \
goat-exercise-py3.py \
$(appstream_in_files)
diff -urNp a/extensions/goat-exercises/Makefile.in b/extensions/goat-exercises/Makefile.in
--- a/extensions/goat-exercises/Makefile.in 2022-03-09 09:39:44.006314936 +0100
+++ b/extensions/goat-exercises/Makefile.in 2022-03-09 10:28:59.224986448 +0100
@@ -118,7 +118,6 @@ CONFIG_CLEAN_VPATH_FILES =
am__installdirs = "$(DESTDIR)$(goat_exercise_c_libexecdir)" \
"$(DESTDIR)$(goat_exercise_vala_libexecdir)" \
"$(DESTDIR)$(goat_exercise_gjsdir)" \
- "$(DESTDIR)$(goat_exercise_luadir)" \
"$(DESTDIR)$(goat_exercise_py3dir)" "$(DESTDIR)$(appdatadir)" \
"$(DESTDIR)$(goat_exercise_c_libexecdir)" \
"$(DESTDIR)$(goat_exercise_vala_libexecdir)"
@@ -183,7 +182,7 @@ am__uninstall_files_from_dir = { \
|| { echo " ( cd '$$dir' && rm -f" $$files ")"; \
$(am__cd) "$$dir" && rm -f $$files; }; \
}
-SCRIPTS = $(goat_exercise_gjs_SCRIPTS) $(goat_exercise_lua_SCRIPTS) \
+SCRIPTS = $(goat_exercise_gjs_SCRIPTS) \
$(goat_exercise_py3_SCRIPTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
@@ -753,8 +752,8 @@ goat_exercise_c_LDADD = \
@BUILD_JAVASCRIPT_TRUE@goat_exercise_gjs_SCRIPTS = goat-exercise-gjs.js
# Lua (lua-jit + LGI) version.
-@BUILD_LUA_TRUE@goat_exercise_luadir = $(goat_exercise_c_libexecdir)
-@BUILD_LUA_TRUE@goat_exercise_lua_SCRIPTS = goat-exercise-lua.lua
+#@BUILD_LUA_TRUE@goat_exercise_luadir = $(goat_exercise_c_libexecdir)
+#@BUILD_LUA_TRUE@goat_exercise_lua_SCRIPTS = goat-exercise-lua.lua
# Python 3 (pygobject) version.
@BUILD_PYTHON_TRUE@goat_exercise_py3dir = $(goat_exercise_c_libexecdir)
@@ -795,7 +794,6 @@ appdatadir = $(goat_exercise_c_libexecdi
appdata_DATA = $(appstream_files)
EXTRA_DIST = \
goat-exercise-gjs.js \
- goat-exercise-lua.lua \
goat-exercise-py3.py \
$(appstream_in_files)
@@ -977,41 +975,41 @@ uninstall-goat_exercise_gjsSCRIPTS:
files=`for p in $$list; do echo "$$p"; done | \
sed -e 's,.*/,,;$(transform)'`; \
dir='$(DESTDIR)$(goat_exercise_gjsdir)'; $(am__uninstall_files_from_dir)
-install-goat_exercise_luaSCRIPTS: $(goat_exercise_lua_SCRIPTS)
- @$(NORMAL_INSTALL)
- @list='$(goat_exercise_lua_SCRIPTS)'; test -n "$(goat_exercise_luadir)" || list=; \
- if test -n "$$list"; then \
- echo " $(MKDIR_P) '$(DESTDIR)$(goat_exercise_luadir)'"; \
- $(MKDIR_P) "$(DESTDIR)$(goat_exercise_luadir)" || exit 1; \
- fi; \
- for p in $$list; do \
- if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
- if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
- done | \
- sed -e 'p;s,.*/,,;n' \
- -e 'h;s|.*|.|' \
- -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
- $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
- { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
- if ($$2 == $$4) { files[d] = files[d] " " $$1; \
- if (++n[d] == $(am__install_max)) { \
- print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
- else { print "f", d "/" $$4, $$1 } } \
- END { for (d in files) print "f", d, files[d] }' | \
- while read type dir files; do \
- if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
- test -z "$$files" || { \
- echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(goat_exercise_luadir)$$dir'"; \
- $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(goat_exercise_luadir)$$dir" || exit $$?; \
- } \
- ; done
-
-uninstall-goat_exercise_luaSCRIPTS:
- @$(NORMAL_UNINSTALL)
- @list='$(goat_exercise_lua_SCRIPTS)'; test -n "$(goat_exercise_luadir)" || exit 0; \
- files=`for p in $$list; do echo "$$p"; done | \
- sed -e 's,.*/,,;$(transform)'`; \
- dir='$(DESTDIR)$(goat_exercise_luadir)'; $(am__uninstall_files_from_dir)
+#install-goat_exercise_luaSCRIPTS: $(goat_exercise_lua_SCRIPTS)
+# @$(NORMAL_INSTALL)
+# @list='$(goat_exercise_lua_SCRIPTS)'; test -n "$(goat_exercise_luadir)" || list=; \
+# if test -n "$$list"; then \
+# echo " $(MKDIR_P) '$(DESTDIR)$(goat_exercise_luadir)'"; \
+# $(MKDIR_P) "$(DESTDIR)$(goat_exercise_luadir)" || exit 1; \
+# fi; \
+# for p in $$list; do \
+# if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+# if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
+# done | \
+# sed -e 'p;s,.*/,,;n' \
+# -e 'h;s|.*|.|' \
+# -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
+# $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
+# { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+# if ($$2 == $$4) { files[d] = files[d] " " $$1; \
+# if (++n[d] == $(am__install_max)) { \
+# print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
+# else { print "f", d "/" $$4, $$1 } } \
+# END { for (d in files) print "f", d, files[d] }' | \
+# while read type dir files; do \
+# if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+# test -z "$$files" || { \
+# echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(goat_exercise_luadir)$$dir'"; \
+# $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(goat_exercise_luadir)$$dir" || exit $$?; \
+# } \
+# ; done
+
+#uninstall-goat_exercise_luaSCRIPTS:
+# @$(NORMAL_UNINSTALL)
+# @list='$(goat_exercise_lua_SCRIPTS)'; test -n "$(goat_exercise_luadir)" || exit 0; \
+# files=`for p in $$list; do echo "$$p"; done | \
+# sed -e 's,.*/,,;$(transform)'`; \
+# dir='$(DESTDIR)$(goat_exercise_luadir)'; $(am__uninstall_files_from_dir)
install-goat_exercise_py3SCRIPTS: $(goat_exercise_py3_SCRIPTS)
@$(NORMAL_INSTALL)
@list='$(goat_exercise_py3_SCRIPTS)'; test -n "$(goat_exercise_py3dir)" || list=; \
@@ -1266,7 +1264,7 @@ check-am: all-am
check: check-am
all-am: Makefile $(PROGRAMS) $(SCRIPTS) $(DATA)
installdirs:
- for dir in "$(DESTDIR)$(goat_exercise_c_libexecdir)" "$(DESTDIR)$(goat_exercise_vala_libexecdir)" "$(DESTDIR)$(goat_exercise_gjsdir)" "$(DESTDIR)$(goat_exercise_luadir)" "$(DESTDIR)$(goat_exercise_py3dir)" "$(DESTDIR)$(appdatadir)" "$(DESTDIR)$(goat_exercise_c_libexecdir)" "$(DESTDIR)$(goat_exercise_vala_libexecdir)"; do \
+ for dir in "$(DESTDIR)$(goat_exercise_c_libexecdir)" "$(DESTDIR)$(goat_exercise_vala_libexecdir)" "$(DESTDIR)$(goat_exercise_gjsdir)" "$(DESTDIR)$(goat_exercise_py3dir)" "$(DESTDIR)$(appdatadir)" "$(DESTDIR)$(goat_exercise_c_libexecdir)" "$(DESTDIR)$(goat_exercise_vala_libexecdir)"; do \
test -z "$$dir" || $(MKDIR_P) "$$dir"; \
done
install: install-am
@@ -1330,7 +1328,6 @@ info: info-am
info-am:
install-data-am: install-appdataDATA install-goat_exercise_gjsSCRIPTS \
- install-goat_exercise_luaSCRIPTS \
install-goat_exercise_py3SCRIPTS
install-dvi: install-dvi-am
@@ -1385,7 +1382,6 @@ uninstall-am: uninstall-appdataDATA \
uninstall-goat_exercise_c_libexecDATA \
uninstall-goat_exercise_c_libexecPROGRAMS \
uninstall-goat_exercise_gjsSCRIPTS \
- uninstall-goat_exercise_luaSCRIPTS \
uninstall-goat_exercise_py3SCRIPTS \
uninstall-goat_exercise_vala_libexecDATA \
uninstall-goat_exercise_vala_libexecPROGRAMS
@@ -1403,7 +1399,6 @@ uninstall-am: uninstall-appdataDATA \
install-goat_exercise_c_libexecDATA \
install-goat_exercise_c_libexecPROGRAMS \
install-goat_exercise_gjsSCRIPTS \
- install-goat_exercise_luaSCRIPTS \
install-goat_exercise_py3SCRIPTS \
install-goat_exercise_vala_libexecDATA \
install-goat_exercise_vala_libexecPROGRAMS install-html \
@@ -1416,7 +1411,6 @@ uninstall-am: uninstall-appdataDATA \
uninstall-appdataDATA uninstall-goat_exercise_c_libexecDATA \
uninstall-goat_exercise_c_libexecPROGRAMS \
uninstall-goat_exercise_gjsSCRIPTS \
- uninstall-goat_exercise_luaSCRIPTS \
uninstall-goat_exercise_py3SCRIPTS \
uninstall-goat_exercise_vala_libexecDATA \
uninstall-goat_exercise_vala_libexecPROGRAMS

File diff suppressed because it is too large Load Diff