LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - General
User Name
Password
Linux - General This Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.

Notices


Reply
  Search this Thread
Old 11-16-2019, 05:24 AM   #16
ondoho
LQ Addict
 
Registered: Dec 2013
Posts: 19,872
Blog Entries: 12

Rep: Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053

Quote:
Originally Posted by hazel View Post
That's not quite true. Source packages aren't usually written for any particular distro. It's the binary packages that are distro-specific. But a source package can still do with a maintainer.
Wouldn't that be the same as the application developer(s)?
Any example of distro-agnostic source packages (that have a maintainer)?
 
Old 11-16-2019, 05:28 AM   #17
jsbjsb001
Senior Member
 
Registered: Mar 2009
Location: Earth, unfortunately...
Distribution: Currently: OpenMandriva. Previously: openSUSE, PCLinuxOS, CentOS, among others over the years.
Posts: 3,881

Rep: Reputation: 2063Reputation: 2063Reputation: 2063Reputation: 2063Reputation: 2063Reputation: 2063Reputation: 2063Reputation: 2063Reputation: 2063Reputation: 2063Reputation: 2063
Quote:
Originally Posted by hazel View Post
So what about C-library calls? Linux uses GNU libc; the BSD's have their own versions. Would that make a difference?
Well, that's probably the elephant in the room so to speak... I assume if it's using functions only available in the GNU C library that aren't available in the BSD C library, then it's Linux-specific, otherwise it isn't.
 
Old 11-16-2019, 05:33 AM   #18
hazel
LQ Guru
 
Registered: Mar 2016
Location: Harrow, UK
Distribution: LFS, AntiX, Slackware
Posts: 7,569
Blog Entries: 19

Rep: Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451
An orphan package would need to be maintained by someone other than the developer. I felt compelled to take under my wing an orphan program called pmw that I have used a lot and have a high opinion of. It was developed by the same man who helped to write exim, but more as a personal project, I think. He was interested in music and this is a music-writing program. Then suddenly this year both the website that hosted it and the email address of the developer vanished from sight. As far as I could see, I was the only one to have the latest version (which I had downloaded earlier for my personal use), though there are copies of an earlier version in some repos. So I put it up on Sourceforge; I didn't want it to be lost to the community.

I guess that makes me the maintainer, but I certainly can't patch or alter it. My programming skills don't extend to anything like that.
 
Old 11-16-2019, 06:09 AM   #19
Firerat
Senior Member
 
Registered: Oct 2008
Distribution: Debian sid
Posts: 2,683

Rep: Reputation: 783Reputation: 783Reputation: 783Reputation: 783Reputation: 783Reputation: 783Reputation: 783
Quote:
Originally Posted by hazel View Post
Oh dear! I really should read more carefully, shouldn't I.
Sorry!

Just for interest, how far is a source packages Linux-specific? I mean, quite a lot of Linux software is used on BSD as well. Does someone have to patch the programs to run on the different OS or is it just a matter of compiling them in that environment?
a package is only a package when something is bundled up into a package along with metadata that describes said package.

source code should not be considered a package
Unless it is a source code package crafted for a specific package manager, and thus has added metadata.

You will get yourself tied in knots trying to answer the OP's question(s).


as for compiling
for brevity ./configure is a shell script
it figures out what it is running on and generates appropriate Makefile

for example, a snippet from configure.ac of grub
Code:
# This normalizes the names, and creates a new variable ("host_kernel")
# while at it, since the mapping is not always 1:1 (e.g. different OSes
# using the same kernel type).
case "$host_os" in
  gnu*)                         host_kernel=hurd ;;
  linux*)                       host_kernel=linux ;;
  freebsd* | kfreebsd*-gnu)     host_kernel=kfreebsd ;;
  netbsd*)                      host_kernel=netbsd ;;
  solaris*)                     host_kernel=illumos ;;
  cygwin | windows* | mingw32*) host_kernel=windows ;;
esac

#
The Makefile sets appropriate flags,
those flags can then change the code compiled
Code:
get_scsi_disk_name (char *name, int unit)
{
#if defined(__linux__)
  /* GNU/Linux */
  sprintf (name, "/dev/sd%c", unit + 'a');
#elif defined(__GNU__)
  /* GNU/Hurd */
  sprintf (name, "/dev/sd%d", unit);
#elif defined(__FreeBSD_kernel__)
  /* kFreeBSD */
  if (get_kfreebsd_version () >= 400000)
    sprintf (name, "/dev/da%d", unit);
  else
    sprintf (name, "/dev/rda%d", unit);
#elif defined(__NetBSD__) && defined(HAVE_OPENDISK)
  /* NetBSD */
  char shortname[16];
  int fd;
...
once you compile it, tar it up, and then package that tarball with metadata describing the package, its prerequisites i.e the binary compatible library vesions you compiled it against.

it becomes a package

and yes packages contain tarballs

do
Code:
unar somedebianpackage.deb
you will find tarballs in the output
 
Old 11-17-2019, 01:54 AM   #20
ondoho
LQ Addict
 
Registered: Dec 2013
Posts: 19,872
Blog Entries: 12

Rep: Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053
Quote:
Originally Posted by hazel View Post
... pmw ...
Have you checked the web archive if maybe you can still find the old site (and the code)?
 
1 members found this post helpful.
Old 11-17-2019, 03:18 AM   #21
hazel
LQ Guru
 
Registered: Mar 2016
Location: Harrow, UK
Distribution: LFS, AntiX, Slackware
Posts: 7,569
Blog Entries: 19

Rep: Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451
I've just tried that. Thanks for the hint. I couldn't remember the actual page address so I searched for the site as such. Got only one hit from that site and it wasn't pmw, just some text about robots. AFAIR you can get the old address in full from the Wikipedia article on Philip's Music Writer and from the AUR record, but Wikipedia has reclassied it as a dud.

Last edited by hazel; 11-17-2019 at 03:19 AM.
 
Old 11-17-2019, 04:09 AM   #22
ondoho
LQ Addict
 
Registered: Dec 2013
Posts: 19,872
Blog Entries: 12

Rep: Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053
^ how about this.
The source code itself is not available, but i searched and found it here.
Maybe you should put it online too.
Maybe a version control system upload for future collaboration?

PS: I understand what a source package could be. Nothing more than a zipped snapshot of the software source (at some suitable moment, called "release") with some installation instructions.

Last edited by ondoho; 11-17-2019 at 04:11 AM.
 
1 members found this post helpful.
Old 11-17-2019, 05:46 AM   #23
hazel
LQ Guru
 
Registered: Mar 2016
Location: Harrow, UK
Distribution: LFS, AntiX, Slackware
Posts: 7,569
Blog Entries: 19

Rep: Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451Reputation: 4451
How come you found this and I didn't? I was looking everywhere. There is now a copy on Sourceforge which I put up there out of desperation. I wrote a Slackbuild which references it.

I notice that the copy you found is a Mac port. I wonder if it is the same as the Linux version. See for example posts 13 & 17.
 
Old 11-18-2019, 11:20 AM   #24
ondoho
LQ Addict
 
Registered: Dec 2013
Posts: 19,872
Blog Entries: 12

Rep: Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053
Quote:
Originally Posted by hazel View Post
I notice that the copy you found is a Mac port. I wonder if it is the same as the Linux version.
I had a very cursory look at the contents, looked like all-Unix installation instructions to me.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
[SOLVED] No package 'x11' found No package 'xext' found No package 'xdamage' found No package 'xfixes' found No package 'x11-xcb' found Jigsaw Linux From Scratch 14 02-23-2021 08:35 PM
debian package maintainer steps down hemlocktree Bodhi 7 03-16-2019 06:43 AM
Wanna be a package maintainer ! megaprog Debian 7 11-08-2006 07:03 PM
Interview with gaim Maintainer Rob Flynn jeremy Interviews 15 11-15-2004 03:33 PM
Interview with gaim Maintainer Rob Flynn jeremy LQ Suggestions & Feedback 0 09-24-2004 01:20 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - General

All times are GMT -5. The time now is 05:05 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration