Package Details: ncurses-git 6.4.20230918.r0.g77bbdcdc-1

Git Clone URL: https://aur.archlinux.org/ncurses-git.git (read-only, click to copy)
Package Base: ncurses-git
Description: Screen handling and optimization package
Upstream URL: https://invisible-island.net/ncurses/ncurses.html
Licenses: MIT
Conflicts: ncurses
Provides: libformw.so, libmenuw.so, libncurses++w.so, libncursesw.so, libpanelw.so, ncurses
Submitter: Chocobo1
Maintainer: Chocobo1
Last Packager: Chocobo1
Votes: 4
Popularity: 0.126028
First Submitted: 2020-01-12 12:22 (UTC)
Last Updated: 2023-09-20 17:19 (UTC)

Dependencies (2)

Required by (1840)

Sources (1)

Latest Comments

« First ‹ Previous 1 2

Chocobo1 commented on 2020-09-21 07:09 (UTC)

Just because it might not trip for me, doesn’t mean it won’t trip for someone else.

One should only speak for oneself, what if someone actually do want the ada bindings and make a request for it? Should you deny his request? Note that having ada bindings does not harm this package usability in any way.

There is absolutely no reason to risk having these settings changed because of a user setup and/or the default build options updated.

Of course it would make sense to update the build flags when upstream changed, note that we are dealing with latest development git branch, not the stable releases. If you are concerned that -git packages would causes instability then you probably should stick to official packages instead, -git packages are not guaranteed for being stable but are good for trying out the latest features.

shoober420 commented on 2020-09-21 06:39 (UTC) (edited on 2020-09-21 06:41 (UTC) by shoober420)

This is not just about me, this goes for anyone who compiles your package. Just because it might not trip for me, doesn’t mean it won’t trip for someone else. There is absolutely no reason to risk having these settings changed because of a user setup and/or the default build options updated.

Chocobo1 commented on 2020-09-21 06:20 (UTC) (edited on 2020-09-21 06:27 (UTC) by Chocobo1)

If the following build flags were truly redundant, they wouldn’t be included in the official repo PKGBUILD.

Let's look at them one by one before jumping to conclusion too quickly...

--with-normal (installs static libraries)

This option is default ON as stated by the output of ./configure --help:

--with-normal generate normal-libraries (default)

--without-ada (if the ada programming language was that important, Arch wouldn’t disable it)

In the case of this flag absent, the configure script will search for ada and if it is not found then nothing will be done (basically no-op). If you do have ada installed and this behavior trips you in some way then I'll add it.

--with-cxx-binding (c++ binding sounds important, the Arch guys think so too).

The output of ./configure only lists the opposite flag --without-cxx-binding. I suppose building c++ binding is already the default action, please correct me if I'm wrong.

UPDATE: This is from the output of the configure script: checking if you want to build C++ binding and demo... yes. So my guessing was right, it is enabled by default.

If you don’t match the build options from the official repos, your packages can end up being buggy since other packages and system components within Arch may be expecting them to be set, especially if they are set in the official PKGBUILD.

Yes, I'm aware of this. As explained above, I think the only (slightly) controversial flag is --without-ada, let me know if it really trips you in some way then it is justified to add it.

shoober420 commented on 2020-09-21 06:08 (UTC) (edited on 2020-09-21 06:11 (UTC) by shoober420)

If the following build flags were truly redundant, they wouldn’t be included in the official repo PKGBUILD.

--with-normal (installs static libraries) / --without-ada (if the ada programming language was that important, Arch wouldn’t disable it) / --with-cxx-binding (c++ binding sounds important, the Arch guys think so too).

If you don’t match the build options from the official repos, your packages can end up bugging a system out since other packages and system components within Arch may be expecting them to be set, especially if they are set in the official PKGBUILD. You’re only asking for trouble using different build options.

If you’re going to drastically change build options, change the name of your package. For example, since you want ADA programming language for what ever reason, name this “ncurses-ada-git”. This is why I personally have “minimal” and “nosystemd” variants of packages I maintain.

Chocobo1 commented on 2020-09-21 05:44 (UTC)

Your build options are simply out of date.

Which part? please be specific.

The official repo package would not of added them for no reason.

I consider some configure flags redundant in there.

shoober420 commented on 2020-09-21 05:35 (UTC) (edited on 2020-09-21 05:37 (UTC) by shoober420)

Your build options are simply out of date. The official repo package would not of added them for no reason. It’s good practice to keep up to date with the official repo PKGBUILDs, and use them as a template. Reason being, your build options are old. wlhlm knows this as well, as he commented the same thing.

Chocobo1 commented on 2020-09-21 04:06 (UTC)

Your package ncurses-git [1] has been flagged out-of-date by shoober420 [2]:

Please update the PKGBUILD to reflect the official repo build options.

No guidelines ever state that git packages should blind copy all build options from non git packages nor it is required to keep them in line with official packages.

Please state in what way the build result is unexpected and how would you expect to correct it.

shoober420 commented on 2020-09-20 17:38 (UTC)

I also have an up to date PKGBUILD ready and will adopt.

wlhlm commented on 2020-06-19 22:02 (UTC) (edited on 2020-06-23 18:10 (UTC) by wlhlm)

I have updated the PKGBUILD to more closely match the official ncurses package. More specifically, I've updated the ./configure invocation, and changed depends and pkgdesc. I've also dropped the staticlibs option as that is generally no longer used with Arch packages.

diff --git a/PKGBUILD b/PKGBUILD
index 91212ad..14c1747 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,21 +1,20 @@
 # Maintainer: Chocobo1 <chocobo1 AT archlinux DOT net>
+# Contributor: Wilhelm Schuster <aur AT rot13 DOT io>

 pkgname=ncurses-git
-pkgver=6.1.20200111.r0.g431911e0
+pkgver=6.2.20200613.r0.gab10836a
 pkgrel=1
-pkgdesc="Screen handling and optimization package"
+pkgdesc="System V Release 4.0 curses emulation library (git version)"
 arch=('i686' 'x86_64')
 url="https://invisible-island.net/ncurses/ncurses.html"
 license=('MIT')
-depends=('glibc')
+depends=('glibc' 'gcc-libs')
 makedepends=('git')
 provides=('ncurses' 'libncurses++w.so' 'libformw.so' 'libmenuw.so' 'libpanelw.so' 'libncursesw.so')
 conflicts=('ncurses')
-options=('staticlibs')
 source=("git+https://github.com/ThomasDickey/ncurses-snapshots.git")
 sha256sums=('SKIP')

-
 pkgver() {
   cd "ncurses-snapshots"

@@ -28,12 +27,16 @@ build() {
   ./configure \
     --prefix="/usr" \
     --mandir="/usr/share/man" \
+    --with-manpage-format=normal \
     --enable-pc-files \
     --enable-widec \
+    --with-cxx-binding \
     --with-cxx-shared \
     --with-pkg-config-libdir="/usr/lib/pkgconfig" \
     --with-shared \
-    --without-debug
+    --with-normal \
+    --without-debug \
+    --without-ada
   make
 }