LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   NuTyX (https://www.linuxquestions.org/questions/nutyx-125/)
-   -   Package maker pkgmk issues not working... (https://www.linuxquestions.org/questions/nutyx-125/package-maker-pkgmk-issues-not-working-4175622538/)

BW-userx 01-27-2018 02:46 PM

Package maker pkgmk issues not working...
 
My very first try at this, and it looks like your make a package thingy is not working, and or it can be partly me too.

WindowMaker, when you look in here, I followed the example off your sight, copy paste made the changes to reflect a different package, WindowMaker. seen how directory name has to match information in side. ie the package.but the tar ball name uses Cap Letters and this is not allowing that.

in the dir tar file
Code:

userx [ /usr/ports/personal/WindowMaker ]$ ls
Pkgfile  windowmaker-0.95.8.tar.gz.partial

whereas it should be WindowMaker....
myPkgfile
Code:

userx [ /usr/ports/personal/WindowMaker ]$ cat Pkgfile
description="Window Manager"
maintainer="None"
packager="...name removed in this post...."
#http://windowmaker.org/pub/source/release/WindowMaker-0.95.8.tar.gz
url="http://windowmaker.org/pub/source/release/"
#WindowMaker-0.95.8.tar.gz
name="WindowMaker"
version="0.95.8"
release=1

source=(${url}/dist/v${version:0:3}/$name-$version.tar.gz)

build() {
cd $name-$version
./configure --prefix=/usr/local \
--with-gnustepdir=/lib64\
make
make DESTDIR=$PKG install
#rm $PKG/usr/share/info/dir
}

error for using Caps is at the bottom, that run you see is with the name=windowmaker
which is the wrong request for the actual name of the tar ball file

Code:

userx [ /usr/ports/personal/windowmaker ]$ sudo pkgmk -d
[sudo] password for userx:
=======> PKGMK_INSTALL: no
=======> PKGMK_WORK_DIR: /usr/ports/personal/windowmaker/work
=======> PKGMK_SOURCE_DIR: /usr/ports/personal/windowmaker
=======> WARNING: CLEAN IGNORED
=======> PKGMK_IGNORE_REPO: yes
=======> PKGMK_IGNORE_FOOTPRINT: yes
=======> PKGMK_IGNORE_MD5SUM: yes
=======> .PKGREPO file will be deleted
=======> PKGMK_COMPRESS_PACKAGE: no
=======> name: windowmaker
=======> version: 0.95.8
=======> release: 1                [15:25 x86_64 4.14.13-NuTyX-lts userx@nutyx]
=======> Downloading 'http://windowmaker.org/pub/source/release//dist/v0.9/windowmaker-0.95.8.tar.gz'.                                [15:25 x86_64 4.14.13-NuTyX-lts userx@nutyx]
=======> Partial download found, trying to resume
--2018-01-27 15:33:23--  http://windowmaker.org/pub/so[15:25 x86_64 4.14.13-NuTyX-lts userx@nutyx]ndowmaker-0.95.8.tar.gz
Resolving windowmaker.org... 104.24.100.20, 104.24.101[15:25 x86_64 4.14.13-NuTyX-lts userx@nutyx]8:6514, ...                                          [15:25 x86_64 4.14.13-NuTyX-lts userx@nutyx]
Connecting to windowmaker.org|104.24.100.20|:80... con[15:25 x86_64 4.14.13-NuTyX-lts userx@nutyx]
HTTP request sent, awaiting response... 404 Not Found
2018-01-27 15:33:24 ERROR 404: Not Found.            [15:25 x86_64 4.14.13-NuTyX-lts userx@nutyx]
                                                      [15:25 x86_64 4.14.13-NuTyX-lts userx@nutyx]
=======> Partial download failed, restarting
--2018-01-27 15:33:24--  http://windowmaker.org/pub/so[15:25 x86_64 4.14.13-NuTyX-lts userx@nutyx]ndowmaker-0.95.8.tar.gz
Resolving windowmaker.org... 104.24.101.20, 104.24.100.20, 2400:cb00:2048:1::6818:6414, ...
Connecting to windowmaker.org|104.24.101.20|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2018-01-27 15:33:24 ERROR 404: Not Found.

=======> ERROR: Downloading 'http://windowmaker.org/pub/source/release//dist/v0.9/windowmaker-0.95.8.tar.gz' failed.
userx [ /usr/ports/personal/windowmaker ]$ sudo nano Pkgfile
userx [ /usr/ports/personal/windowmaker ]$ sudo pkgmk -d
=======> ERROR: Variable 'name' not the same as port name (directory).
userx [ /usr/ports/personal/windowmaker ]$ cd..
bash: cd..: command not found
userx [ /usr/ports/personal/windowmaker ]$ cd ..
userx [ /usr/ports/personal ]$ sudo mv windowmaker WindowMaker ; cd WindowMaker
userx [ /usr/ports/personal/WindowMaker ]$ sudo pkgmk -d
=======> ERROR: Variable 'name' not the same as port name (directory).
userx [ /usr/ports/personal/WindowMaker ]$ sudo nano Pkgfile
userx [ /usr/ports/personal/WindowMaker ]$ sudo pkgmk -d
=======> ERROR: Variable 'name' contains following illegal characters: WM

I still have no idea how it pulls the required libs to get it to compile properly. because I could not find any lib or source for the headers and o files to compile normally.

BW-userx 01-27-2018 03:10 PM

same for HandBrake, as I suppected
Code:

userx [ /usr/ports/personal/HandBrake ]$ sudo pkgmk -d
=======> ERROR: Variable 'name' contains following illegal characters: HB

let me try a dockapp for Fluxbox as that is what I am using as of now...

BW-userx 01-27-2018 03:19 PM

as I suspected no allowance for devel packages for headers
Code:

mixer-alsa.c:5:10: fatal error: alsa/asoundlib.h: No such file or directory
 #include <alsa/asoundlib.h>
          ^~~~~~~~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:411: mixer-alsa.o] Error 1
make: *** Waiting for unfinished jobs....
mmkeys.c:25:10: fatal error: X11/Xlib.h: No such file or directory
 #include <X11/Xlib.h>
          ^~~~~~~~~~~~
compilation terminated.
make: *** [Makefile:411: mmkeys.o] Er[16:03 x86_64 4.14.13-NuTyX-lts userx@nutyx]
wmix.c:30:10: fatal error: X11/X.h: No such file or directory
 #include <X11/X.h>
          ^~~~~~~~~
compilation terminated.
make: *** [Makefile:411: wmix.o] Error 1
ui_x.c:31:10: fatal error: X11/X.h: No such file or directory
 #include <X11/X.h>
          ^~~~~~~~~

back to square one. :(

tnut 01-27-2018 05:14 PM

Ouch I try to answer 1 question at the time:

1/ Per convention: Capitales letters are not allowed in package name. and the directory name and the package name must be IDENTICALS.

2/
Quote:

as I suspected no allowance for devel packages for headers
They need to be declared in a line starting with a # like this:
Code:

# Depends on: alsa-lib xorg-libx11 ....
3/ If you plan to compile a package that needs dependancies, keep reading the documentation, you will need to learn how to use a chroot environment. Good luck.

tnut 01-27-2018 05:27 PM

A good source of inspiration (when not available at BLFS) is archlinux, here is they recept for windowmanager which we adapt for NuTyX:

Code:

pkgname=windowmaker
pkgver=0.95.8
pkgrel=2
pkgdesc="An X11 window manager with a NEXTSTEP look and feel"
arch=('x86_64')
url="http://www.windowmaker.org/"
license=('GPL' 'custom')
depends=('libxinerama' 'libxrandr' 'libxmu' 'libpng' 'libxpm' 'libxft' 'libtiff' 'giflib')
source=(http://windowmaker.org/pub/source/release/WindowMaker-$pkgver.tar.gz
        wmaker.desktop)
sha256sums=('9dbf5c5571bb79c4b1584f496c960ee2cd7379af45ef0f58b4b0f487259de88a'
            '126da08ac9cffc4354bb4f246ec5ed5abd3cd29ed665d05d190c5bf842c84bef')

prepare() {
  cd WindowMaker-$pkgver
 
  autoreconf -fi
 
  # fix some paths FS#3080 - ckeck also Gentoo ebuild
  for file in WindowMaker/*menu* util/wmgenmenu.c; do
        if [[ -r $file ]] ; then
        sed -i -e "s:/usr/local/GNUstep/Applications/WPrefs.app:/usr/lib/GNUstep/Applications/WPrefs.app:g;" "$file"
        sed -i -e "s:/usr/local/share/WindowMaker:/usr/share/WindowMaker:g;" "$file"
        sed -i -e "s:/opt/share/WindowMaker:/usr/share/WindowMaker:g;" "$file"
        fi;
  done;
}

build() {
  cd WindowMaker-$pkgver
  export LINGUAS="be bg bs ca cs da de el es et fi fr fy gl hr hu hy it ja ko ms nl no pl pt ro ru sk sv tr uk zh_CN zh_TW"
  #export LINGUAS="`ls po/*.po | sed 's:po/\(.*\)\.po$:\1:'`"
 
  ./configure --prefix=/usr --sysconfdir=/etc --enable-xinerama \
    --localedir=/usr/share/locale --with-gnustepdir=/usr/lib/GNUstep \
    --enable-usermenu --enable-modelock --enable-randr
  make
}

package() {
  cd WindowMaker-$pkgver
 
  make DESTDIR="$pkgdir" install
  install -D -m644 COPYING.WTFPL "$pkgdir/usr/share/licenses/$pkgname/COPYING.WTFPL"
  install -D -m644 ../wmaker.desktop "$pkgdir/usr/share/xsessions/wmaker.desktop"
}

In NuTyX it become something like this:

Code:

# Depends on: xorg-libxinerama xorg-libxrandr xorg-libxmu libpng xorg-libxpm xorg-libxft libtiff giflib

name=windowmaker
version=0.95.8

description="An X11 window manager with a NEXTSTEP look and feel"
url="http://www.windowmaker.org/"

source=($url/pub/source/release/WindowMaker-$version.tar.gz)

prepare() {
  cd WindowMaker-$version
 
  autoreconf -fi
 
  # fix some paths FS#3080 - ckeck also Gentoo ebuild
  for file in WindowMaker/*menu* util/wmgenmenu.c; do
        if [[ -r $file ]] ; then
        sed -i -e "s:/usr/local/GNUstep/Applications/WPrefs.app:/usr/lib/GNUstep/Applications/WPrefs.app:g;" "$file"
        sed -i -e "s:/usr/local/share/WindowMaker:/usr/share/WindowMaker:g;" "$file"
        sed -i -e "s:/opt/share/WindowMaker:/usr/share/WindowMaker:g;" "$file"
        fi;
  done;
}

build() {
  cd WindowMaker-$version
  export LINGUAS="da de es fi fr it pt ru tr"

  ./configure --prefix=/usr --sysconfdir=/etc --enable-xinerama \
    --localedir=/usr/share/locale --with-gnustepdir=/usr/lib/GNUstep \
    --enable-usermenu --enable-modelock --enable-randr
  make
}

package() {
  cd WindowMaker-$version
 
  make DESTDIR=$PKG install

  mkdir -p $PKG/usr/share/xsessions
  cat > $PKG/usr/share/xsessions/wmaker.desktop << "EOF"
[Desktop Entry]
Encoding=UTF-8
Name=windowmaker
Exec=/usr/bin/wmaker
Type=Application
EOF
chmod 644 $PKG/usr/share/xsessions/wmaker.desktop

}


BW-userx 01-27-2018 07:37 PM

as far as dependencies, I figured maybe their'd be a method to write within the file its needs and my some Linux magic it'd down load it and install it etc.. or whatever else or how ever that works to satisfy its dependency needs, hence Linux Magic ( :rollseyes: )

as the draw back is figuring out how to add the devel packages, as it stands on imlib2 I ran in to this just moments ago.

Code:

checking for freetype2... no
configure: error: Package requirements (freetype2) were not met:

No package 'freetype2' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables FREETYPE_CFLAGS
and FREETYPE_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
root [ /usr/ports/personal/imlib2-devel/imlib2 ]#

running autogen.sh

BW-userx 01-27-2018 07:46 PM

Quote:

Originally Posted by tnut (Post 5812324)
Ouch I try to answer 1 question at the time:

1/ Per convention: Capitales letters are not allowed in package name. and the directory name and the package name must be IDENTICALS.

2/
They need to be declared in a line starting with a # like this:
Code:

# Depends on: alsa-lib xorg-libx11 ....
3/ If you plan to compile a package that needs dependancies, keep reading the documentation, you will need to learn how to use a chroot environment. Good luck.

LOoks scary
https://www.nutyx.org/en/build-in-chroot

ohh to the unknown... it's not Like I haven't reinstalled due to screwing it up. :D

I'll dig in when I get more time, as it states it takes time to download some stuff...

tnut 01-28-2018 09:05 AM

For your info, I did the package and add the recept on GIT:
https://github.com/NuTyX/extra/commi...68c599f34ec708
http://downloads.nutyx.org/logs/x86_...indowmaker.log

BW-userx 01-28-2018 09:25 AM

Quote:

Originally Posted by tnut (Post 5812562)

So you did window maker and added it to your repo?
Thank you very much that sweet!
Does it have the build script so I can look at it to get a better understanding of this process.


Hopefully I can get a hand full of dockapps to add along with it, they'll work in Fluxbox too. I've got a few running in it that I copied over from my other system that work.

I just need to know how to get the dependenies development source in order to get them to compile.

I'm on a tablet right now so checking that link out is hardly possible.

tnut 01-28-2018 09:32 AM

Quote:

Does it have the build script so I can look at it to get a better understanding of this process.
It's always together.
http://downloads.nutyx.org/x86_64/cu...a/windowmaker/

At the moment available on "current" branch which you can activate by putting:
Code:

version current
in your /etc/cards.conf

The "resolving of dependencies" story need that you build your package following at least two rules:

1/ in chroot
2/ by using the command "cards depcreate" (if you don't mind to recompile all the deps OR
3/ by using the command "cards create" (if you did the synchro of all the existing deps)

BW-userx 01-28-2018 01:53 PM

Quote:

Originally Posted by tnut (Post 5812572)
It's always together.
http://downloads.nutyx.org/x86_64/cu...a/windowmaker/

At the moment available on "current" branch which you can activate by putting:
Code:

version current
in your /etc/cards.conf

The "resolving of dependencies" story need that you build your package following at least two rules:

1/ in chroot
2/ by using the command "cards depcreate" (if you don't mind to recompile all the deps OR
3/ by using the command "cards create" (if you did the synchro of all the existing deps)

so that 'version current' does that put the entire system unto a current status?

How much space approx do think I am going to need to download all of this data, from the instructions?

plus the deps that go long with the apps I too need to add to that as well. which of course that part I'll have to figure out myself.

because I only allowed this system 60GB and I got approx 50GB left, I could set this entire thing up in a different area , like on another partition that I am using for data, as long as the directories belong to root(to keep it on the safe side), yes? (seems like a yes to me)

BW-userx 01-28-2018 02:57 PM

well .. color me lost
WindowMaker is installed, then I went to this,

my directory structor is,
/mnt/hd
and
/usr/ports/perso

in top line cards.conf
dir /mnt/hd/usr/ports/perso

then I get this.


Code:

root [ /home/userx ]# install-nutyx -ec
cp: cannot create regular file '/mnt/hd/etc/resolv.conf': No such file or directory
mount: /mnt/hd/dev: mount point does not exist.
mount: /mnt/hd/dev/pts: mount point does not exist.
mount: /mnt/hd/proc: mount point does not exist.
mount: /mnt/hd/sys: mount point does not exist.
mount: /mnt/hd/run: mount point does not exist.

******************************
Chroot path: /mnt/hd
******************************
chroot: failed to run command ‘/usr/bin/env’: No such file or directory
umount: /mnt/hd/run: no mount point specified.
umount: /mnt/hd/dev/pts: no mount point specified.
umount: /mnt/hd/dev: no mount point specified.
umount: /mnt/hd/proc: no mount point specified.
umount: /mnt/hd/sys: no mount point specified.

Code:

root [ /home/userx ]# ls /mnt
hd

does not look like it is hooking up to /usr/ports/perso, maybe that comes later nevertheless am I suppose to make them sub directories too?

going to read on chroot, while waiting ....

tnut 01-29-2018 03:03 AM

Quote:

How much space approx do think I am going to need to download all of this data, from the instructions?
For doing the job, you need to synchro base,cli and gui, here are the respective size of them in current branch:

302M base
616M cli
577M gui


All times are GMT -5. The time now is 03:01 PM.