|
OpenBSD Packages and Ports Installation and upgrading of packages and ports on OpenBSD. |
|
Thread Tools | Display Modes |
|
|||
New Regina Rexx port
For those of you interested in the Rexx programming language,
I've been working on a Regina Rexx port for a while. Regina Rexx is maintained by Mark Hessling author of THE, the Hessling Editor, a clone of IBM's VM/CMS editor. http://regina-rexx.sourceforge.net/index.html Attached is a port for version 3.9.1 that runs on both OpenBSD 5.7 and on Bitrig 1.0 Untar it into the /usr/ports/lang directory. 2015-09-08 21:57 UTC: Changed attachment to latest version p2 2015-09-09 16:15 UTC: Changed attachment to version p3 2015-09-11 00:06 UTC Changed attachment to version p4 2016-09-20 19:39 UTC Added attachment for version p5 - works on i386
__________________
When you see a good move, look for a better one. --Lasker Last edited by comet--berkeley; 20th September 2016 at 07:38 PM. Reason: new version p5 - works on 32-bit i386 |
|
|||
Quote:
For item 1), ok I will change it. For 2) The documentation is actually versioned and separate from the regular source code. When the source code was at version 3.9.0 the documentation was at 3.8.2 For 3) I don't think there is a test or check target in the Makefile. After doing an install I usually test with something like a simple "hello world" script:: hello.rex: Code:
#! /usr/local/bin/rexx /* */ Say "Kilroy was here!" Exit For 4) /usr/ports/pobj is the working directory for the build. If /usr/ports is owned by root then pobj probably is too. For testing from an ordinary userid try redfining WRKOBJDIR something like this: Code:
$WRKOBJDIR=/tmp make fake Thanks again Jggimi
__________________
When you see a good move, look for a better one. --Lasker |
|
||||
You're welcome.
The documentation is stored in /usr/ports/distfiles as "regina.pdf" and "regutil.pdf" -- these are not versioned filenames as stored -- so any changes to these documents that don't change their names will cause distfile conflicts. This is why I recommended using a versioned $DIST_SUBDIR. (OK, I just echoed the Porter's Handbook, which recommends this.) |
|
|||
Quote:
http://docs.freebsd.org/doc/4.6-RELE...ook/x1957.html And by looking at the /usr/ports/distfiles directory. I updated the attachment in my original posting to a newer version "p2".
__________________
When you see a good move, look for a better one. --Lasker |
|
||||
Thanks. I'll have to test again when I have some time.
Regarding "4," .. the installation scripts should never write outside the fake directory structure, and that is what my previous test disclosed. http://www.openbsd.org/faq/ports/differences.html#Fake Last edited by jggimi; 9th September 2015 at 03:17 PM. Reason: typo |
|
|||
I thought about the word "versioned" and changed my DIST_SUBDIR to include the version.
There is now a new "p3" version of the port attached to my original posting.
__________________
When you see a good move, look for a better one. --Lasker Last edited by comet--berkeley; 9th September 2015 at 04:20 PM. Reason: missing bracket... |
|
|||
Quote:
The "fake" directory for regina-rexx is /usr/ports/pobj/regina-rexx-3.9.1/fake-amd64 /usr/ports/pobj is part of the fake directory structure. Any userid doing a "make fake" must either have write access to this directory or use another directory... I appreciate your testing jggimi. Thanks!
__________________
When you see a good move, look for a better one. --Lasker |
|
||||
The USE_SYSTRACE test found policy violations, which usually means an installation script needs to be patched. It doesn't always mean there is a security problem, per se, but it does means that the installation script assumes the build machine is the install machine and installs things outside of a narrow set of directories. This may be due to hard-coded locations, or subordinate tools that write into hard coded locations.
I've been helping shep recently with a port that has this issue because it executes gtk-update-icon-cache during its installation step, which on OpenBSD is the fake step. We patched the install script to prevent it at that time, and used the x11/gnome MODULE with a modified PLIST to do it during pkg_add instead, which is when it is actually wanted. (We didn't invent the technique. We poked around the ports tree and adapted it from other ports.) As I didn't investigate this issue when I tested your port earlier, only noted it happened, I'll do so when I test it again. I'll see if I can determine the root cause and work up a fix. There are three goals beyond security for the fake step: 1) don't install anything by accident on on a build machine which may never actually install the package, 2) ensure the package contains everything needed by the application, and 3) ensure that pkg_delete removes the application completely, leaving nothing behind but any locally modified configuration files. Last edited by jggimi; 9th September 2015 at 06:47 PM. Reason: typos - and a last paragraph on the fake stap |
|
||||
I added Xtrace to the install-sh script, and can see that the policy problems first occur when the script tries to manage addons.
(Unrelated, I also noticed while you have a patch to add bitrig support, you have a post-extract edit which could be a patch also.) |
|
|||
Thanks, I will take a closer look at the install code for the addon libraries, libregutil, libtest1 and libtest2.
__________________
When you see a good move, look for a better one. --Lasker |
|
|||
There is a new version "p4" of the port and the systrace messages should be gone now.
I added a patch to the makefile.in and code to the post-install: to run the install-sh script to create directories.
__________________
When you see a good move, look for a better one. --Lasker |
|
||||
Thanks! Very cool! Installs and runs on amd64 -current. I ran a simple test program; but because its been decades since I've written -- or even seen -- any Rexx programs, I had to copy/paste one from the web.
If you post this to ports@ for consideration, I'm sure someone will recommend converting your post-extract target to a patch, since its just an edit. |
|
||||
There was a discussion today on misc@ regarding $USE_SYSTRACE. As make fake can (and should) now be run as a normal user, $USE_SYSTRACE is no longer recommended -- the FAQ will be revised.
http://marc.info/?t=144663454100005&r=1&w=2 |
Thread Tools | |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Creating port | backrow | OpenBSD Packages and Ports | 9 | 9th September 2009 11:55 AM |
SSH on port 443 | maxrussell | General software and network | 4 | 6th April 2009 05:16 AM |
port forwarding | ikevmowe | OpenBSD Security | 13 | 21st November 2008 06:03 PM |
VNC port forwarding help | revzalot | OpenBSD Security | 3 | 10th September 2008 06:59 AM |
vlc port failing | maxrussell | FreeBSD Ports and Packages | 11 | 27th May 2008 04:38 PM |