From: Joerg on
Grant wrote:
> On Mon, 26 Jul 2010 14:03:24 -0700, Joerg <invalid(a)invalid.invalid> wrote:
>
>> Joel Koltner wrote:
>>> "Grant" <omg(a)grrr.id.au> wrote in message
> ...
>>From a serious CAD user it can be expected that he or she understands
>> the basics of file management. In fact, gEDA was written completely
>> Linux-centric, ports to Windows have largely failed because some not so
>> compatible code must have been employed (in laymen's terms). Yet even
>> gEDA does what every CAD does, store libraries in program directories.
>
> Well that's plain stupid.
>

Care to explain why?


>> Meaning user libs and non-custom libs get splintered up. What's wrong
>> with allowing write access to the lib directory?
>
> Question is, which lib directory.
>
> The proper place for writable system libraries is /var/lib/$appname :)
>
> For example, my Slackware-11 box has:
>
> grant(a)deltree:~$ ls /var/lib
> arpd/ bsdgames/ elm/ logrotate/ misc/ mysql/ nfs/ rpm/ stunnel/ xdm/ xkb/
>
> The program may create its own directory there and allow user access
> and writing. It's difficult to find an exception to the standard
> unix rules for basic layout (Sorry, I forget the exact name,
> hierarchical file system or similar) that's been around for a
> decade or more.
>
> Simple, no?
>

All I can say is that I asked in the gEDA group why I can't have the std
libs and mine in one default place and the answer was pretty much, well,
that I can't easily do that. And that I should just log in sudo.

But it didn't matter anymore anyhow because gschem bungles refdeses upon
auto-annotate. That's a big no-no in CAD.


> Users may have private libraries under /home/username/whatever
>> I don't want an OS to tell me what I can't and cannot do, just like I
>> don't want a car to decide when to shift :-)
>
> There are standards out there that define a framework for these things,
> of course it is not rigid, as there's no Linux Incorporated controlling
> this stuff. Each application author has a choice of what standards to
> follow. A high end CAD system should follow the standard patterns for
> flexible target OS. (I haven't used CAD for 17 years, no idea what's
> what these days).
>

Well, I live with CAD for 24 years now :-)


> It's not about deciding when to shift, more about expecting the shift
> to have a standard H plus extras (reverse and fifth) pattern (or paddles,
> or gated semi-auto) and be roughly in the same spot (or two), within
> reach of the driver.
>
> You know, standards, so many to choose from ;)
>

I don't care which place they are in, or which side the steering wheel
is on. As long as there is no automatic transmission.

--
Regards, Joerg

http://www.analogconsultants.com/

"gmail" domain blocked because of excessive spam.
Use another domain or send PM.
From: Dave Platt on
In article <8b6g9iFgc3U1(a)mid.individual.net>,
Joerg <news(a)analogconsultants.com> wrote:

>> The problem is that if it can't tell you what not to do it can't tell any
>> other program what it can't do either.

>Oh, it can. All you need is to let the user set individual write access.
>It's not much, a library directory here and there, and so on. There
>should be stages, including access to everything. On their own risk, of
>course.

Sure... and Linux (and every other Unix-type OS I know of) has this
capability right "out of the box". It doesn't necessarily have a
convenient GUI setup intended to make this a one-click operation, but
as long as you're willing to get into the shell and type a command or
two, it shouldn't be difficult.

The way I'd do this (if I wanted to, in a particular case) would be:

(1) Install gEDA or whatever program is involved.

(2) Use "addgroup" or a similar utility (or just editing /etc/groups)
to create a "gedaguru" group.

(3) Edit /etc/groups to add my user-ID to this new group.

(4) "chown root.gedaguru /usr/lib/geda" (or "/usr/share/geda" or
whatever).

(5) "chmod -R g+w /usr/lib/geda"

Voila. Now, when logged in under the proper user-ID, the user now has
the ability to alter files in the gEDA library/share directory. Other
users cannot, as they aren't members of the proper group.

As you say, "On their own risk", but I see no reason why it would not
work.

Depending on what sort of package-install-and-update application a
particular Linux distro uses, it might be necessary to repeat step (5)
after updating the application, in order to keep all of the
permissions as they should be.

