discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[off list] Re: Debian12 repository.


From: Paul Seelig
Subject: [off list] Re: Debian12 repository.
Date: Mon, 30 Oct 2023 14:49:20 +0100

Hi Andreas,

thanks a lot for setting up this Debian repo!

I am not subscribed to the list, but here are a few (hopefully) helpful comments.

Trying to follow the given directions to integrate this repo with my system following corrections had to be made:

As stated in its man page, wget's '--output-file=' is for redirecting its logging output into the named file and that most probably was not the intended result.

So better use:

# wget http://repo.gnustep.ch/key.asc  -O /etc/apt/trusted.gpg.d/repo.gnustep.ch.asc

Also, the given sources list entries do not exist. Browsing the repo's directory hierarchy to figure out the actual layout, following entries have proven to be working:

# cat /etc/apt/sources.list.d/gnustep.ch.list
deb http://repo.gnustep.ch/debian/ bookworm gnustep-alpha
deb http://repo.gnustep.ch/debian/ bookworm gnustep

Thus:

# echo "deb http://repo.gnustep.ch/debian/ bookworm gnustep-alpha"  > /etc/apt/sources.list.d/gnustep.ch.list

# echo "deb http://repo.gnustep.ch/debian/ bookworm gnustep" > /etc/apt/sources.list.d/gnustep.ch.list

Unfortunately, no debianized source packages are made available via the repo so nobody can try helping with the packaging details.

While we are at it, I'd suggest using 'reprepro' to almost automatically manage Debian repos.

Usually i create packages locally until they work as expected and, after signing them with GPG, they are first uploaded into a local repo using following script:

--- snip ---
PKGBASEDIR="$(pwd)"

dsc ()
{
for dsc in *dsc
do
    reprepro --ask-passphrase -Vb /srv/repo.d includedsc bookworm ${dsc}
done
}

deb ()
{
for deb in *deb
do
    reprepro --ask-passphrase -Vb /srv/repo.d includedeb bookworm ${deb}
done
}

all ()
{
    dsc
    deb
}
if [ "${#}" != "0" ]
then
   ${1}
fi
--- snip ---

Once confident all is fine, i use following command to upload it to the web space:

# rsync -HPaiz --no-g --no-owner --exclude=conf --exclude=db --delete ${localrepo} ${remoterepo}

That is what i use to manage https://wmlive.rumbero.org/repo (related to Window Maker Live AKA https://wmlive.sourceforge.net).

Thanks a lot for GNUstep!

Regards,

P.Seelig
On 10/29/23 20:31, Andreas Fink wrote:
My repo for debian12  is now ready for testing under amd64 architecture.

You can test it by pasting the two lines as following into your shell


wget http://repo.gnustep.ch/key.asc  --output-file=/etc/apt/trusted.gpg.d/repo.gnustep.ch.asc echo "deb http://repo.gnustep.ch/debian/ bookworm-alpha gnustep-alpha"  > /etc/apt/sources.list.d/gnustep.ch.list


I call this an alpha release
Once all remaining little things are ironed out, it will go into "gnustep" instead of "gnustep-alpha"

the following packages have been built

gnustep-base-1.29.0_amd64.deb
gnustep-corebase-0.2.1_amd64.deb
gnustep-make-2.9.1_amd64.deb
libdispatch-5.10.0_amd64.deb
libiconv-1.17.0_amd64.deb
libobjc2-2.1.0_amd64.deb
gnustep-back-0.30.0_amd64.deb
gnustep-gui-0.30.0_amd64.deb

Feel free to test and report any issues.

Issues I have already found:

 warnings appear in the current gnustep-base because the definition of methods is twice in the header file
removing one of them (they are the same) gets rid of the warning

/usr/include/GNUstep/Foundation/NSRegularExpression.h:120:1: warning: multiple declarations of method 'initWithPattern:options:error:' found and ignored [-Wduplicate-method-match]
- (id) initWithPattern: (NSString*)aPattern
^
/usr/include/GNUstep/Foundation/NSRegularExpression.h:114:1: note: previous declaration is here
- (id) initWithPattern: (NSString*)aPattern


/usr/include/GNUstep/Foundation/NSIndexPath.h:101:1: warning: multiple declarations of method 'item' found and ignored [-Wduplicate-method-match]
- (NSInteger) item;
^
/usr/include/GNUstep/Foundation/NSIndexPath.h:84:1: note: previous declaration is here
- (NSInteger) item;
^


also gnustep-core test is failing in the area of date & time which has something to do with the language settings.


CFDateFormatter/basic.m:
Failed test:     basic.m:38 ... Default format for de_DE locale is EEEE, d. MMMM y HH:mm but got EEEE, d. MMMM y 'um' HH:mm

in german you can say on "31.12.2023 at 23:59" where the german "um" is "at" in english. But  "31.12.2023 23:59" is also correct. just a shorter form. I prefer the later but I'm not 100% sure what the "correct" way would be if you want to be 1:1 compatible to how MacOS does it.

Failed test:     basic.m:42 ... Absolute time can be formatted using full date style. Failed test:     basic.m:57 ... Absolute time can be formatted using no date style. Failed test:     basic.m:63 ... Absolute time gotten for 20050403 02:01 vorm.

this is a bit odd. "vorm." means vormittag (before noon). like "AM" . However german uses 24h date and time so nobody would write 08:00 vorm or 07:00 nachm. because 08:00 and 19:00 would be the correct way in german.

Failed test:     basic.m:65 ... Absolute time for 20050403 02:01 vorm. is 315612000.000000

this is probably related the other way around


CFLocale/bridge.m:
Failed file:     bridge.m aborted without running all tests!

CFLocale/create.m:
Failed test:     create.m:20 ... en_ES_PREEURO is stored as es_ES@currency=ESP

no idea what a PREEURO is ;-)
spanish Pesetas?

--- Running tests in CFNumber ---

CFNumber/bridge.m:
Failed file:     bridge.m aborted without running all tests!
--- Running tests in CFNumberFormatter ---

CFNumberFormatter/format.m:
Failed test:     format.m:32 ... SInt8 formatted correctly
--- Running tests in CFPropertyList ---

CFPropertyList/openstep.m:
Failed test:     openstep.m:61 ... OpenStep property list read correctly.


On 29 Oct 2023, at 11:42, Hugo Melder <admin@hugomelder.com> wrote:



On 29. Oct 2023, at 11:25, Andreas Fink <afink@list.fink.org> wrote:

Hello all

I'm working on setting up a debian repository wtih a up to date build of debian12 and ubuntu22 for amd64 and arm64 architectures. My current repo installs all on /usr/local/ but for proper system wide use /usr should be used as prefix instead.

so I use

export PREFIX="/usr"

cmake ... -DCMAKE_INSTALL_PREFIX=${PREFIX} ...


and

./configure --prefix=${PREFIX}

Is this for gnustep-base or gnustep-make?
Only configuring gnustep-make correctly is enough:

dh_auto_configure -- \
   --with-layout=debian \
--enable-native-objc-exceptions \
--enable-objc-arc \
--prefix=/usr \
--with-runtime-abi=gnustep-2.0 \
--with-library-combo=ng-gnu-gnu \
LDFLAGS="-fuse-ld=lld -L/usr/lib/$(DEB_HOST_MULTIARCH)" SHELLPROG=/bin/bash GNUMAKE=make


https://github.com/gnustep/tools-packaging is our repo for aggregating the new GNUstep 2.0 Debian package configuration files and build scripts.
This is currently only non-gui, but I am open to contributions :)

This draft (https://github.com/gnustep/tools-packaging/pull/4) adds automatic building in phases using the isolated pbuilder build tool.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]