Bug 151330

Summary: zmd shouldn't be called zmd.exe
Product: [openSUSE] SUSE Linux 10.1 Reporter: Michael Matz <matz>
Component: ZenworksAssignee: James Willcox <snorp>
Status: VERIFIED WONTFIX QA Contact: Eric Waldow <ewaldow>
Severity: Major    
Priority: P5 - None CC: aj, dmueller, gp, suse-beta, tschmidt
Version: Beta 3.5internal   
Target Milestone: Beta 8   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Michael Matz 2006-02-15 22:27:53 UTC
The file and process name of the zmd process as well as of the rug application
shouldn't be called *.exe in SuSE Linux.  Rationale: .exe files are connected
with Windows executables by most of the community, and we certainly don't
want to leave the impression that some of our core tools (the update process
here) relies on Windows technology.  That would be really bad PR and
embarassing.
Comment 1 Joe Shaw 2006-02-15 23:22:58 UTC
You may be interested in setting the process name so that you see "zmd" in top rather than "mono" and so that you can "killall zmd".  See bug 147947.
Comment 2 Gerald Pfeifer 2006-02-16 00:21:58 UTC
Yes, please.
Comment 3 Andreas Kleen 2006-02-17 20:13:25 UTC
setting the process name will not be enough because then you would 
end up with

zmd zmd.exe ... 

you would need to rewrite argv[] too. Best would be to get rid of the .exe
filenames for shipped programs, they indeed look quite bad and I can't imagine that mono actually needs them.

Comment 4 Naresh Wignarajah 2006-03-01 20:01:41 UTC
Also to do this in the ZENworks branch and builds. James (snorp) check in with me.
Comment 5 Tambet Ingo 2006-03-03 16:06:13 UTC
mono is a "Windows technology", we should hide the fact zmd uses mono as well. Let's rename our mono package to "ycp8" so the community would accept it (and to get some really good PR).
Comment 7 James Willcox 2006-03-03 19:12:42 UTC
Using Mono, a Novell product, creates bad PR?  I'm not going to change the file names just because of some ridiculous knee-jerk anti-Microsoft attitude.

The fact that 'killall' doesn't work is a separate issue that I'm willing to look into, and I've opened a separate bug for that: 155089
Comment 8 Christian Boltz 2006-03-03 20:19:38 UTC
I understand that you don't want to rename the mono package - but that was not the initial subject of this bugreport.

The subject of this bugreport is renaming of "zmd.exe" - and this is something you should _really_ consider. Not (only) because *.exe sounds too much like windows, but because Linux binaries usually don't have an extension.
Comment 9 James Willcox 2006-03-03 20:38:05 UTC
I don't care about anything looking like Windows.

zmd.exe is not a Linux binary, it is a .NET executable assembly, and those the exe extensions are the norm for those.  I don't see any good reason at all to change it.
Comment 10 Michael Matz 2006-03-06 06:33:51 UTC
So, if you don't care, why not simply rename the files?  Believe me when I say
that these process names will result in funny looking faces in the community.
Anyway, I tried.  This just proves my point.
Comment 11 Andreas Jaeger 2006-03-06 07:46:19 UTC
If I run zmd, I run /usr/sbin/zmd, and therefore it makes sense to use that name.

James, please follow comment #4!
Comment 12 James Willcox 2006-03-06 22:14:37 UTC
Andreas, I've already said that I would like that to be the case.  In comment #7, I said that I had opened a bug to that affect.

What I'm opposed to is renaming any files for silly "but it looks like Windows" reasons.
Comment 13 James Willcox 2006-03-06 22:17:48 UTC
Closing, again.
Comment 14 Michael Matz 2006-03-07 12:36:41 UTC
For fixing the killall issue the easiest (and only 100% guaranteed to work)
approach is renaming the files.  A sendmail like process self-rename is possible but has it's own issues, for instance that the process name is not
reflected by an actual file anywhere, and that it's not as easy to implement
when argument need to be taken into account.  I'm wondering why you are so
violently against just renaming the executables, as surely mono loads
assemblies not named *.exe just fine (everything else would be a QoI bug).

Sure the convention for naming assemblies is *.exe, but that's not because
of .NET or C#, but because they were originally implemented on the Windows
platform and just followed their naming style.  Why UNIX platforms have
to follow the same convention, instead of using the established one (i.e.
without extension) is beyond me.  It's just a normal executable, nothing
special.  That it's an mono assembly shouldn't matter.  Like it doesn't
matter for shell, perl, python scripts, ELF executables, or you name it.
Noone of these has any special extension by convention, why should mono be
different?

You are right, that mono is a Novell product, and that we should not fear
bad PR from using it at all.  But the current products will be the first on
the market which use mono.  So why not set a nice standard on our own?
Comment 15 Thomas Wiest 2006-03-07 18:54:39 UTC
Michael, are you advocating that we rename all Java .jar and .class files as well?
Comment 17 Joe Shaw 2006-03-07 23:12:51 UTC
The convention for mono apps is to name them foo.exe (or Foo.exe) and execute them through a shell script named foo.  We're not using the binfmt magic to magically execute mono on .exe files (nor do we want to, probably; different apps need different options).

If you use "exec -a newname" in your shell script, along with the prctl() trick mentioned in bug 147947, you will get pretty consistent process naming with ps, top, pidof, killall, etc.

I don't see a problem with the .exe myself; in fact a large part of the reason why zmd is in C# is so that it'll be cross-platform to Windows someday, and there will be only one master codebase for zenworks across all platforms.  The cross-platform nature of mono is a strength, not a weakness, and I get the feeling that .exe will become only more popular on Linux systems as time goes on.
Comment 19 James Willcox 2006-03-09 00:07:14 UTC
FWIW, I've fixed the killall and ps/top issues (bug 155089).
Comment 20 James Willcox 2006-03-21 18:53:06 UTC
Closing again.