Bug 1218196 - postgresql15-postgis requires libgtk-x11
Summary: postgresql15-postgis requires libgtk-x11
Status: NEW
Alias: None
Product: openSUSE Distribution
Classification: openSUSE
Component: Other (show other bugs)
Version: Leap 15.5
Hardware: Other openSUSE Leap 15.5
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: Otto Dassau
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-12-19 09:45 UTC by Immanuel Hayden
Modified: 2023-12-27 07:45 UTC (History)
0 users

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Immanuel Hayden 2023-12-19 09:45:36 UTC
# zypper info --requires postgresql15-postgis
  Information for package postgresql15-postgis:
  ---------------------------------------------
  Repository     : Applications related to the earth (GIS, Mapping, geodesy, GPS, astronomy) (15.5)
  Name           : postgresql15-postgis
  Version        : 3.3.4-lp155.29.7
  Arch           : x86_64
  Vendor         : obs://build.opensuse.org/Application:Geo
  Installed Size : 53.7 MiB
  Installed      : Yes
  Status         : up-to-date
  Source package : postgresql15-postgis-3.3.4-lp155.29.7.src
  Upstream URL   : https://postgis.net/
  Summary        : Geographic Information Systems Extensions to PostgreSQL
  Description    :
      PostGIS is a spatial database extender for PostgreSQL object-relational
      database. It adds support for geographic objects allowing location queries
      to be run in SQL.
  Requires       : [36]
      libc.so.6(GLIBC_2.14)(64bit)
      libm.so.6()(64bit)
      libm.so.6(GLIBC_2.2.5)(64bit)
      proj
      libstdc++.so.6()(64bit)
      libstdc++.so.6(GLIBCXX_3.4)(64bit)
      libgcc_s.so.1()(64bit)
      libstdc++.so.6(CXXABI_1.3)(64bit)
      libgcc_s.so.1(GCC_3.0)(64bit)
      libm.so.6(GLIBC_2.29)(64bit)
      libstdc++.so.6(GLIBCXX_3.4.21)(64bit)
      libstdc++.so.6(GLIBCXX_3.4.15)(64bit)
      libstdc++.so.6(CXXABI_1.3.8)(64bit)
      libpq.so.5()(64bit)
      libxml2.so.2()(64bit)
      libxml2.so.2(LIBXML2_2.4.30)(64bit)
      libgdal.so.34()(64bit)
      libxml2.so.2(LIBXML2_2.6.0)(64bit)
      libstdc++.so.6(GLIBCXX_3.4.18)(64bit)
      libstdc++.so.6(GLIBCXX_3.4.14)(64bit)
      libproj.so.25()(64bit)
      libgeos_c.so.1()(64bit)
      libglib-2.0.so.0()(64bit)
      ld-linux-x86-64.so.2()(64bit)
      ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)
      libgobject-2.0.so.0()(64bit)
      libSFCGAL.so.1()(64bit)
      libgtk-x11-2.0.so.0()(64bit)
      libpcre.so.1()(64bit)
      libjson-c.so.3()(64bit)
      libprotobuf-c.so.1()(64bit)
      libprotobuf-c.so.1(LIBPROTOBUF_C_1.0.0)(64bit)
      libxml2.so.2(LIBXML2_2.5.2)(64bit)
      postgresql15-server = 15.5
      /bin/sh
      update-alternatives

As you can see, there is a dependency on libgtk-x11-2.0, which in turn pulls in a ton of other stuff nobody really wants on a db server, and it's even worse if you don't do the "--no-recommends" to the tune of a cool 890MB of random lib packages vs 36MB without (which is still way too much random stuff being pulled).

  # zypper in --no-recommends postgresql15-postgis
  Loading repository data...
  Reading installed packages...
  Resolving package dependencies...

  The following 56 NEW packages are going to be installed:
    gdk-pixbuf-query-loaders gtk2-tools libHalf23 libIex-2_2-23 libIlmImf-2_2-23 libIlmThread-2_2-23 libOpenCL1 libOpenSceneGraph161 libOpenThreads21 libSFCGAL1 libXcomposite1 libXcursor1 libXdamage1 libXi6
    libXinerama1 libXrandr2 libarchive13 libarmadillo11 libarpack2 libatk-1_0-0 libblas3 libboost_serialization1_66_0 libcryptopp8_6_0 libdeflate0 libfreexl1 libgdal-drivers libgdal34 libgdk_pixbuf-2_0-0
    libgeos3_12_1 libgeos_c1 libgeotiff5 libgfortran4 libgif7 libgmpxx4 libgomp1 libgtk-2_0-0 libhdf5-103 libhdf5_cpp103 libhdf5_hl100 libkea1_5 liblapack3 libltdl7 libmariadb3 libminizip1 libmpfr6 libnetcdf18
    libodbc2 libproj25 libquadmath0 librttopo1 libspatialite7 libsuperlu5 libwebp7 libxerces-c-3_2 postgresql15-postgis proj

Looking through the installation instructions of postgis, it seems that gtk is "required" for a GUI tool that they also include (see https://github.com/postgis/postgis/blob/master/doc/installation.xml). I doubt the vast majority of people installing postgis to have a GIS enabled PostgreSQL care about random gui tools on their servers. The building of this gui client is opt-in ("--with-gui" option). 

So in summary, I'd love to have a package that does not come with this gui tool and thus does not force me to pull half of X11 onto my server. Maybe this tool should be split off into a separate package instead (postgresql15-postgis-utils already exists ... sounds like a perfect fit to go in there).