For some reason the csh to sh commit part of my previous commit was left out,
but I guess it makes sense to make it it's own commit, so here. Debian frowns
upon csh scripts in the source directory, and it is generally a bad practice to
write scripts in csh, so I replaced a few instances of csh with sh and rewrote
a few scripts.
Thank you for your time,
-Chase
‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On April 23, 2018 4:43 PM, Chase <nicetry...@protonmail.ch> wrote:
> Not quite sure why my license file turned into a binary, take this one
> instead.
>
> Thank you for your time,
> -Chase
>
> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
> On April 23, 2018 4:38 PM, Chase via cdesktopenv-devel
> <cdesktopenv-devel@lists.sourceforge.net> wrote:
>
>> Hi all,
>>
>> I actually sent out this email about a week ago, but accidentally sent it to
>> only one person, I do have some small additions to my progress though. I
>> have some patches attached to this email, mostly spelling fixes and code
>> cleanup.
>>
>> I want to provide a small update on some progress I've made on the package,
>> but first I want to say thank you to Jon for fixing dtbuilder and the
>> rpcbind situation, great work!
>>
>> I have an update on the instant situation, instant makes, but only cleans
>> when run inside the folder, when clean is run at the cde top folder, it
>> doesn't clean, thus triggering the error.
>>
>> Next, a problem I forgot to mention, many of the files are missing copyright
>> headers, I will attach a text file with all the files, because this email is
>> long enough as it stands.
>>
>> The next issue is a reevaluation of the dependencies on debian systems. The
>> wiki states that git is needed to download and build the software, but you
>> can download a snapshot of the most current repository or any older
>> repositories without git. Build essentials is stated to also be needed, but
>> debian and debian based systems already provides this at install. On debian,
>> software is depended on in three ways, it can be depended, which means that
>> the package will flat out not work unless this software is installed,
>> recommended, which means the package may suffer breakages without it, but
>> still functions, and suggests, which means the package will not suffer any
>> problems if the dependency is not met and is merely an enhancer. The
>> qualifiers should be specified in the wiki or to me directly so I can build
>> the package properly, because putting these in the wrong categories can
>> cause problems. Putting xfonts in depends, for example, makes lintian throw
>> an error, because it is extremely rare for a program to cease functionality
>> altogether simply due to a missing font, so it either goes into recommends
>> or suggests depending on if functionality is missing without it, so I am
>> putting it into recommended unless someone can let me know if CDE still
>> works without it, or on the flipside, is written in a way in which CDE will
>> not function at all without them. I would test these dependencies myself,
>> but I have been busy building the package and writing documentation, I am
>> going to ask the package sponsors to join this mailing list and maybe they
>> will be able to provide insight into the situation. libssl seems to be
>> completely pointless, and can be removed from the dependency list, I did a
>> quick grep through the code and there is no code relating to libssl. Tcl
>> also seems to be minimally used, only appearing in
>> /programs/dtdocbook/tcl/*, this is by no means a priority, but if someone
>> could write tcl out of those files in that folder that would eliminate one
>> more needless dependency. Ksh and it's related programs should also be a bit
>> more shell independent if at all possible as to eliminate to dependency on
>> ksh, but again, that isn't the biggest issue as of now. I haven't looked
>> much into the other dependencies, but I am sure some of them could be put
>> into recommended, suggested, or removed entirely.
>>
>> As for the /usr/dt situation, I understand that backwards compatibility is
>> an important issue when it comes to scripts, but on the flip side, many unix
>> platforms simply use older versions of CDE as it is, so those who want a
>> current offering probably won't be affected and those who want to maintain
>> backwards compatibility are still using CDE 1.0. As for /usr/dt being the
>> standard, I looked around, and not from POSIX, SUS, IEEE, ISO or FHS could I
>> find a single reference to /usr/dt being the standard directory for CDE, the
>> closest thing I could find to a CDE standard was ISO 1295 for motif, but it
>> has since been withdrawn. It may have been the standard back in the 1990s,
>> however it is not today, and should be made to (ironically) comply with
>> modern day standards. I have two desktops installed on my system, lxde and
>> lxqt, both of them put data from usr into their respective subcategories,
>> /usr/share, /usr/bin, /usr/lib, and none of them define something like
>> /usr/lxde/* and put all the files there, so a quick fix would be replacing
>> all the hardcoded dt stuff with it's proper place in usr, but unfortunately,
>> /usr/dt can not remain if a debian package is still desired, I could ask my
>> sponsors if they would be willing to override the issue, but an override
>> usually comes with the presumption that the issue will be fixed soon or that
>> attempting to fix the problem would break functionality so badly it would be
>> counterproductive. The latter statement does not seem to be true, and thus
>> it would only be putting off a fix. Also, as for /etc/dt and /var/dt, these
>> are fine and debian doesn't throw any errors, however, /var/dt could be
>> broken up even further into the provided subdirectories, but /var/dt is
>> valid as of now. As for symlinking, I think that it would be the equivalent
>> of putting a painting on a hole in the wall. The DESTDIR problem is more of
>> an inconvenience more than anything, this is the bug that referenced it:
>> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=689098
>>
>> As for infolib, C and ja, debuild creates a fake root in the package's files
>> in order to test the package, maybe this is some sort of glitch regarding
>> build location? The errors being given to me say that when the package is
>> installed, these directories are being installed on root.
>>
>> I've been busy as of late getting some install scripts to work, I tried some
>> from a package made by a sparkylinux maintainer, however those scripts throw
>> more errors than they are worth, so I will be looking at implementing the
>> ones provided by CDE. Debian is now throwing errors about the recursive
>> chown, (chmod -R a+rwx /var/dt for a post install script) Debian gives these
>> suggestions in order to replace recursive chown:
>> - If your package uses a static uid, please perform the chown at
>> package build time instead of installation time.
>> - Use a non-recursive call instead, ensuring that you do not change
>> ownership of files that are in user-controlled directories.
>> - Use runuser(1) to perform any initialization work as the
>> user you were previously chowning to.
>>
>> I tried the verbose mode on lintian to see if I could get more info from
>> these errors, however the verbose mode only seems to enable color coding and
>> other non-important details, and no important information.
>>
>> As for the compiler warning thing, I did not mean to put down any work on
>> compiler and coverity warning work, it is important work that fixes many
>> security problems and I apologize if I came off that way, I just saw that
>> almost all work was being done on compiler and coverity warnings, and
>> assumed that was the main focus, goes to show you shouldn't assume things!
>>
>> Thank you for your time,
>> -Chase
>>
>> ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
>> On April 12, 2018 6:13 AM, Chase via cdesktopenv-devel
>> <cdesktopenv-devel@lists.sourceforge.net> wrote:
>>
>>> Hi all,
>>> I was advised to share a project of mine with this mailing list, as people
>>> may find it helpful and have things to add. I am normally opposed to having
>>> my private email be available to the public, but I will make an exception
>>> in this case. I have been working on a CDE package for Debian as of recent,
>>> and would like to share some of my progress. Good news is, the package
>>> builds and with some proper tweaking works without any major issues. The
>>> bad news is, is that Debian's standards for packages immediately
>>> disqualifies the package due to a number of issues. Luckily that number is
>>> small, but there are some sizable issues. The issues are as follows:
>>>
>>> - Non standard directory creation - this includes the directories C, ja,
>>> and infolib on root and the existence of /usr/dt. The contents of C and ja
>>> seem to be the exact same, so perhaps their functionality can be merged and
>>> moved elsewhere, infolib doesn't seem to have much of anything in it, and I
>>> don't really see the purpose of it's existence. /usr/dt is the biggest
>>> problem facing a CDE package. The short term simple solution would be to
>>> find a different place to store it in a standard directory, but the goal
>>> would be to specify a directory via the build mechanism, however CDE
>>> ignores DESTDIR, so this could be difficult.
>>> - Missing source code (supposedly) - Lintian, when checking for errors in
>>> the built package, finds binaries for dtbuilder and instant, and says that
>>> they are missing source code due to them being in binary format, but both
>>> of them have code. I suspect that for dtbuilder, this is an issue relating
>>> to a case mismatch in the makefile, it builds "dtbuilder" but cleans
>>> "Dtbuilder", and thus when I run clean, it will not clean. As for instant,
>>> I still have to look into it a bit further as it makes and cleans just fine.
>>> - Binaries defining rpath - dsdm, dtdspmsg, dtsrclean, dtsrcreate,
>>> dtsrdbrec, dtsrdelete, dtsrhan, dtsrindex, dtsrkdump, dtsrload, huffcode,
>>> imake and nsgmls all define rpath to /usr/lib, debian explains why this is
>>> a problems here: https://wiki.debian.org/RpathIssue
>>>
>>> - Package has unnecessary activation of ldconfig trigger, this might be an
>>> issue with CDE or a bug in lintian, I still need to look into it more.
>>> - libssl - Package makes use of libssl, I need to find out to what degree,
>>> and if it is actually a dependency like the wiki says, I will ignore it for
>>> now as trying to get the correct dependency on my system is for some reason
>>> a challenge. If libssl is truly needed for the project, the license must
>>> include a linking exception clause as displayed here:
>>> https://en.wikipedia.org/wiki/OpenSSL#Licensing
>>>
>>> Some issues that are not blocking a release but are frowned upon by Debian:
>>>
>>> - Being a git release, since 2.2.4 isn't going to be seeing any of the
>>> issues above patched, and also a few people tested 2.2.4 without libxp and
>>> it fails to build, whereas the new build works. I decided to use the git
>>> release, however this is frowned upon due to one of Debian's goals is being
>>> stable.
>>> - Setting rpcbind to insecure, maybe be fixable with some tweaks in
>>> libtirpc.
>>> - CVEs, although I know that with the first one mentioned, it was patched
>>> by ibm and some other unix companies, does anyone have connections with
>>> them and would be willing to ask them for the patch? They may even have one
>>> for the second CVE as well.
>>>
>>> The main issues being worked on are compiler and coverity warnings, which
>>> means that these issues are being put on hold until further notice unless
>>> me or someone else decides to pick them up, so please le me know if you are
>>> interested.
>>>
>>> Thank you for your time,
>>> -Chase
From c55e59af079a2ffb666511b4c5b4d3d7201b529b Mon Sep 17 00:00:00 2001
From: chase <ch...@localhost.com>
Date: Mon, 23 Apr 2018 19:49:30 -0700
Subject: [PATCH] Rewrite csh scripts in sh, use sh instead of csh in scripts
---
.../IntegTools/post_install/dec/configMin.src | 2 +-
.../IntegTools/post_install/dec/configRun.src | 2 +-
.../IntegTools/post_install/dec/configTT.src | 2 +-
.../IntegTools/post_install/sun/configMin.src | 2 +-
.../IntegTools/post_install/sun/configRun.src | 2 +-
.../IntegTools/post_install/sun/configTT.src | 2 +-
.../IntegTools/post_install/uxp/configTT.src | 2 +-
cde/admin/IntegTools/updateTools/kfork | 6 +++---
cde/programs/dtmail/dtmail/DebugBento | 16 +++++++++-------
cde/programs/dtmail/dtmail/DebugMime | 13 +++++++------
cde/programs/dtmail/dtmail/RunLocalBento | 10 +++++-----
cde/programs/dtmail/dtmail/RunLocalMime | 8 ++++----
12 files changed, 35 insertions(+), 32 deletions(-)
diff --git a/cde/admin/IntegTools/post_install/dec/configMin.src b/cde/admin/IntegTools/post_install/dec/configMin.src
index 0dd018c3..05e52baf 100644
--- a/cde/admin/IntegTools/post_install/dec/configMin.src
+++ b/cde/admin/IntegTools/post_install/dec/configMin.src
@@ -227,7 +227,7 @@ XCOMM ###############################################################
ps -ef | grep inetd | grep -v grep >/tmp/tmppsout
if [ -s /tmp/tmppsout ]
then
- awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/csh
+ awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/sh
else
/usr/sbin/inetd -s
fi
diff --git a/cde/admin/IntegTools/post_install/dec/configRun.src b/cde/admin/IntegTools/post_install/dec/configRun.src
index 24ac0a31..bfe08b6f 100644
--- a/cde/admin/IntegTools/post_install/dec/configRun.src
+++ b/cde/admin/IntegTools/post_install/dec/configRun.src
@@ -429,7 +429,7 @@ DEFAULT_PRINTER="DtPrint"
ps -ef | grep inetd | grep -v grep >/tmp/tmppsout
if [ -s /tmp/tmppsout ]
then
- awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/csh
+ awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/sh
else
/usr/sbin/inetd -s
fi
diff --git a/cde/admin/IntegTools/post_install/dec/configTT.src b/cde/admin/IntegTools/post_install/dec/configTT.src
index 34afb6a5..d432e32d 100644
--- a/cde/admin/IntegTools/post_install/dec/configTT.src
+++ b/cde/admin/IntegTools/post_install/dec/configTT.src
@@ -228,7 +228,7 @@ XCOMM ######################################################################
ps -ef | grep inetd | grep -v grep >/tmp/tmppsout
if [ -s /tmp/tmppsout ]
then
- awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/csh
+ awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/sh
else
/usr/sbin/inetd -s
fi
diff --git a/cde/admin/IntegTools/post_install/sun/configMin.src b/cde/admin/IntegTools/post_install/sun/configMin.src
index 41bb9d0e..6084980d 100755
--- a/cde/admin/IntegTools/post_install/sun/configMin.src
+++ b/cde/admin/IntegTools/post_install/sun/configMin.src
@@ -262,7 +262,7 @@ XCOMM ###############################################################
ps -ef | grep inetd | grep -v grep >/tmp/tmppsout
if [ -s /tmp/tmppsout ]
then
- awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/csh
+ awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/sh
else
/usr/sbin/inetd -s
fi
diff --git a/cde/admin/IntegTools/post_install/sun/configRun.src b/cde/admin/IntegTools/post_install/sun/configRun.src
index c6b437d4..bc691a10 100755
--- a/cde/admin/IntegTools/post_install/sun/configRun.src
+++ b/cde/admin/IntegTools/post_install/sun/configRun.src
@@ -313,7 +313,7 @@ DEFAULT_PRINTER="DtPrint"
ps -ef | grep inetd | grep -v grep >/tmp/tmppsout
if [ -s /tmp/tmppsout ]
then
- awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/csh
+ awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/sh
else
/usr/sbin/inetd -s
fi
diff --git a/cde/admin/IntegTools/post_install/sun/configTT.src b/cde/admin/IntegTools/post_install/sun/configTT.src
index 6d6f2ca8..4f6d8341 100755
--- a/cde/admin/IntegTools/post_install/sun/configTT.src
+++ b/cde/admin/IntegTools/post_install/sun/configTT.src
@@ -155,7 +155,7 @@ XCOMM ######################################################################
ps -ef | grep inetd | grep -v grep >/tmp/tmppsout
if [ -s /tmp/tmppsout ]
then
- awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/csh
+ awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/sh
else
/usr/sbin/inetd -s
fi
diff --git a/cde/admin/IntegTools/post_install/uxp/configTT.src b/cde/admin/IntegTools/post_install/uxp/configTT.src
index e8f3e987..0b48774c 100644
--- a/cde/admin/IntegTools/post_install/uxp/configTT.src
+++ b/cde/admin/IntegTools/post_install/uxp/configTT.src
@@ -155,7 +155,7 @@ XCOMM ######################################################################
ps -ef | grep inetd | grep -v grep >/tmp/tmppsout
if [ -s /tmp/tmppsout ]
then
- awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/csh
+ awk '{print "kill -1 " $2}' /tmp/tmppsout | /bin/sh
else
/usr/sbin/inetd -s
fi
diff --git a/cde/admin/IntegTools/updateTools/kfork b/cde/admin/IntegTools/updateTools/kfork
index 242fd27e..d08f3663 100755
--- a/cde/admin/IntegTools/updateTools/kfork
+++ b/cde/admin/IntegTools/updateTools/kfork
@@ -17,17 +17,17 @@ fi
ps ${PS_ALL_FLAG} | grep $1 > /tmp/tmp.$$
if [ -s /tmp/tmp.$$ ]
then
- awk '{print "kill", $1}' /tmp/tmp.$$ | /bin/csh
+ awk '{print "kill", $1}' /tmp/tmp.$$ | /bin/sh
sleep $die_time # wait for it to die
ps ${PS_ALL_FLAG} | grep $1 > /tmp/tmp.$$
if [ -s /tmp/tmp.$$ ]
then
- awk '{print "kill -3", $1}' /tmp/tmp.$$ | /bin/csh
+ awk '{print "kill -3", $1}' /tmp/tmp.$$ | /bin/sh
sleep $die_time # wait for it to die
ps ${PS_ALL_FLAG} | grep $1 > /tmp/tmp.$$
if [ -s /tmp/tmp.$$ ]
then
- awk '{print "kill -9", $1}' /tmp/tmp.$$ | /bin/csh
+ awk '{print "kill -9", $1}' /tmp/tmp.$$ | /bin/sh
fi
rm /tmp/tmp.$$
fi
diff --git a/cde/programs/dtmail/dtmail/DebugBento b/cde/programs/dtmail/dtmail/DebugBento
index c8102ef9..69933f5c 100644
--- a/cde/programs/dtmail/dtmail/DebugBento
+++ b/cde/programs/dtmail/dtmail/DebugBento
@@ -1,17 +1,19 @@
-#!/bin/csh
+#!/bin/sh
#
# A script that aids in debugging and testing dtmail
#
-if ( `uname -s` != SunOS ) then
+if [ `uname -s` != SunOS ]
+ then
echo "Only support SunOS"
exit 1
endif
-set echo
-setenv DT_MAIL /home/dougr/INBOX
-setenv DEFAULT_BACKEND Bento
-setenv LD_LIBRARY_PATH ../libDtMail:../../../lib/Bento:../../../binstall/lib:$LD_LIBRARY_PATH
+
+export DT_MAIL=$HOME/INBOX
+export DEFAULT_BACKEND=Bento
+export LD_LIBRARY_PATH=../libDtMail:../../../lib/Bento:../../../binstall/lib:$LD_LIBRARY_PATH
ldd -r dtmail
-if ( -f core ) then
+if [ -f core ]
+ then
exec debugger dtmail core &
else
exec debugger dtmail &
diff --git a/cde/programs/dtmail/dtmail/DebugMime b/cde/programs/dtmail/dtmail/DebugMime
index da738e99..7c2507e6 100644
--- a/cde/programs/dtmail/dtmail/DebugMime
+++ b/cde/programs/dtmail/dtmail/DebugMime
@@ -1,18 +1,19 @@
-#!/bin/csh
+#!/bin/sh
#
# A script that aids in debugging and testing dtmail
#
-if ( `uname -s` != SunOS ) then
+if [ `uname -s` != SunOS ]
+ then
echo "Only support SunOS"
exit 1
endif
-set echo
-setenv LD_LIBRARY_PATH ../libDtMail:../../../binstall/lib:$LD_LIBRARY_PATH
+export LD_LIBRARY_PATH=../libDtMail:../../../binstall/lib:$LD_LIBRARY_PATH
ldd -r dtmail
-setenv ARGS "$*"
-if ( -f core ) then
+export ARGS="$*"
+if [ -f core ]
+ then
exec debugger dtmail core &
else
exec debugger dtmail &
diff --git a/cde/programs/dtmail/dtmail/RunLocalBento b/cde/programs/dtmail/dtmail/RunLocalBento
index ccdc9c8e..eb6fca71 100644
--- a/cde/programs/dtmail/dtmail/RunLocalBento
+++ b/cde/programs/dtmail/dtmail/RunLocalBento
@@ -1,16 +1,16 @@
#!/bin/csh -f
-set echo
#
# A script that aids in debugging and testing dtmail
#
-if ( `uname -s` != SunOS ) then
+if [ `uname -s` != SunOS ]
+ then
echo "Only support SunOS"
exit 1
endif
-setenv DT_MAIL /home/dougr/INBOX
-setenv DEFAULT_BACKEND Bento
-setenv LD_LIBRARY_PATH ../libDtMail:../../../lib/Bento:../../../binstall/lib:$LD_LIBRARY_PATH
+export DT_MAIL=$HOME/INBOX
+export DEFAULT_BACKEND=Bento
+export LD_LIBRARY_PATH=../libDtMail:../../../lib/Bento:../../../binstall/lib:$LD_LIBRARY_PATH
ldd -r ./dtmail
exec dtmail &
diff --git a/cde/programs/dtmail/dtmail/RunLocalMime b/cde/programs/dtmail/dtmail/RunLocalMime
index 9b4e1d7a..133f7dd0 100644
--- a/cde/programs/dtmail/dtmail/RunLocalMime
+++ b/cde/programs/dtmail/dtmail/RunLocalMime
@@ -1,14 +1,14 @@
-#!/bin/csh -f
+#!/bin/sh -f
#
# A script that aids in debugging and testing dtmail
#
-if ( `uname -s` != SunOS ) then
+if [ `uname -s` != SunOS ]
+ then
echo "Only support SunOS"
exit 1
endif
-set echo
#setenv DEFAULT_BACKEND RFC-MIME
-setenv LD_LIBRARY_PATH ../libDtMail:../../../binstall/lib:$LD_LIBRARY_PATH
+export LD_LIBRARY_PATH=../libDtMail:../../../binstall/lib:$LD_LIBRARY_PATH
ldd -r ./dtmail
exec ./dtmail $* &
--
2.17.0
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel