Re: /usr/local removed... but entries for it exist yet!

From: Igor Sobrado (igor_at_no-spam.on.the.net)
Date: 12/14/04

  • Next message: Randy: "Re: Anyone try Doom 3 Server on NetBSD?"
    Date: 14 Dec 2004 11:11:08 +0100
    
    

    Frederick Bruckman <fredb@immanent.net> wrote:
    >
    > Who are these "most people"? Why do we ship a compiler with the a base
    > system, if no one codes? ;-)

    Hi Frederick.

    That is a very good point. But in the 80's and earlier 90's /usr/local
    was a directory used to install locally developed software, either
    scripts or binaries. The C compiler is a requirement for any Unix-like
    system (I hardly understand why some companies sell the C compiler as
    an optional software package, they should provide the compiler in the
    base system and sell other development tools like profilers or
    development environments instead).

    The C compiler can be used to build that software or other packages
    required for production.

    > Honestly, if you install commonly available software out-of-the-box,
    > it'll go to "/usr/local" by default; your scripts are going to go in
    > "/usr/local/bin", and so on. I doubt if you'll still have an empty
    > "/usr/local" after you've been running NetBSD for a while.

    Agreed, but pkgsrc/ports offer a better approach. Software can be
    compiled from source code. It allows users to build highly customized
    packages that will go to /usr/pkg or /usr/ports. There is not a
    requirement for /usr/local for customized software, though.

    I prefer installing some customized software in /usr/contrib (that
    directory existed in earlier BSD systems), and using /usr/pkg
    for installing precompiled binaries. I do not need a lot of
    customized software (mainly nmh, metamail, fetchmail, and some
    other packages). Most software is just perfect in its default
    installation. In the past, /usr/contrib was used for storing
    software that was not under the direct control of the operating
    system developers, and it should be used by some companies that
    provide third party packages that are not being updated or fixed
    but are required yet. This way, users should be able to install
    updated binaries in either /usr/{pkg,ports} (BSD) or /opt (SVR4.x)
    without breaking the system. I have adopted this model, but I
    build software in /usr/contrib myself.

    Shorty, if someone needs customized binaries he can build those
    binaries from source code using pkgsrc/ports. That is the why
    pkgsrc/ports is so powerful.

    > I don't believe "/usr/local" has been "dropped". I believe, rather, it's
    > been declared hands off, like "/home". In other words, it's designated
    > as being under the complete control of the user. If "/usr/local" were
    > universally despised, that would be one thing, but that's not the case.
    > What happened (IIRC), was that one developer, who apparently arranges
    > his "/usr/local" like "/opt", insisted that we stop installing the empty
    > "man" and "share" directories, and no one could see a reason to keep on
    > doing that.

    I understand it now. If /usr/local has not been "dropped" providing
    references to it in both the shell scripts and man configuration
    file makes a lot of sense, even if the directory is not installed by
    default.

    I agreed about empty directories. I do not like, for example,
    those empty /usr/share/man/html?? directories. OTOH, I hope that
    man pages will NOT be writen in HTML in the future! :-)))

    OTOH, /usr/share/man/{cat,man}?? makes perfect sense to me. Those
    directories are being used and are standard on any BSD or SVR4.x
    distribution.

    Sometimes cleaning the system directories is a good idea. It happened
    with some files that were removed from the NetBSD 2.0 source code.
    But perhaps /usr/local was more useful than /usr/share/man/html?? is.
    At least it can be used for customized binaries that are not build
    using pkgsrc/ports or, as it was used in the past, for locally
    developed software.

    Alternatively, the installation program can be modified to chose if
    /usr/local is available. By the way, the new installation program
    is *fine*. Now, setting up a lot of filesystems is an easy task
    (no more text windows over the filesystem parameters list!), and
    when a kernel is chosed, other kernels are automatically dropped.
    It makes more sense and works much better. And it does not core
    dumps now!

    Nice to see that now /tmp is a MFS by default. We do not need to
    modify /etc/fstab as described in /usr/share/examples/fstab.

    It would be nice being able to mount another MFS filesystem in /var/run.
    But it currently only works in OpenBSD. I am not sure what the problem
    is, but once mounted, the system cannot be cleanly shut down. :-(

    Cheers,
    Igor.


  • Next message: Randy: "Re: Anyone try Doom 3 Server on NetBSD?"

    Relevant Pages

    • Re: Samba 2.2.8 for OpenVMS, new release
      ... > binary that would match a specific OpenVMS release. ... within the limits of what the operating environment ... by the default installation of the host environment. ... compiler; to my knowledge, there has never been a default installation ...
      (comp.os.vms)
    • OT: IVF 11.0 on MSVS2008 array visualizer problem
      ... At first I thought AV would be part of the compiler, ... Now, there were two alternatives there, Viewer and Visualizer. ... I followed the installation procedure described in the file on the ... Fünf Minuten Hilfe sind besser als zehn Minuten Mitleid ...
      (comp.lang.fortran)
    • Re: Enabling Rapid Accelerator simulation mode in Simulink
      ... Unable to locate a Visual C/C++, Watcom, Borland, Intel, or LCC compiler. ... Please define one of the following environment variables: ... Microsoft Visual C installation and ensure the appropriate environemnt ... Professional Editions also require that the Microsoft Windows Software ...
      (comp.soft-sys.matlab)
    • Re: Cluster with 1 server ok second not
      ... The initial service pack or hotfix installation should be done at the node ... that owns the resource. ... you need to update the local binaries only. ...
      (microsoft.public.sqlserver.clustering)
    • Re: gcc problem
      ... >>> The other common option, which is okay only as long as you keep ... >>> it to just two versions of the compiler, ... >Many of the basic system utils will use old libc... ... Blowing the installation of the shared version of the standard ...
      (comp.os.linux.development.apps)

  • Quantcast