Source: libgphoto2
Version: 2.5.31-2
Severity: serious
Tags: patch pending
Justification: library ABI skew on upgrade
User: debian-...@lists.debian.org
Usertags: time-t

Dear maintainer,

As part of the 64-bit time_t transition required to support 32-bit
architectures in 2038 and beyond
(https://wiki.debian.org/ReleaseGoals/64bit-time), we have identified
libgphoto2 as a source package shipping runtime libraries whose ABI
either is affected by the change in size of time_t, or could not be
analyzed via abi-compliance-checker (and therefore to be on the safe
side we assume is affected).

To ensure that inconsistent combinations of libraries with their
reverse-dependencies are never installed together, it is necessary to
have a library transition, which is most easily done by renaming the
runtime library package.

Since turning on 64-bit time_t is being handled centrally through a change
to the default dpkg-buildflags (https://bugs.debian.org/1037136), it is
important that libraries affected by this ABI change all be uploaded close
together in time.  Therefore I have prepared a 0-day NMU for libgphoto2
which will initially be uploaded to experimental if possible, then to
unstable after packages have cleared binary NEW.

Please find the patch for this NMU attached.

If you have any concerns about this patch, please reach out ASAP.  Although
this package will be uploaded to experimental immediately, there will be a
period of several days before we begin uploads to unstable; so if information
becomes available that your package should not be included in the transition,
there is time for us to amend the planned uploads.



-- System Information:
Debian Release: trixie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 6.5.0-14-generic (SMP w/12 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE
Locale: LANG=C, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
diff -Nru libgphoto2-2.5.31/debian/changelog libgphoto2-2.5.31/debian/changelog
--- libgphoto2-2.5.31/debian/changelog  2023-12-06 17:46:28.000000000 +0000
+++ libgphoto2-2.5.31/debian/changelog  2024-02-01 01:54:58.000000000 +0000
@@ -1,3 +1,10 @@
+libgphoto2 (2.5.31-2.1) experimental; urgency=medium
+
+  * Non-maintainer upload.
+  * Rename libraries for 64-bit time_t transition.
+
+ -- Steve Langasek <vor...@debian.org>  Thu, 01 Feb 2024 01:54:58 +0000
+
 libgphoto2 (2.5.31-2) unstable; urgency=medium
 
   [ Andreas Metzler ]
diff -Nru libgphoto2-2.5.31/debian/control libgphoto2-2.5.31/debian/control
--- libgphoto2-2.5.31/debian/control    2023-12-01 06:32:29.000000000 +0000
+++ libgphoto2-2.5.31/debian/control    2024-02-01 01:54:58.000000000 +0000
@@ -32,7 +32,7 @@
 Architecture: any
 Multi-Arch: same
 Depends: libexif-dev,
-         libgphoto2-6 (= ${binary:Version}),
+         libgphoto2-6t64 (= ${binary:Version}),
          pkg-config,
          ${misc:Depends}
 Breaks: libgphoto2-2-dev (<< 2.5.2-1~)
@@ -57,11 +57,12 @@
  .
  This package contains the development documentation.
 
-Package: libgphoto2-port12
+Package: libgphoto2-port12t64
+Provides: ${t64:Provides}
 Architecture: any
 Multi-Arch: same
-Breaks: libgphoto2-port10 (>= 2.5.7)
-Replaces: libgphoto2-port10 (>= 2.5.7)
+Breaks: libgphoto2-port12 (<< ${source:Version}), libgphoto2-port10 (>= 2.5.7)
+Replaces: libgphoto2-port12, libgphoto2-port10 (>= 2.5.7)
 Pre-Depends: ${misc:Pre-Depends}
 Depends: ${misc:Depends}, ${shlibs:Depends}
 Suggests: gphoto2
@@ -72,7 +73,10 @@
  .
  This package contains the runtime code for port access.
 
-Package: libgphoto2-6
+Package: libgphoto2-6t64
+Provides: ${t64:Provides}
+Replaces: libgphoto2-6
+Breaks: libgphoto2-6 (<< ${source:Version})
 Architecture: any
 Multi-Arch: same
 Pre-Depends: ${misc:Pre-Depends}
diff -Nru 
libgphoto2-2.5.31/debian/libgphoto2-6/usr/lib/udev/hwdb.d/20-libgphoto2-6.hwdb 
libgphoto2-2.5.31/debian/libgphoto2-6/usr/lib/udev/hwdb.d/20-libgphoto2-6.hwdb
--- 
libgphoto2-2.5.31/debian/libgphoto2-6/usr/lib/udev/hwdb.d/20-libgphoto2-6.hwdb  
    1970-01-01 00:00:00.000000000 +0000
+++ 
libgphoto2-2.5.31/debian/libgphoto2-6/usr/lib/udev/hwdb.d/20-libgphoto2-6.hwdb  
    2024-02-01 01:54:58.000000000 +0000
@@ -0,0 +1 @@
+# hardware database file for libgphoto2 devices
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6.README.Debian 
libgphoto2-2.5.31/debian/libgphoto2-6.README.Debian
--- libgphoto2-2.5.31/debian/libgphoto2-6.README.Debian 2023-12-01 
06:32:29.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6.README.Debian 1970-01-01 
00:00:00.000000000 +0000
@@ -1,33 +0,0 @@
-Using libgphoto2 as a normal user
----------------------------------
-
-This version of libgphoto2-installs udev files in /lib/udev/rules.d/ to
-allow camera access to all members of group 'plugdev'.
-
-This means the only configuration is to add authorized users to the 'plugdev'
-group.  Note that group changes will only apply when you relog.
-
-udev may fail to set group ownership for cameras that are not explicitly known
-by gphoto2, if you know your camera is a generic PTP model not handled by udev,
-you can create a file in /etc/udev/rules.d/, say z25_my_camera.rules, with such
-a content:
-
-ACTION=="add", SYSFS{idVendor}=="XXXX", SYSFS{idProduct}=="YYYY", \
-  MODE="0660", GROUP="plugdev"
-
-You can get XXXX and YYYY value with lsusb, for example:
-
-  Bus 001 Device 010: ID 04a9:3125 Canon, Inc.
-                         ^^^^ ^^^^
-                        XXXX YYYY
-
-You can also send the USB ID as a Debian bug report or to gphoto2 development
-mailing list at gphoto-de...@lists.sourceforge.net
-
-Note: before 2.2.1-9, the group was not 'plugdev' but 'camera'.
-
-Note: 2.5.23 has OUTDATED.txt file. The camlibs for cameras (and driver) older
-      than 15 years have been default disabled for installation. Please see
-      the changelog file for more information.
-      /usr/share/doc/libgphoto2-6/OUTDATED.txt
-      /usr/share/doc/libgphoto2-6/changelog.gz
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6.install 
libgphoto2-2.5.31/debian/libgphoto2-6.install
--- libgphoto2-2.5.31/debian/libgphoto2-6.install       2023-12-01 
06:32:29.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6.install       1970-01-01 
00:00:00.000000000 +0000
@@ -1,7 +0,0 @@
-# Watch out: $(major) from debian/rules is seen here, target directory is 
libgphoto2-$(major):
-usr/lib/*/libgphoto2.so.*
-usr/lib/*/libgphoto2/*/*.so
-usr/share/doc/libgphoto2/README.md usr/share/doc/libgphoto2-6
-OUTDATED.txt usr/share/doc/libgphoto2-6
-usr/share/doc/libgphoto2/camlibs/ usr/share/doc/libgphoto2-6
-debian/libgphoto2.metainfo.xml /usr/share/metainfo/
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6.lintian-overrides 
libgphoto2-2.5.31/debian/libgphoto2-6.lintian-overrides
--- libgphoto2-2.5.31/debian/libgphoto2-6.lintian-overrides     2023-12-06 
17:44:04.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6.lintian-overrides     1970-01-01 
00:00:00.000000000 +0000
@@ -1,13 +0,0 @@
-# "Optio" is a camera model
-libgphoto2-6: spelling-error-in-binary Optio Option 
[usr/lib/*/libgphoto2/*/sierra.so]
-
-# "Lumix WiH" appears in the .text section as a specialization of
-# strcpy(id->text, "Lumix Wifi") using immediate values.  The letter
-# "H" is part of the next machine instruction, "ifi\0" follows shortly.
-libgphoto2-6: spelling-error-in-binary WiH With 
[usr/lib/*/libgphoto2/*/lumix.so]
-
-# begin-remove-after: released:forky
-# protective diversion for upgrades of files moved from / to /usr
-libgphoto2-6: diversion-for-unknown-file lib/udev/hwdb.d/20-libgphoto2-6.hwdb 
[preinst:*]
-libgphoto2-6: diversion-for-unknown-file 
lib/udev/rules.d/60-libgphoto2-6.rules [preinst:*]
-# end-remove-after
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6.postinst 
libgphoto2-2.5.31/debian/libgphoto2-6.postinst
--- libgphoto2-2.5.31/debian/libgphoto2-6.postinst      2023-12-06 
17:44:04.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6.postinst      1970-01-01 
00:00:00.000000000 +0000
@@ -1,19 +0,0 @@
-#! /bin/sh
-
-set -e
-
-# begin-remove-after: released:forky
-# protective diversion of files moved from / to /usr, to avoid file loss.
-# Only for upgrades.
-if [ "$1" = "configure" ]; then
-    # At this point, the package will have installed the same file in */usr*.
-    dpkg-divert --package usr-is-merged --no-rename \
-        --divert /lib/udev/hwdb.d/20-libgphoto2-6.hwdb.usr-is-merged \
-        --remove /lib/udev/hwdb.d/20-libgphoto2-6.hwdb
-    dpkg-divert --package usr-is-merged --no-rename \
-        --divert /lib/udev/rules.d/60-libgphoto2-6.rules.usr-is-merged \
-        --remove /lib/udev/rules.d/60-libgphoto2-6.rules
-fi
-# end-remove-after
-
-#DEBHELPER#
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6.postrm 
libgphoto2-2.5.31/debian/libgphoto2-6.postrm
--- libgphoto2-2.5.31/debian/libgphoto2-6.postrm        2023-12-06 
17:44:04.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6.postrm        1970-01-01 
00:00:00.000000000 +0000
@@ -1,19 +0,0 @@
-#!/bin/sh
-set -e
-
-# begin-remove-after: released:forky
-# protective diversion of files moved from / to /usr, to avoid file loss.
-# Only for upgrades.
-if [ "$1" = "remove" ] && [ "$DPKG_MAINTSCRIPT_PACKAGE_REFCOUNT" = "1" ]; then
-    # Cleanup in case package is removed before upgrade is finished (postinst 
ran).
-    dpkg-divert --package usr-is-merged --no-rename \
-        --divert /lib/udev/hwdb.d/20-libgphoto2-6.hwdb.usr-is-merged \
-        --remove /lib/udev/hwdb.d/20-libgphoto2-6.hwdb
-    dpkg-divert --package usr-is-merged --no-rename \
-        --divert /lib/udev/rules.d/60-libgphoto2-6.rules.usr-is-merged \
-        --remove /lib/udev/rules.d/60-libgphoto2-6.rules
-fi
-# end-remove-after
-
-#DEBHELPER#
-
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6.preinst 
libgphoto2-2.5.31/debian/libgphoto2-6.preinst
--- libgphoto2-2.5.31/debian/libgphoto2-6.preinst       2023-12-06 
17:44:04.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6.preinst       1970-01-01 
00:00:00.000000000 +0000
@@ -1,18 +0,0 @@
-#!/bin/sh
-set -e
-
-# begin-remove-after: released:forky
-# protective diversion of files moved from / to /usr, to avoid file loss.
-# Only for upgrades.
-if [ "$1" = "upgrade" ]; then
-    dpkg-divert --package usr-is-merged --no-rename \
-        --divert /lib/udev/hwdb.d/20-libgphoto2-6.hwdb.usr-is-merged \
-        --add /lib/udev/hwdb.d/20-libgphoto2-6.hwdb
-    dpkg-divert --package usr-is-merged --no-rename \
-        --divert /lib/udev/rules.d/60-libgphoto2-6.rules.usr-is-merged \
-        --add /lib/udev/rules.d/60-libgphoto2-6.rules
-fi
-# end-remove-after
-
-#DEBHELPER#
-
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6.symbols 
libgphoto2-2.5.31/debian/libgphoto2-6.symbols
--- libgphoto2-2.5.31/debian/libgphoto2-6.symbols       2023-12-01 
06:32:29.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6.symbols       1970-01-01 
00:00:00.000000000 +0000
@@ -1,192 +0,0 @@
-libgphoto2.so.6 libgphoto2-6 #MINVER#
-* Build-Depends-Package: libgphoto2-dev
- gp_abilities_list_append@Base 2.5.10
- gp_abilities_list_count@Base 2.5.10
- gp_abilities_list_detect@Base 2.5.10
- gp_abilities_list_free@Base 2.5.10
- gp_abilities_list_get_abilities@Base 2.5.10
- gp_abilities_list_load@Base 2.5.10
- gp_abilities_list_load_dir@Base 2.5.10
- gp_abilities_list_lookup_model@Base 2.5.10
- gp_abilities_list_new@Base 2.5.10
- gp_abilities_list_reset@Base 2.5.10
- gp_ahd_decode@Base 2.5.10
- gp_ahd_interpolate@Base 2.5.10
- gp_bayer_decode@Base 2.5.10
- gp_bayer_expand@Base 2.5.10
- gp_bayer_interpolate@Base 2.5.10
- gp_camera_autodetect@Base 2.5.10
- gp_camera_capture@Base 2.5.10
- gp_camera_capture_preview@Base 2.5.10
- gp_camera_exit@Base 2.5.10
- gp_camera_file_delete@Base 2.5.10
- gp_camera_file_get@Base 2.5.10
- gp_camera_file_get_info@Base 2.5.10
- gp_camera_file_read@Base 2.5.10
- gp_camera_file_set_info@Base 2.5.10
- gp_camera_folder_delete_all@Base 2.5.10
- gp_camera_folder_list_files@Base 2.5.10
- gp_camera_folder_list_folders@Base 2.5.10
- gp_camera_folder_make_dir@Base 2.5.10
- gp_camera_folder_put_file@Base 2.5.10
- gp_camera_folder_remove_dir@Base 2.5.10
- gp_camera_free@Base 2.5.10
- gp_camera_get_abilities@Base 2.5.10
- gp_camera_get_about@Base 2.5.10
- gp_camera_get_config@Base 2.5.10
- gp_camera_get_manual@Base 2.5.10
- gp_camera_get_port_info@Base 2.5.10
- gp_camera_get_port_speed@Base 2.5.10
- gp_camera_get_single_config@Base 2.5.10
- gp_camera_get_storageinfo@Base 2.5.10
- gp_camera_get_summary@Base 2.5.10
- gp_camera_init@Base 2.5.10
- gp_camera_list_config@Base 2.5.10
- gp_camera_new@Base 2.5.10
- gp_camera_ref@Base 2.5.10
- gp_camera_set_abilities@Base 2.5.10
- gp_camera_set_config@Base 2.5.10
- gp_camera_set_port_info@Base 2.5.10
- gp_camera_set_port_speed@Base 2.5.10
- gp_camera_set_single_config@Base 2.5.10
- gp_camera_set_timeout_funcs@Base 2.5.10
- gp_camera_start_timeout@Base 2.5.10
- gp_camera_stop_timeout@Base 2.5.10
- gp_camera_trigger_capture@Base 2.5.10
- gp_camera_unref@Base 2.5.10
- gp_camera_wait_for_event@Base 2.5.10
- gp_context_cancel@Base 2.5.10
- gp_context_error@Base 2.5.10
- gp_context_idle@Base 2.5.10
- gp_context_message@Base 2.5.10
- gp_context_new@Base 2.5.10
- gp_context_progress_start@Base 2.5.10
- gp_context_progress_stop@Base 2.5.10
- gp_context_progress_update@Base 2.5.10
- gp_context_question@Base 2.5.10
- gp_context_ref@Base 2.5.10
- gp_context_set_cancel_func@Base 2.5.10
- gp_context_set_error_func@Base 2.5.10
- gp_context_set_idle_func@Base 2.5.10
- gp_context_set_message_func@Base 2.5.10
- gp_context_set_progress_funcs@Base 2.5.10
- gp_context_set_question_func@Base 2.5.10
- gp_context_set_status_func@Base 2.5.10
- gp_context_status@Base 2.5.10
- gp_context_unref@Base 2.5.10
- gp_file_adjust_name_for_mime_type@Base 2.5.10
- gp_file_append@Base 2.5.10
- gp_file_clean@Base 2.5.10
- gp_file_copy@Base 2.5.10
- gp_file_detect_mime_type@Base 2.5.10
- gp_file_free@Base 2.5.10
- gp_file_get_data_and_size@Base 2.5.10
- gp_file_get_mime_type@Base 2.5.10
- gp_file_get_mtime@Base 2.5.10
- gp_file_get_name@Base 2.5.10
- gp_file_get_name_by_type@Base 2.5.10
- gp_file_new@Base 2.5.10
- gp_file_new_from_fd@Base 2.5.10
- gp_file_new_from_handler@Base 2.5.10
- gp_file_open@Base 2.5.10
- gp_file_ref@Base 2.5.10
- gp_file_save@Base 2.5.10
- gp_file_set_data_and_size@Base 2.5.10
- gp_file_set_mime_type@Base 2.5.10
- gp_file_set_mtime@Base 2.5.10
- gp_file_set_name@Base 2.5.10
- gp_file_slurp@Base 2.5.10
- gp_file_unref@Base 2.5.10
- gp_filesystem_append@Base 2.5.10
- gp_filesystem_count@Base 2.5.10
- gp_filesystem_delete_all@Base 2.5.10
- gp_filesystem_delete_file@Base 2.5.10
- gp_filesystem_delete_file_noop@Base 2.5.10
- gp_filesystem_dump@Base 2.5.10
- gp_filesystem_free@Base 2.5.10
- gp_filesystem_get_file@Base 2.5.10
- gp_filesystem_get_folder@Base 2.5.10
- gp_filesystem_get_info@Base 2.5.10
- gp_filesystem_list_files@Base 2.5.10
- gp_filesystem_list_folders@Base 2.5.10
- gp_filesystem_make_dir@Base 2.5.10
- gp_filesystem_name@Base 2.5.10
- gp_filesystem_new@Base 2.5.10
- gp_filesystem_number@Base 2.5.10
- gp_filesystem_put_file@Base 2.5.10
- gp_filesystem_read_file@Base 2.5.10
- gp_filesystem_remove_dir@Base 2.5.10
- gp_filesystem_reset@Base 2.5.10
- gp_filesystem_set_file_noop@Base 2.5.10
- gp_filesystem_set_funcs@Base 2.5.10
- gp_filesystem_set_info@Base 2.5.10
- gp_filesystem_set_info_dirty@Base 2.5.28
- gp_filesystem_set_info_noop@Base 2.5.10
- gp_gamma_correct_single@Base 2.5.10
- gp_gamma_fill_table@Base 2.5.10
- gp_init_localedir@Base 2.5.30
- gp_library_version@Base 2.5.10
- gp_list_append@Base 2.5.10
- gp_list_count@Base 2.5.10
- gp_list_find_by_name@Base 2.5.10
- gp_list_free@Base 2.5.10
- gp_list_get_name@Base 2.5.10
- gp_list_get_value@Base 2.5.10
- gp_list_new@Base 2.5.10
- gp_list_populate@Base 2.5.10
- gp_list_ref@Base 2.5.10
- gp_list_reset@Base 2.5.10
- gp_list_set_name@Base 2.5.10
- gp_list_set_value@Base 2.5.10
- gp_list_sort@Base 2.5.10
- gp_list_unref@Base 2.5.10
- gp_message_codeset@Base 2.5.10
- gp_result_as_string@Base 2.5.10
- gp_setting_get@Base 2.5.10
- gp_setting_set@Base 2.5.10
- gp_widget_add_choice@Base 2.5.10
- gp_widget_append@Base 2.5.10
- gp_widget_changed@Base 2.5.10
- gp_widget_count_children@Base 2.5.10
- gp_widget_count_choices@Base 2.5.10
- gp_widget_free@Base 2.5.10
- gp_widget_get_child@Base 2.5.10
- gp_widget_get_child_by_id@Base 2.5.10
- gp_widget_get_child_by_label@Base 2.5.10
- gp_widget_get_child_by_name@Base 2.5.10
- gp_widget_get_choice@Base 2.5.10
- gp_widget_get_id@Base 2.5.10
- gp_widget_get_info@Base 2.5.10
- gp_widget_get_label@Base 2.5.10
- gp_widget_get_name@Base 2.5.10
- gp_widget_get_parent@Base 2.5.10
- gp_widget_get_range@Base 2.5.10
- gp_widget_get_readonly@Base 2.5.10
- gp_widget_get_root@Base 2.5.10
- gp_widget_get_type@Base 2.5.10
- gp_widget_get_value@Base 2.5.10
- gp_widget_new@Base 2.5.10
- gp_widget_prepend@Base 2.5.10
- gp_widget_ref@Base 2.5.10
- gp_widget_set_changed@Base 2.5.10
- gp_widget_set_info@Base 2.5.10
- gp_widget_set_name@Base 2.5.10
- gp_widget_set_range@Base 2.5.10
- gp_widget_set_readonly@Base 2.5.10
- gp_widget_set_value@Base 2.5.10
- gp_widget_unref@Base 2.5.10
- gpi_camera_driver_status_map@Base 2.5.10
- gpi_camera_operation_map@Base 2.5.10
- gpi_exif_get_thumbnail_and_size@Base 2.5.10
- gpi_exif_stat@Base 2.5.10
- gpi_file_operation_map@Base 2.5.10
- gpi_folder_operation_map@Base 2.5.10
- gpi_gphoto_device_type_map@Base 2.5.10
- gpi_jpeg_add_marker@Base 2.5.10
- gpi_jpeg_chunk_destroy@Base 2.5.10
- gpi_jpeg_chunk_new@Base 2.5.10
- gpi_jpeg_chunk_new_filled@Base 2.5.10
- gpi_jpeg_chunk_print@Base 2.5.10
- gpi_jpeg_destroy@Base 2.5.10
- gpi_jpeg_header@Base 2.5.10
- gpi_jpeg_write@Base 2.5.10
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6t64.README.Debian 
libgphoto2-2.5.31/debian/libgphoto2-6t64.README.Debian
--- libgphoto2-2.5.31/debian/libgphoto2-6t64.README.Debian      1970-01-01 
00:00:00.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6t64.README.Debian      2023-12-01 
06:32:29.000000000 +0000
@@ -0,0 +1,33 @@
+Using libgphoto2 as a normal user
+---------------------------------
+
+This version of libgphoto2-installs udev files in /lib/udev/rules.d/ to
+allow camera access to all members of group 'plugdev'.
+
+This means the only configuration is to add authorized users to the 'plugdev'
+group.  Note that group changes will only apply when you relog.
+
+udev may fail to set group ownership for cameras that are not explicitly known
+by gphoto2, if you know your camera is a generic PTP model not handled by udev,
+you can create a file in /etc/udev/rules.d/, say z25_my_camera.rules, with such
+a content:
+
+ACTION=="add", SYSFS{idVendor}=="XXXX", SYSFS{idProduct}=="YYYY", \
+  MODE="0660", GROUP="plugdev"
+
+You can get XXXX and YYYY value with lsusb, for example:
+
+  Bus 001 Device 010: ID 04a9:3125 Canon, Inc.
+                         ^^^^ ^^^^
+                        XXXX YYYY
+
+You can also send the USB ID as a Debian bug report or to gphoto2 development
+mailing list at gphoto-de...@lists.sourceforge.net
+
+Note: before 2.2.1-9, the group was not 'plugdev' but 'camera'.
+
+Note: 2.5.23 has OUTDATED.txt file. The camlibs for cameras (and driver) older
+      than 15 years have been default disabled for installation. Please see
+      the changelog file for more information.
+      /usr/share/doc/libgphoto2-6/OUTDATED.txt
+      /usr/share/doc/libgphoto2-6/changelog.gz
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6t64.install 
libgphoto2-2.5.31/debian/libgphoto2-6t64.install
--- libgphoto2-2.5.31/debian/libgphoto2-6t64.install    1970-01-01 
00:00:00.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6t64.install    2023-12-01 
06:32:29.000000000 +0000
@@ -0,0 +1,7 @@
+# Watch out: $(major) from debian/rules is seen here, target directory is 
libgphoto2-$(major):
+usr/lib/*/libgphoto2.so.*
+usr/lib/*/libgphoto2/*/*.so
+usr/share/doc/libgphoto2/README.md usr/share/doc/libgphoto2-6
+OUTDATED.txt usr/share/doc/libgphoto2-6
+usr/share/doc/libgphoto2/camlibs/ usr/share/doc/libgphoto2-6
+debian/libgphoto2.metainfo.xml /usr/share/metainfo/
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6t64.lintian-overrides 
libgphoto2-2.5.31/debian/libgphoto2-6t64.lintian-overrides
--- libgphoto2-2.5.31/debian/libgphoto2-6t64.lintian-overrides  1970-01-01 
00:00:00.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6t64.lintian-overrides  2024-02-01 
01:54:57.000000000 +0000
@@ -0,0 +1,14 @@
+# "Optio" is a camera model
+libgphoto2-6t64: spelling-error-in-binary Optio Option 
[usr/lib/*/libgphoto2/*/sierra.so]
+
+# "Lumix WiH" appears in the .text section as a specialization of
+# strcpy(id->text, "Lumix Wifi") using immediate values.  The letter
+# "H" is part of the next machine instruction, "ifi\0" follows shortly.
+libgphoto2-6t64: spelling-error-in-binary WiH With 
[usr/lib/*/libgphoto2/*/lumix.so]
+
+# begin-remove-after: released:forky
+# protective diversion for upgrades of files moved from / to /usr
+libgphoto2-6t64: diversion-for-unknown-file 
lib/udev/hwdb.d/20-libgphoto2-6t64.hwdb [preinst:*]
+libgphoto2-6t64: diversion-for-unknown-file 
lib/udev/rules.d/60-libgphoto2-6t64.rules [preinst:*]
+# end-remove-after
+libgphoto2-6t64: package-name-doesnt-match-sonames libgphoto2-6
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6t64.postinst 
libgphoto2-2.5.31/debian/libgphoto2-6t64.postinst
--- libgphoto2-2.5.31/debian/libgphoto2-6t64.postinst   1970-01-01 
00:00:00.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6t64.postinst   2023-12-06 
17:44:04.000000000 +0000
@@ -0,0 +1,19 @@
+#! /bin/sh
+
+set -e
+
+# begin-remove-after: released:forky
+# protective diversion of files moved from / to /usr, to avoid file loss.
+# Only for upgrades.
+if [ "$1" = "configure" ]; then
+    # At this point, the package will have installed the same file in */usr*.
+    dpkg-divert --package usr-is-merged --no-rename \
+        --divert /lib/udev/hwdb.d/20-libgphoto2-6.hwdb.usr-is-merged \
+        --remove /lib/udev/hwdb.d/20-libgphoto2-6.hwdb
+    dpkg-divert --package usr-is-merged --no-rename \
+        --divert /lib/udev/rules.d/60-libgphoto2-6.rules.usr-is-merged \
+        --remove /lib/udev/rules.d/60-libgphoto2-6.rules
+fi
+# end-remove-after
+
+#DEBHELPER#
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6t64.postrm 
libgphoto2-2.5.31/debian/libgphoto2-6t64.postrm
--- libgphoto2-2.5.31/debian/libgphoto2-6t64.postrm     1970-01-01 
00:00:00.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6t64.postrm     2023-12-06 
17:44:04.000000000 +0000
@@ -0,0 +1,19 @@
+#!/bin/sh
+set -e
+
+# begin-remove-after: released:forky
+# protective diversion of files moved from / to /usr, to avoid file loss.
+# Only for upgrades.
+if [ "$1" = "remove" ] && [ "$DPKG_MAINTSCRIPT_PACKAGE_REFCOUNT" = "1" ]; then
+    # Cleanup in case package is removed before upgrade is finished (postinst 
ran).
+    dpkg-divert --package usr-is-merged --no-rename \
+        --divert /lib/udev/hwdb.d/20-libgphoto2-6.hwdb.usr-is-merged \
+        --remove /lib/udev/hwdb.d/20-libgphoto2-6.hwdb
+    dpkg-divert --package usr-is-merged --no-rename \
+        --divert /lib/udev/rules.d/60-libgphoto2-6.rules.usr-is-merged \
+        --remove /lib/udev/rules.d/60-libgphoto2-6.rules
+fi
+# end-remove-after
+
+#DEBHELPER#
+
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6t64.preinst 
libgphoto2-2.5.31/debian/libgphoto2-6t64.preinst
--- libgphoto2-2.5.31/debian/libgphoto2-6t64.preinst    1970-01-01 
00:00:00.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6t64.preinst    2023-12-06 
17:44:04.000000000 +0000
@@ -0,0 +1,18 @@
+#!/bin/sh
+set -e
+
+# begin-remove-after: released:forky
+# protective diversion of files moved from / to /usr, to avoid file loss.
+# Only for upgrades.
+if [ "$1" = "upgrade" ]; then
+    dpkg-divert --package usr-is-merged --no-rename \
+        --divert /lib/udev/hwdb.d/20-libgphoto2-6.hwdb.usr-is-merged \
+        --add /lib/udev/hwdb.d/20-libgphoto2-6.hwdb
+    dpkg-divert --package usr-is-merged --no-rename \
+        --divert /lib/udev/rules.d/60-libgphoto2-6.rules.usr-is-merged \
+        --add /lib/udev/rules.d/60-libgphoto2-6.rules
+fi
+# end-remove-after
+
+#DEBHELPER#
+
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-6t64.symbols 
libgphoto2-2.5.31/debian/libgphoto2-6t64.symbols
--- libgphoto2-2.5.31/debian/libgphoto2-6t64.symbols    1970-01-01 
00:00:00.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-6t64.symbols    2024-02-01 
01:54:57.000000000 +0000
@@ -0,0 +1,192 @@
+libgphoto2.so.6 libgphoto2-6t64 #MINVER#
+* Build-Depends-Package: libgphoto2-dev
+ gp_abilities_list_append@Base 2.5.10
+ gp_abilities_list_count@Base 2.5.10
+ gp_abilities_list_detect@Base 2.5.10
+ gp_abilities_list_free@Base 2.5.10
+ gp_abilities_list_get_abilities@Base 2.5.10
+ gp_abilities_list_load@Base 2.5.10
+ gp_abilities_list_load_dir@Base 2.5.10
+ gp_abilities_list_lookup_model@Base 2.5.10
+ gp_abilities_list_new@Base 2.5.10
+ gp_abilities_list_reset@Base 2.5.10
+ gp_ahd_decode@Base 2.5.10
+ gp_ahd_interpolate@Base 2.5.10
+ gp_bayer_decode@Base 2.5.10
+ gp_bayer_expand@Base 2.5.10
+ gp_bayer_interpolate@Base 2.5.10
+ gp_camera_autodetect@Base 2.5.10
+ gp_camera_capture@Base 2.5.10
+ gp_camera_capture_preview@Base 2.5.10
+ gp_camera_exit@Base 2.5.10
+ gp_camera_file_delete@Base 2.5.10
+ gp_camera_file_get@Base 2.5.10
+ gp_camera_file_get_info@Base 2.5.10
+ gp_camera_file_read@Base 2.5.10
+ gp_camera_file_set_info@Base 2.5.10
+ gp_camera_folder_delete_all@Base 2.5.10
+ gp_camera_folder_list_files@Base 2.5.10
+ gp_camera_folder_list_folders@Base 2.5.10
+ gp_camera_folder_make_dir@Base 2.5.10
+ gp_camera_folder_put_file@Base 2.5.10
+ gp_camera_folder_remove_dir@Base 2.5.10
+ gp_camera_free@Base 2.5.10
+ gp_camera_get_abilities@Base 2.5.10
+ gp_camera_get_about@Base 2.5.10
+ gp_camera_get_config@Base 2.5.10
+ gp_camera_get_manual@Base 2.5.10
+ gp_camera_get_port_info@Base 2.5.10
+ gp_camera_get_port_speed@Base 2.5.10
+ gp_camera_get_single_config@Base 2.5.10
+ gp_camera_get_storageinfo@Base 2.5.10
+ gp_camera_get_summary@Base 2.5.10
+ gp_camera_init@Base 2.5.10
+ gp_camera_list_config@Base 2.5.10
+ gp_camera_new@Base 2.5.10
+ gp_camera_ref@Base 2.5.10
+ gp_camera_set_abilities@Base 2.5.10
+ gp_camera_set_config@Base 2.5.10
+ gp_camera_set_port_info@Base 2.5.10
+ gp_camera_set_port_speed@Base 2.5.10
+ gp_camera_set_single_config@Base 2.5.10
+ gp_camera_set_timeout_funcs@Base 2.5.10
+ gp_camera_start_timeout@Base 2.5.10
+ gp_camera_stop_timeout@Base 2.5.10
+ gp_camera_trigger_capture@Base 2.5.10
+ gp_camera_unref@Base 2.5.10
+ gp_camera_wait_for_event@Base 2.5.10
+ gp_context_cancel@Base 2.5.10
+ gp_context_error@Base 2.5.10
+ gp_context_idle@Base 2.5.10
+ gp_context_message@Base 2.5.10
+ gp_context_new@Base 2.5.10
+ gp_context_progress_start@Base 2.5.10
+ gp_context_progress_stop@Base 2.5.10
+ gp_context_progress_update@Base 2.5.10
+ gp_context_question@Base 2.5.10
+ gp_context_ref@Base 2.5.10
+ gp_context_set_cancel_func@Base 2.5.10
+ gp_context_set_error_func@Base 2.5.10
+ gp_context_set_idle_func@Base 2.5.10
+ gp_context_set_message_func@Base 2.5.10
+ gp_context_set_progress_funcs@Base 2.5.10
+ gp_context_set_question_func@Base 2.5.10
+ gp_context_set_status_func@Base 2.5.10
+ gp_context_status@Base 2.5.10
+ gp_context_unref@Base 2.5.10
+ gp_file_adjust_name_for_mime_type@Base 2.5.10
+ gp_file_append@Base 2.5.10
+ gp_file_clean@Base 2.5.10
+ gp_file_copy@Base 2.5.10
+ gp_file_detect_mime_type@Base 2.5.10
+ gp_file_free@Base 2.5.10
+ gp_file_get_data_and_size@Base 2.5.10
+ gp_file_get_mime_type@Base 2.5.10
+ gp_file_get_mtime@Base 2.5.10
+ gp_file_get_name@Base 2.5.10
+ gp_file_get_name_by_type@Base 2.5.10
+ gp_file_new@Base 2.5.10
+ gp_file_new_from_fd@Base 2.5.10
+ gp_file_new_from_handler@Base 2.5.10
+ gp_file_open@Base 2.5.10
+ gp_file_ref@Base 2.5.10
+ gp_file_save@Base 2.5.10
+ gp_file_set_data_and_size@Base 2.5.10
+ gp_file_set_mime_type@Base 2.5.10
+ gp_file_set_mtime@Base 2.5.10
+ gp_file_set_name@Base 2.5.10
+ gp_file_slurp@Base 2.5.10
+ gp_file_unref@Base 2.5.10
+ gp_filesystem_append@Base 2.5.10
+ gp_filesystem_count@Base 2.5.10
+ gp_filesystem_delete_all@Base 2.5.10
+ gp_filesystem_delete_file@Base 2.5.10
+ gp_filesystem_delete_file_noop@Base 2.5.10
+ gp_filesystem_dump@Base 2.5.10
+ gp_filesystem_free@Base 2.5.10
+ gp_filesystem_get_file@Base 2.5.10
+ gp_filesystem_get_folder@Base 2.5.10
+ gp_filesystem_get_info@Base 2.5.10
+ gp_filesystem_list_files@Base 2.5.10
+ gp_filesystem_list_folders@Base 2.5.10
+ gp_filesystem_make_dir@Base 2.5.10
+ gp_filesystem_name@Base 2.5.10
+ gp_filesystem_new@Base 2.5.10
+ gp_filesystem_number@Base 2.5.10
+ gp_filesystem_put_file@Base 2.5.10
+ gp_filesystem_read_file@Base 2.5.10
+ gp_filesystem_remove_dir@Base 2.5.10
+ gp_filesystem_reset@Base 2.5.10
+ gp_filesystem_set_file_noop@Base 2.5.10
+ gp_filesystem_set_funcs@Base 2.5.10
+ gp_filesystem_set_info@Base 2.5.10
+ gp_filesystem_set_info_dirty@Base 2.5.28
+ gp_filesystem_set_info_noop@Base 2.5.10
+ gp_gamma_correct_single@Base 2.5.10
+ gp_gamma_fill_table@Base 2.5.10
+ gp_init_localedir@Base 2.5.30
+ gp_library_version@Base 2.5.10
+ gp_list_append@Base 2.5.10
+ gp_list_count@Base 2.5.10
+ gp_list_find_by_name@Base 2.5.10
+ gp_list_free@Base 2.5.10
+ gp_list_get_name@Base 2.5.10
+ gp_list_get_value@Base 2.5.10
+ gp_list_new@Base 2.5.10
+ gp_list_populate@Base 2.5.10
+ gp_list_ref@Base 2.5.10
+ gp_list_reset@Base 2.5.10
+ gp_list_set_name@Base 2.5.10
+ gp_list_set_value@Base 2.5.10
+ gp_list_sort@Base 2.5.10
+ gp_list_unref@Base 2.5.10
+ gp_message_codeset@Base 2.5.10
+ gp_result_as_string@Base 2.5.10
+ gp_setting_get@Base 2.5.10
+ gp_setting_set@Base 2.5.10
+ gp_widget_add_choice@Base 2.5.10
+ gp_widget_append@Base 2.5.10
+ gp_widget_changed@Base 2.5.10
+ gp_widget_count_children@Base 2.5.10
+ gp_widget_count_choices@Base 2.5.10
+ gp_widget_free@Base 2.5.10
+ gp_widget_get_child@Base 2.5.10
+ gp_widget_get_child_by_id@Base 2.5.10
+ gp_widget_get_child_by_label@Base 2.5.10
+ gp_widget_get_child_by_name@Base 2.5.10
+ gp_widget_get_choice@Base 2.5.10
+ gp_widget_get_id@Base 2.5.10
+ gp_widget_get_info@Base 2.5.10
+ gp_widget_get_label@Base 2.5.10
+ gp_widget_get_name@Base 2.5.10
+ gp_widget_get_parent@Base 2.5.10
+ gp_widget_get_range@Base 2.5.10
+ gp_widget_get_readonly@Base 2.5.10
+ gp_widget_get_root@Base 2.5.10
+ gp_widget_get_type@Base 2.5.10
+ gp_widget_get_value@Base 2.5.10
+ gp_widget_new@Base 2.5.10
+ gp_widget_prepend@Base 2.5.10
+ gp_widget_ref@Base 2.5.10
+ gp_widget_set_changed@Base 2.5.10
+ gp_widget_set_info@Base 2.5.10
+ gp_widget_set_name@Base 2.5.10
+ gp_widget_set_range@Base 2.5.10
+ gp_widget_set_readonly@Base 2.5.10
+ gp_widget_set_value@Base 2.5.10
+ gp_widget_unref@Base 2.5.10
+ gpi_camera_driver_status_map@Base 2.5.10
+ gpi_camera_operation_map@Base 2.5.10
+ gpi_exif_get_thumbnail_and_size@Base 2.5.10
+ gpi_exif_stat@Base 2.5.10
+ gpi_file_operation_map@Base 2.5.10
+ gpi_folder_operation_map@Base 2.5.10
+ gpi_gphoto_device_type_map@Base 2.5.10
+ gpi_jpeg_add_marker@Base 2.5.10
+ gpi_jpeg_chunk_destroy@Base 2.5.10
+ gpi_jpeg_chunk_new@Base 2.5.10
+ gpi_jpeg_chunk_new_filled@Base 2.5.10
+ gpi_jpeg_chunk_print@Base 2.5.10
+ gpi_jpeg_destroy@Base 2.5.10
+ gpi_jpeg_header@Base 2.5.10
+ gpi_jpeg_write@Base 2.5.10
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-port12.install 
libgphoto2-2.5.31/debian/libgphoto2-port12.install
--- libgphoto2-2.5.31/debian/libgphoto2-port12.install  2023-12-01 
06:32:29.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-port12.install  1970-01-01 
00:00:00.000000000 +0000
@@ -1,7 +0,0 @@
-# This does not work. Please see debian/rules
-#debian/libgphoto2_port.so.10          usr/lib/*
-usr/lib/*/libgphoto2_port.so.*
-usr/lib/*/libgphoto2_port/*/*.so
-usr/share/doc/libgphoto2_port/NEWS    usr/share/doc/libgphoto2-port12
-usr/share/doc/libgphoto2_port/README  usr/share/doc/libgphoto2-port12
-usr/share/locale/*/LC_MESSAGES/libgphoto2_port-12.mo
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-port12.symbols 
libgphoto2-2.5.31/debian/libgphoto2-port12.symbols
--- libgphoto2-2.5.31/debian/libgphoto2-port12.symbols  2023-12-01 
06:32:29.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-port12.symbols  1970-01-01 
00:00:00.000000000 +0000
@@ -1,82 +0,0 @@
-libgphoto2_port.so.12 libgphoto2-port12 #MINVER#
-* Build-Depends-Package: libgphoto2-dev
- LIBGPHOTO2_5_0@LIBGPHOTO2_5_0 2.5.10
- LIBGPHOTO2_INTERNAL@LIBGPHOTO2_INTERNAL 2.5.10
- gp_log@LIBGPHOTO2_5_0 2.5.10
- gp_log_add_func@LIBGPHOTO2_5_0 2.5.10
- gp_log_data@LIBGPHOTO2_5_0 2.5.10
- gp_log_remove_func@LIBGPHOTO2_5_0 2.5.10
- gp_log_with_source_location@LIBGPHOTO2_5_0 2.5.10
- gp_logv@LIBGPHOTO2_5_0 2.5.10
- gp_port_check_int@LIBGPHOTO2_5_0 2.5.10
- gp_port_check_int_fast@LIBGPHOTO2_5_0 2.5.10
- gp_port_close@LIBGPHOTO2_5_0 2.5.10
- gp_port_flush@LIBGPHOTO2_5_0 2.5.10
- gp_port_free@LIBGPHOTO2_5_0 2.5.10
- gp_port_get_error@LIBGPHOTO2_5_0 2.5.10
- gp_port_get_info@LIBGPHOTO2_5_0 2.5.10
- gp_port_get_pin@LIBGPHOTO2_5_0 2.5.10
- gp_port_get_settings@LIBGPHOTO2_5_0 2.5.10
- gp_port_get_timeout@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_get_name@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_get_path@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_get_type@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_list_append@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_list_count@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_list_free@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_list_get_info@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_list_load@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_list_lookup_name@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_list_lookup_path@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_list_new@LIBGPHOTO2_5_0 2.5.10
- gp_port_info_new@LIBGPHOTO2_INTERNAL 2.5.10
- gp_port_info_set_name@LIBGPHOTO2_INTERNAL 2.5.10
- gp_port_info_set_path@LIBGPHOTO2_INTERNAL 2.5.10
- gp_port_info_set_type@LIBGPHOTO2_INTERNAL 2.5.10
- gp_port_init_localedir@LIBGPHOTO2_5_0 2.5.30
- gp_port_library_version@LIBGPHOTO2_5_0 2.5.10
- gp_port_message_codeset@LIBGPHOTO2_5_0 2.5.10
- gp_port_new@LIBGPHOTO2_5_0 2.5.10
- gp_port_open@LIBGPHOTO2_5_0 2.5.10
- gp_port_read@LIBGPHOTO2_5_0 2.5.10
- gp_port_reset@LIBGPHOTO2_5_0 2.5.10
- gp_port_result_as_string@LIBGPHOTO2_5_0 2.5.10
- gp_port_seek@LIBGPHOTO2_5_0 2.5.10
- gp_port_send_break@LIBGPHOTO2_5_0 2.5.10
- gp_port_send_scsi_cmd@LIBGPHOTO2_5_0 2.5.10
- gp_port_set_error@LIBGPHOTO2_5_0 2.5.10
- gp_port_set_info@LIBGPHOTO2_5_0 2.5.10
- gp_port_set_pin@LIBGPHOTO2_5_0 2.5.10
- gp_port_set_settings@LIBGPHOTO2_5_0 2.5.10
- gp_port_set_timeout@LIBGPHOTO2_5_0 2.5.10
- gp_port_settings_get@LIBGPHOTO2_5_0 2.5.10
- gp_port_settings_set@LIBGPHOTO2_5_0 2.5.10
- gp_port_timeout_get@LIBGPHOTO2_5_0 2.5.10
- gp_port_timeout_set@LIBGPHOTO2_5_0 2.5.10
- gp_port_usb_clear_halt@LIBGPHOTO2_5_0 2.5.10
- gp_port_usb_find_device@LIBGPHOTO2_5_0 2.5.10
- gp_port_usb_find_device_by_class@LIBGPHOTO2_5_0 2.5.10
- gp_port_usb_msg_class_read@LIBGPHOTO2_5_0 2.5.10
- gp_port_usb_msg_class_write@LIBGPHOTO2_5_0 2.5.10
- gp_port_usb_msg_interface_read@LIBGPHOTO2_5_0 2.5.10
- gp_port_usb_msg_interface_write@LIBGPHOTO2_5_0 2.5.10
- gp_port_usb_msg_read@LIBGPHOTO2_5_0 2.5.10
- gp_port_usb_msg_write@LIBGPHOTO2_5_0 2.5.10
- gp_port_write@LIBGPHOTO2_5_0 2.5.10
- gp_system_closedir@LIBGPHOTO2_5_0 2.5.10
- gp_system_filename@LIBGPHOTO2_5_0 2.5.10
- gp_system_is_dir@LIBGPHOTO2_5_0 2.5.10
- gp_system_is_file@LIBGPHOTO2_5_0 2.5.10
- gp_system_mkdir@LIBGPHOTO2_5_0 2.5.10
- gp_system_opendir@LIBGPHOTO2_5_0 2.5.10
- gp_system_readdir@LIBGPHOTO2_5_0 2.5.10
- gp_system_rmdir@LIBGPHOTO2_5_0 2.5.10
- gpi_enum_to_string@LIBGPHOTO2_INTERNAL 2.5.10
- gpi_flags_to_string_list@LIBGPHOTO2_INTERNAL 2.5.10
- gpi_libltdl_lock@LIBGPHOTO2_INTERNAL 2.5.31
- gpi_libltdl_unlock@LIBGPHOTO2_INTERNAL 2.5.31
- gpi_string_list_to_flags@LIBGPHOTO2_INTERNAL 2.5.10
- gpi_string_or_to_flags@LIBGPHOTO2_INTERNAL 2.5.10
- gpi_string_to_enum@LIBGPHOTO2_INTERNAL 2.5.10
- gpi_string_to_flag@LIBGPHOTO2_INTERNAL 2.5.10
- gpi_vsnprintf@LIBGPHOTO2_INTERNAL 2.5.10
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-port12t64.install 
libgphoto2-2.5.31/debian/libgphoto2-port12t64.install
--- libgphoto2-2.5.31/debian/libgphoto2-port12t64.install       1970-01-01 
00:00:00.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-port12t64.install       2023-12-01 
06:32:29.000000000 +0000
@@ -0,0 +1,7 @@
+# This does not work. Please see debian/rules
+#debian/libgphoto2_port.so.10          usr/lib/*
+usr/lib/*/libgphoto2_port.so.*
+usr/lib/*/libgphoto2_port/*/*.so
+usr/share/doc/libgphoto2_port/NEWS    usr/share/doc/libgphoto2-port12
+usr/share/doc/libgphoto2_port/README  usr/share/doc/libgphoto2-port12
+usr/share/locale/*/LC_MESSAGES/libgphoto2_port-12.mo
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-port12t64.lintian-overrides 
libgphoto2-2.5.31/debian/libgphoto2-port12t64.lintian-overrides
--- libgphoto2-2.5.31/debian/libgphoto2-port12t64.lintian-overrides     
1970-01-01 00:00:00.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-port12t64.lintian-overrides     
2024-02-01 01:54:58.000000000 +0000
@@ -0,0 +1 @@
+libgphoto2-port12t64: package-name-doesnt-match-sonames libgphoto2-port12
diff -Nru libgphoto2-2.5.31/debian/libgphoto2-port12t64.symbols 
libgphoto2-2.5.31/debian/libgphoto2-port12t64.symbols
--- libgphoto2-2.5.31/debian/libgphoto2-port12t64.symbols       1970-01-01 
00:00:00.000000000 +0000
+++ libgphoto2-2.5.31/debian/libgphoto2-port12t64.symbols       2024-02-01 
01:54:58.000000000 +0000
@@ -0,0 +1,82 @@
+libgphoto2_port.so.12 libgphoto2-port12t64 #MINVER#
+* Build-Depends-Package: libgphoto2-dev
+ LIBGPHOTO2_5_0@LIBGPHOTO2_5_0 2.5.10
+ LIBGPHOTO2_INTERNAL@LIBGPHOTO2_INTERNAL 2.5.10
+ gp_log@LIBGPHOTO2_5_0 2.5.10
+ gp_log_add_func@LIBGPHOTO2_5_0 2.5.10
+ gp_log_data@LIBGPHOTO2_5_0 2.5.10
+ gp_log_remove_func@LIBGPHOTO2_5_0 2.5.10
+ gp_log_with_source_location@LIBGPHOTO2_5_0 2.5.10
+ gp_logv@LIBGPHOTO2_5_0 2.5.10
+ gp_port_check_int@LIBGPHOTO2_5_0 2.5.10
+ gp_port_check_int_fast@LIBGPHOTO2_5_0 2.5.10
+ gp_port_close@LIBGPHOTO2_5_0 2.5.10
+ gp_port_flush@LIBGPHOTO2_5_0 2.5.10
+ gp_port_free@LIBGPHOTO2_5_0 2.5.10
+ gp_port_get_error@LIBGPHOTO2_5_0 2.5.10
+ gp_port_get_info@LIBGPHOTO2_5_0 2.5.10
+ gp_port_get_pin@LIBGPHOTO2_5_0 2.5.10
+ gp_port_get_settings@LIBGPHOTO2_5_0 2.5.10
+ gp_port_get_timeout@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_get_name@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_get_path@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_get_type@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_list_append@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_list_count@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_list_free@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_list_get_info@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_list_load@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_list_lookup_name@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_list_lookup_path@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_list_new@LIBGPHOTO2_5_0 2.5.10
+ gp_port_info_new@LIBGPHOTO2_INTERNAL 2.5.10
+ gp_port_info_set_name@LIBGPHOTO2_INTERNAL 2.5.10
+ gp_port_info_set_path@LIBGPHOTO2_INTERNAL 2.5.10
+ gp_port_info_set_type@LIBGPHOTO2_INTERNAL 2.5.10
+ gp_port_init_localedir@LIBGPHOTO2_5_0 2.5.30
+ gp_port_library_version@LIBGPHOTO2_5_0 2.5.10
+ gp_port_message_codeset@LIBGPHOTO2_5_0 2.5.10
+ gp_port_new@LIBGPHOTO2_5_0 2.5.10
+ gp_port_open@LIBGPHOTO2_5_0 2.5.10
+ gp_port_read@LIBGPHOTO2_5_0 2.5.10
+ gp_port_reset@LIBGPHOTO2_5_0 2.5.10
+ gp_port_result_as_string@LIBGPHOTO2_5_0 2.5.10
+ gp_port_seek@LIBGPHOTO2_5_0 2.5.10
+ gp_port_send_break@LIBGPHOTO2_5_0 2.5.10
+ gp_port_send_scsi_cmd@LIBGPHOTO2_5_0 2.5.10
+ gp_port_set_error@LIBGPHOTO2_5_0 2.5.10
+ gp_port_set_info@LIBGPHOTO2_5_0 2.5.10
+ gp_port_set_pin@LIBGPHOTO2_5_0 2.5.10
+ gp_port_set_settings@LIBGPHOTO2_5_0 2.5.10
+ gp_port_set_timeout@LIBGPHOTO2_5_0 2.5.10
+ gp_port_settings_get@LIBGPHOTO2_5_0 2.5.10
+ gp_port_settings_set@LIBGPHOTO2_5_0 2.5.10
+ gp_port_timeout_get@LIBGPHOTO2_5_0 2.5.10
+ gp_port_timeout_set@LIBGPHOTO2_5_0 2.5.10
+ gp_port_usb_clear_halt@LIBGPHOTO2_5_0 2.5.10
+ gp_port_usb_find_device@LIBGPHOTO2_5_0 2.5.10
+ gp_port_usb_find_device_by_class@LIBGPHOTO2_5_0 2.5.10
+ gp_port_usb_msg_class_read@LIBGPHOTO2_5_0 2.5.10
+ gp_port_usb_msg_class_write@LIBGPHOTO2_5_0 2.5.10
+ gp_port_usb_msg_interface_read@LIBGPHOTO2_5_0 2.5.10
+ gp_port_usb_msg_interface_write@LIBGPHOTO2_5_0 2.5.10
+ gp_port_usb_msg_read@LIBGPHOTO2_5_0 2.5.10
+ gp_port_usb_msg_write@LIBGPHOTO2_5_0 2.5.10
+ gp_port_write@LIBGPHOTO2_5_0 2.5.10
+ gp_system_closedir@LIBGPHOTO2_5_0 2.5.10
+ gp_system_filename@LIBGPHOTO2_5_0 2.5.10
+ gp_system_is_dir@LIBGPHOTO2_5_0 2.5.10
+ gp_system_is_file@LIBGPHOTO2_5_0 2.5.10
+ gp_system_mkdir@LIBGPHOTO2_5_0 2.5.10
+ gp_system_opendir@LIBGPHOTO2_5_0 2.5.10
+ gp_system_readdir@LIBGPHOTO2_5_0 2.5.10
+ gp_system_rmdir@LIBGPHOTO2_5_0 2.5.10
+ gpi_enum_to_string@LIBGPHOTO2_INTERNAL 2.5.10
+ gpi_flags_to_string_list@LIBGPHOTO2_INTERNAL 2.5.10
+ gpi_libltdl_lock@LIBGPHOTO2_INTERNAL 2.5.31
+ gpi_libltdl_unlock@LIBGPHOTO2_INTERNAL 2.5.31
+ gpi_string_list_to_flags@LIBGPHOTO2_INTERNAL 2.5.10
+ gpi_string_or_to_flags@LIBGPHOTO2_INTERNAL 2.5.10
+ gpi_string_to_enum@LIBGPHOTO2_INTERNAL 2.5.10
+ gpi_string_to_flag@LIBGPHOTO2_INTERNAL 2.5.10
+ gpi_vsnprintf@LIBGPHOTO2_INTERNAL 2.5.10
diff -Nru libgphoto2-2.5.31/debian/rules libgphoto2-2.5.31/debian/rules
--- libgphoto2-2.5.31/debian/rules      2023-12-06 17:44:04.000000000 +0000
+++ libgphoto2-2.5.31/debian/rules      2024-02-01 01:54:58.000000000 +0000
@@ -2,12 +2,12 @@
 
 export DH_VERBOSE=1
 
-DOC_IMG=$(CURDIR)/debian/libgphoto2-dev-doc/usr/share/doc/libgphoto2-6/libgphoto2-api.html
+DOC_IMG=$(CURDIR)/debian/libgphoto2-dev-doc/usr/share/doc/libgphoto2-6t64/libgphoto2-api.html
 
 export DEB_BUILD_MAINT_OPTIONS = hardening=+all
 
 ### soname version - libgphoto2-major:
-major=6
+major=6t64
 
 DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
 
@@ -24,9 +24,9 @@
        dh_install
        # Double-check that and act accordingly:
        -test -e debian/tmp/usr/lib/udev/check-mtp-device && \
-               mkdir -p debian/libgphoto2-port12/lib/udev && \
+               mkdir -p debian/libgphoto2-port12t64/lib/udev && \
                mv debian/tmp/usr/lib/udev/check-mtp-device \
-                       debian/libgphoto2-port12/lib/udev/check-mtp-device
+                       debian/libgphoto2-port12t64/lib/udev/check-mtp-device
        # Using rdfind and symlinks to transform duplicated files in softlinks
        rdfind -makesymlinks true -makeresultsfile false $(DOC_IMG)
        symlinks -cr $(DOC_IMG)
@@ -42,9 +42,9 @@
        dh_installudev
        rm debian/libgphoto2-$(major).udev
        # This will become harmless after dh_installudev changes the default 
install path.
-       set -e; if test -d debian/libgphoto2-6/lib/udev/rules.d; then mv 
debian/libgphoto2-6/lib/udev/rules.d debian/libgphoto2-6/usr/lib/udev; fi
-       set -e; if test -d debian/libgphoto2-6/lib/udev; then rmdir 
debian/libgphoto2-6/lib/udev; fi
-       set -e; if test -d debian/libgphoto2-6/lib; then rmdir 
debian/libgphoto2-6/lib; fi
+       set -e; if test -d debian/libgphoto2-6t64/lib/udev/rules.d; then mv 
debian/libgphoto2-6t64/lib/udev/rules.d debian/libgphoto2-6t64/usr/lib/udev; fi
+       set -e; if test -d debian/libgphoto2-6t64/lib/udev; then rmdir 
debian/libgphoto2-6t64/lib/udev; fi
+       set -e; if test -d debian/libgphoto2-6t64/lib; then rmdir 
debian/libgphoto2-6t64/lib; fi
 endif
 
 override_dh_fixperms:
@@ -52,13 +52,13 @@
 
 override_dh_makeshlibs:
        dh_makeshlibs -plibgphoto2-$(major) 
-X/usr/lib/$(DEB_HOST_MULTIARCH)/libgphoto2/
-       dh_makeshlibs -plibgphoto2-port12 
-X/usr/lib/$(DEB_HOST_MULTIARCH)/libgphoto2_port/
+       dh_makeshlibs -plibgphoto2-port12t64 
-X/usr/lib/$(DEB_HOST_MULTIARCH)/libgphoto2_port/
 
 override_dh_missing:
        dh_missing -X.la
 
 override_dh_shlibdeps:
-       dh_shlibdeps 
-ldebian/libgphoto2-$(major)/usr/lib/:debian/libgphoto2-port12/usr/lib/
+       dh_shlibdeps 
-ldebian/libgphoto2-$(major)/usr/lib/:debian/libgphoto2-port12t64/usr/lib/
 
 ifeq (linux,$(DEB_HOST_ARCH_OS))
 override_dh_gencontrol:
@@ -66,7 +66,7 @@
        dh_gencontrol -plibgphoto2-$(major) -- -Vudev-hotplug='udev (>= 201)'
 endif
 
-# libgphoto2-dev-doc installs files under 
/usr/share/doc/libgphoto2-6/examples/,
+# libgphoto2-dev-doc installs files under 
/usr/share/doc/libgphoto2-6t64/examples/,
 # which isn't excluded by default:
 override_dh_compress:
        dh_compress --exclude=/examples/

Reply via email to