I think that this sort of capability hasn't been automated (in any
Linux distro I know of) because it files in the face of the standard
Unix-ish paradigm, that such systems are intended to be multi-user,
and should not allow what one user does to yngvi up what another
person's use of the same application (e.g. by altering "shared"
libraries).

If you're the only user on the system... well, have at it, and good
health to ya!

--
Dave Platt <dplatt(a)radagast.org> AE6EO
Friends of Jade Warrior home page: http://www.radagast.org/jade-warrior
I do _not_ wish to receive unsolicited commercial email, and I will
boycott any company which has the gall to send me such ads!
From: Joerg on
Dave Platt wrote:
> In article <8b6g9iFgc3U1(a)mid.individual.net>,
> Joerg <news(a)analogconsultants.com> wrote:
>
>>> The problem is that if it can't tell you what not to do it can't tell any
>>> other program what it can't do either.
>
>> Oh, it can. All you need is to let the user set individual write access.
>> It's not much, a library directory here and there, and so on. There
>> should be stages, including access to everything. On their own risk, of
>> course.
>
> Sure... and Linux (and every other Unix-type OS I know of) has this
> capability right "out of the box". It doesn't necessarily have a
> convenient GUI setup intended to make this a one-click operation, but
> as long as you're willing to get into the shell and type a command or
> two, it shouldn't be difficult.
>
> The way I'd do this (if I wanted to, in a particular case) would be:
>
> (1) Install gEDA or whatever program is involved.
>
> (2) Use "addgroup" or a similar utility (or just editing /etc/groups)
> to create a "gedaguru" group.
>
> (3) Edit /etc/groups to add my user-ID to this new group.
>
> (4) "chown root.gedaguru /usr/lib/geda" (or "/usr/share/geda" or
> whatever).
>
> (5) "chmod -R g+w /usr/lib/geda"
>
> Voila. Now, when logged in under the proper user-ID, the user now has
> the ability to alter files in the gEDA library/share directory. Other
> users cannot, as they aren't members of the proper group.
>
> As you say, "On their own risk", but I see no reason why it would not
> work.
>
> Depending on what sort of package-install-and-update application a
> particular Linux distro uses, it might be necessary to repeat step (5)
> after updating the application, in order to keep all of the
> permissions as they should be.
>
> I think that this sort of capability hasn't been automated (in any
> Linux distro I know of) because it files in the face of the standard
> Unix-ish paradigm, that such systems are intended to be multi-user,
> and should not allow what one user does to yngvi up what another
> person's use of the same application (e.g. by altering "shared"
> libraries).
>

Hmm, thanks, I used Linux. It's still on the computer here. I just
wonder why none of the gurus pointed this out before.

But it is a bit cumbersome. In Windows you just set permissions for
certain drive areas or directories and that's it. Then Joe has access
and Jane doesn't, or vice versa. One just has to be careful not to muck
with system stuff but that's pretty much in one place so it almost takes
a deliberate act to step on that.


> If you're the only user on the system... well, have at it, and good
> health to ya!
>

Health? Whoops, shouldn't have had the two burgers yesterday. But at
least they were home-made.

--
Regards, Joerg

http://www.analogconsultants.com/

"gmail" domain blocked because of excessive spam.
Use another domain or send PM.
From: Grant on
On Mon, 26 Jul 2010 16:48:31 -0700, Joerg <invalid(a)invalid.invalid> wrote:

>Grant wrote:
>> On Mon, 26 Jul 2010 14:03:24 -0700, Joerg <invalid(a)invalid.invalid> wrote:
>>
>>> Joel Koltner wrote:
>>>> "Grant" <omg(a)grrr.id.au> wrote in message
>> ...
>>>From a serious CAD user it can be expected that he or she understands
>>> the basics of file management. In fact, gEDA was written completely
>>> Linux-centric, ports to Windows have largely failed because some not so
>>> compatible code must have been employed (in laymen's terms). Yet even
>>> gEDA does what every CAD does, store libraries in program directories.
>>
>> Well that's plain stupid.
>>
>
>Care to explain why?

Linux is multi-user, there's system wide rules need to be followed so
that the system can protect the users from themselves and other users.

Even when there's only one user account, that user is isolated from
damaging the OS, simply by not allowing the user to write anywhere they
please ;)

If you install and run a CAD program under your user area, you may
do anything you like, as it has no impact on the system (apart from
using resources). Stuff in your own area follows your rules.

But I'm guessing you CAD app didn't come as source, therefore you
had no choice as to where it was compiled to run. and which directories
it uses for data files.

This is a difference between Linux and windows. Under Linux, people
compile their applications and have control over the app's runtime
resource allocation.

If you're running some commercial binary, you're not fully in control
of your own system.

Under unix or linux there's three places you might add an application,
in the system area for all users, under /usr/local, again for all users,
or create a ~/bin and run the app from user area. Most Linux apps
distributed as source give you that choice, which is setup as a normal
part of compiling the app for your machine.

The reason for compiling apps is that a machine might be big or little
ended CPU, different system libraries, shell, *BSD, Linux or Solaris!
>
>
>>> Meaning user libs and non-custom libs get splintered up. What's wrong
>>> with allowing write access to the lib directory?
>>
>> Question is, which lib directory.
>>
>> The proper place for writable system libraries is /var/lib/$appname :)
>>
>> For example, my Slackware-11 box has:
>>
>> grant(a)deltree:~$ ls /var/lib
>> arpd/ bsdgames/ elm/ logrotate/ misc/ mysql/ nfs/ rpm/ stunnel/ xdm/ xkb/
>>
>> The program may create its own directory there and allow user access
>> and writing. It's difficult to find an exception to the standard
>> unix rules for basic layout (Sorry, I forget the exact name,
>> hierarchical file system or similar) that's been around for a
>> decade or more.
>>
>> Simple, no?
>>
>
>All I can say is that I asked in the gEDA group why I can't have the std
>libs and mine in one default place and the answer was pretty much, well,
> that I can't easily do that. And that I should just log in sudo.

That's the windows solution, run as admin all the time. We don't do
that with Linux, it's bad for many reasons. And, by saying log in
sudo, sounds like that *ubuntu windows wannabe nonsense? Indicates
you don't compile the app (I guess it's commercial binary), thus have
no control over where it wants to keep things.
>
>But it didn't matter anymore anyhow because gschem bungles refdeses upon
>auto-annotate. That's a big no-no in CAD.

I'm still trying to pick a freebie circuit and PCB CAD, only single
sided and two-layer through hole plated required. The eagle size
limit (80x100mm) is a wee bit small. No budget for CAD 'cos only
hobby level that might grow, into something. And, I'm on low income,
retired, sorta.
>
>
>> Users may have private libraries under /home/username/whatever
>>> I don't want an OS to tell me what I can't and cannot do, just like I
>>> don't want a car to decide when to shift :-)
>>
>> There are standards out there that define a framework for these things,
>> of course it is not rigid, as there's no Linux Incorporated controlling
>> this stuff. Each application author has a choice of what standards to
>> follow. A high end CAD system should follow the standard patterns for
>> flexible target OS. (I haven't used CAD for 17 years, no idea what's
>> what these days).
>>
>
>Well, I live with CAD for 24 years now :-)

Last I worked in design, it was maybe 15-20% CAD for schematic and PCB,
then software to define the product, often variations on same hardware
for different product end applications. Then there was another product
30-40k lines of assembler that I worked on, off and on for nine years
until the hardware was no longer produced. Started on cp/m box with 8"
floppies and ended on a win3 box with hard drive and 3.5" floppies...
>
>
>> It's not about deciding when to shift, more about expecting the shift
>> to have a standard H plus extras (reverse and fifth) pattern (or paddles,
>> or gated semi-auto) and be roughly in the same spot (or two), within
>> reach of the driver.
>>
>> You know, standards, so many to choose from ;)
>>
>
>I don't care which place they are in, or which side the steering wheel
>is on. As long as there is no automatic transmission.

Fair enough :) My current car is auto, first time, I think I prefer
manuals, that annoying delay, waiting for the transmission to decide
it's time to shift...

Grant.
From: Joel Koltner on
"Grant" <omg(a)grrr.id.au> wrote in message
news:6kfs46p65dc6m9c9kq3b404mivsctfgd7a(a)4ax.com...
> This is a difference between Linux and windows. Under Linux, people
> compile their applications and have control over the app's runtime
> resource allocation.
>
> If you're running some commercial binary, you're not fully in control
> of your own system.

I'd wager that for everyone who compiles a *nix application from source these
days, there are at least 99 who just installed a binary via Synaptic, RPMs,
Yum, or some other package manager... are they "not fully in control" of their
systems?