kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #35414
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
-
To:
kicad-developers@xxxxxxxxxxxxxxxxxxx
-
From:
Carsten Schoenert <c.schoenert@xxxxxxxxxxx>
-
Date:
Thu, 12 Apr 2018 18:32:50 +0200
-
Autocrypt:
addr=c.schoenert@xxxxxxxxxxx; keydata= xsFNBFIDTk4BEACx6disb51q5rTdDmnkOayFDiLgOrZ4InnRmbTsgYJaigcRXjVtjFaxwL0M Qtzrt9srlLBReWD4JvoLP9/8z2C1ORaoOUatApssuKd32Qa80lBlduIQCfaZ6K5Ij0TXeqIb dWXMWSvpaOwt+ecBGSdEepgABtxO9Xel9zqDsAauFxBRHGzJs3bSG8QRtwnQA2+9J8UEtzAc dY69YAkF3Q6HIPP/0mbGiget/1WGR+8tPKlVMYcgZtGIP2J36GkDbfDvdbH5QLn2KtMuGXLv f1CTy+vvQL3mY4caKamCU7tLi8FSufNZpPChguNOHsbuO//ACrTFqGysVFvq25zEb60t9Hoq AXHIMlDJFnR7XBUCyAHV4NROMvGZlFbLuZpUA81Kukj72xifqk9ZFl9sxqKPgheqi+dT8peV LgvgCgMgQjvZgQ5X4AG2kiIezWtjlToCZAZ4ufQ26aofvwZqhBrogQF/+272B9CJuKBLIx+R CEhtW4gTKShY3moc8Aqh8AFH3pWkXILAxEGnvMu8oapAUiRNXNOb/nBlYXH1BEc+Boarm8vj LElQxdI4uNEQsLvZxsL4iYvrbZ5OLZnjkMJjvU7XVFjxAkDAHT8eYH9LWK/VeiK8fm+zsDZU qy2dN77RYlQbO9TkKlJs3CR2lpT7Dr/ObtIqEf4VFOplxTY9kwARAQABzStDYXJzdGVuIFNj aG9lbmVydCA8Yy5zY2hvZW5lcnRAdC1vbmxpbmUuZGU+wsF3BBMBCAAhBQJSA05OAhsDBQsJ CAcDBRUKCQgLBRYCAwEAAh4BAheAAAoJEIMBYBQlHR2w8DoP/2RO8DOOA/P2Bf5atiNtEbSD nPGlN5Roml4paIPoGMw42cezBekdkJ4B/Ccr2x5MigroUTYLZwxP6U7YUNVuZhRmaEjGVD35 pIklW/os+9b5srxpdHWatHC6w/OoRL0P5EtK3sHeMOrhhMsSZe/fCiXr5VetpVgNx9fdFmSs UhkiyaBar24bLNAaY3KAAnDAUxXfQxZdYZ6kxH2Wq6sypgfq1lk4TTzGUx32nmGcR/fBZmmc +ZbZPzjd3Mor9/Dg57aMt87j/MqIndHVuucAB+/lENM4ufK04DBoqHEorD2CQJvEkn7HjydE e0YNITrFkpsqbbeltIMNV6viIxQluoYjBobY+5CRvCtYr/9m5ND0tDwHesfaBY7NWkkWhCYs M+CtlyqCtSo9Y23i/ap99GSNfguVISp8nxy3i8w/ZQ44TIRv/0zEcRoYgl/iF3wB3Gug6DVa XSZKveGMc2Q1+5u9jWfC/Jvy+J1qPM9h2m5pvTwuBrdfaMGvOzCk0iqWvHUN4cZIa8io2WXD pbbnytAhqFDFYCfgpL1Q9eczVIOO3WaITAJVHGBYnLLpsgwdsIMGXyhRO9wSpC80o2HhQK90 ifpYS1VnLJLNt2D+B31uuQr6LIuq1rtUvAzM39i3ftMLCnL1jSa+6q0uVzyTWI1xsmF7g0md ulwfQ+5zLW4KzsFNBFIDTk4BEADKWf/qL0X1KWdBdTyI6qoz/1YL/hLniKAvR9J43Wtfv9EY NxRpIMGzNTOyCi/qlw0HbMo6vIxy/Tw8nTj36OjZrZQ0dFHKM66Vl4KNbA5kI0lCTj1FIjGR adMsBXWpJ44SdXF5BtAuq2/vZzYbLtjYGu5tnQrYLjGOQ0FByw3wuGnlBJVzGbbCxSB06mGa w5LXRq5HZN5zzmaiqx+z+hlOAtyo61x+gxT5BNQXGIdZkBKyzItx4OxFaiWh3JtLqSQDBkDo yzhPvEBaOFn99QUgfk4Maoj1PgFgoteKQrywY18HCtlpSMUAvX+k074kDYgrTLrh26ApECl+ bOK6P1BPWRN0uedKewnGGemJJwq2RihdpLzyHBaRlwokRH9Drs7pCsxfy9VgPCEbm7ytgzk0 EHkA7Hl/ur39TT8VLluc+zZ10xU4uuTWIBiUOeIbuJo+UVRZBFVMmsKDVQeFSi0ujz/VW/0N sW1L73406B3jYZB/bffFTGkH5acrq3cQ25Wcur92da30g5TOq3sG71+XDPVcNZgiMbDJf6tK 39rB/GjQ0Pk0O2GaiSL9tGkfjsxhZ7p5+lNCDOWWK8IAH6T7PKoIGPqRl8KmANE6qZsevgaM CWsvkJastf9a3F6ZbL15QD1qdtRebv8yhCxyikaqy8oZKWDer4pBy0oD+g9/CwARAQABwsFf BBgBCAAJBQJSA05OAhsMAAoJEIMBYBQlHR2wMKAP/iL+tk5G2vbVJCw0BKJBoMEjBedQI38l f9CeLSVtJeokIR8GkDqgTpwKJaH0/cou2Q2GUMJ5U4J/vvYFNzJk8jyT1fdC0N83HUGNKQ3H NGGcq0GQFoOHcSVeo1V77Fuf3YYhzD5mPz/ypvIvsnbuiRgxWx5meU9LfZzf8Ijzv6e67q1O G+JAKvitV4UvUo9l05ewadRg53QpWNmmRHSXflpmw0PX5C9TKsyY/Sg4DdBf2NIzktQyOxya T2yHaVuQUUQRQ0248NdA1ql7zV48ZjF1ADhagQ8bgYuGMdOW6upfUBvPqQl0poV8FwjNErex N+CUbA5inlT9oIP03LtwZoKKDuK2PojoTtGp7WZ4ryQX9i9ogUOGknAABxFg4iMBQVkyl9oF QSgHa0HlbjRj8uY1kqsO4FgrcoGiouNzEfhP5zpxvCg3BBuWngo9ApU+MXOAwuq1Gt4dzUg4 7Ir2s32nhiv5TErJzPdNrUSK/tOUZOSkOzXv1kOGbXAlhC/5a5VGfA99uFcYK899gpfB4q64 jrc3wewP0MXjVl8U004Px7sYT4BkAoCupRtmBoRWhttvbcv6T8uFMAF+j91ng0X1+n21fV+O 9wPRnD3/KJThRVMR8poUevmJbFgPfvGGmz1asVIK8tBamAZp5aCeqZ7HVkTmMbj1x07Ry7o0 iWLO
-
In-reply-to:
<83dcee4a-b2fb-964a-b075-6857dbcef804@his.com>
-
Openpgp:
preference=signencrypt
-
User-agent:
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.0
Am 12.04.18 um 17:18 schrieb Reece R. Pollack:
> The KiCad 4.0.7 Debian Linux package installs files in these directories:
>
> /etc/profile.d
> /usr/bin
> /usr/lib/kicad
> /usr/lib/python2.7/dist-packages
> /usr/share/applications
> /usr/share/doc
> /usr/share/icons
> /usr/share/kicad
> /usr/share/menu
> /usr/share/mime
> /usr/share/mimelnk
I know this, as I do this for Debian. ;)
> That's "spread all over the file system" in contrast to my preference of
> having all installed files under one directory.
Your personal preferences are colliding with the LFS and FHS, all the
directories above are defined by them and the KiCad packages are comply
with. All those folders are quite not interesting for normal users
without system privileges and users definitely shouldn't change here
anything. We need to talk about how the possibilities are user can
override files from the packages without conflicting with them. So I
don't see your point here.
> But as I said, putting everything under one directory hierarchy (for
> example, "/opt/kicad5") would be a significant change in behavior.
You can use this folder in your own, but for all Debian based distros
this is a no go.
> A
> reasonable alternative is to install using file and directory names
> which include the major version number. Thus
>
> /usr/bin/kicad4
> /usr/bin/kicad5
>
> and
>
> /usr/lib/kicad4/plugins/
> /usr/lib/kicad5/plugins/
>
> I could even accept keeping the V4 file and directory names as they are
> and merely appending a 5 to the new files and directories.
Currently I don't see a real need to make the old version 4.0.7
co-installable. This version is about 1.25 years ago from today with the
last point update about 7 months ago.
Making KiCad 5 and KiCad nightly installable (on Linux) in parallel
isn't that difficult. You need to adjust only the desktop files for the
various application.
But the internal logic of KiCad for searching libraries and
configuration is something that's need to be done by the developers.
> I know many Windows programs install in self-contained directory
> hierarchies now, as the previous behavior of overwriting DLLs in shared
> directories caused major headaches. I do not develop for Windows,
> though, so I'll leave that to those who are more familiar with that
> environment.
Windows uses a different mechanism of symbol lookups so it's a home made
problem on Windows based platform if you have to deal with that
platform. Most applications are simply ship their own dll files to get
the horse ridden.
So far I remember a good explanation about the voodoo on windows system
can be found in the book 'Autotools: A Practioner's Guide to GNU
Autoconf, Automake, and Libtool' from John Calcote.
> https://www.amazon.com/gp/product/1593272065
...
> I'm well aware of the purpose of update-alternatives; I'm quite familiar
> with both its use and its implementation.
>
> Allow me to quote from the first paragraph of the link you provide:
>
> Here are some notes on |update-alternatives| and some examples
> demonstrating its use. The purpose of the update-alternatives
> utility program is to manage, on a single machine, serveral versions
> of programs that all provide the same functionality.
>
> That is exactly what we're doing here: managing several versions of
> programs that all provide the same functionality.
No, we don't. And we don't need this. The whole thread is about
installing various versions of KiCad in parallel and also be able to
start them independently.
update-alternatives is simply to provide a common name that is pointing
to a real binary. The only use case could be to provide a name 'kicad'
that would pointing to 'kicad5' e.g.
Do we really need this? I don't think so.
> Nothing in either the
> implementation nor the intent of update-alternatives requires that the
> different versions behave identically.
>
> A common case in the life of a developer is to have multiple versions of
> the Gnu C/C++ compiler installed. Perhaps new development is done with
> the GCC-5 compiler so it is the default on a system, but when producing
> an update for older systems the GCC-4.8 version is used. The
> update-alternatives allows the system manager to configure the system so
> the "cc" command invokes the latest-and-greatest, but the older versions
> are accessible by using the full file name.
>
> Here's the path the system follows to find the proper program to run for
> the "cc" command on my system:
>
> /usr/bin/cc -> /etc/alternatives/cc
> /etc/alternatives/cc -> /usr/bin/gcc
> /usr/bin/gcc -> gcc-5
> /usr/bin/gcc-5
>
> Using update-alternatives properly would require renaming the V4 files
> to include the major version number, as well as naming the V5 file
> properly. Perhaps there could be a 4.0.8 release that does this for
> coexistence.
No, not needed.
ln -s /usr/bin/kicad /usr/lib/kicad/kicad
vs.
ln -s /usr/bin/kicad /usr/lib/kicad5/kicad5 ???
It's already done for the runtime libraries of the applications
> $ ls -l /usr/bin/*.kiface
> lrwxrwxrwx 1 root root 26 Apr 8 12:55 /usr/bin/_cvpcb.kiface -> ../lib/kicad/_cvpcb.kiface
> lrwxrwxrwx 1 root root 29 Apr 8 12:55 /usr/bin/_eeschema.kiface -> ../lib/kicad/_eeschema.kiface
> lrwxrwxrwx 1 root root 29 Apr 8 12:55 /usr/bin/_gerbview.kiface -> ../lib/kicad/_gerbview.kiface
> lrwxrwxrwx 1 root root 35 Apr 8 12:55 /usr/bin/_pcb_calculator.kiface -> ../lib/kicad/_pcb_calculator.kiface
> lrwxrwxrwx 1 root root 27 Apr 8 12:55 /usr/bin/_pcbnew.kiface -> ../lib/kicad/_pcbnew.kiface
> lrwxrwxrwx 1 root root 30 Apr 8 12:55 /usr/bin/_pl_editor.kiface -> ../lib/kicad/_pl_editor.kiface
--
Regards
Carsten
References
-
[RFC] Able to install KiCad stable and "daily build" in same computer
From: Jean-Samuel Reynaud, 2018-04-04
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Strontium, 2018-04-05
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Seth Hillbrand, 2018-04-05
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Wayne Stambaugh, 2018-04-05
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Strontium, 2018-04-06
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Clemens Koller, 2018-04-06
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Strontium, 2018-04-07
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Carsten Schoenert, 2018-04-08
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Strontium, 2018-04-12
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Clemens Koller, 2018-04-12
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Reece R. Pollack, 2018-04-12
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Carsten Schoenert, 2018-04-12
-
Re: [RFC] Able to install KiCad stable and "daily build" in same computer
From: Reece R. Pollack, 2018-04-12