← Back to team overview

kicad-developers team mailing list archive

Re: Mac packaging plans for V5 and beyond

 

2017-11-14 23:02 GMT+01.00, Adam Wolf <adamwolf@xxxxxxxxxxxxxxxxxxxx>:
> Drats!  I forgot to include the link to the builds page (which is
> definitely not ready for primetime):
> https://builder.wayneandlayne.com/job/CompileKiCadOnCleanVM/
>
> Adam Wolf
>
> On Tue, Nov 14, 2017 at 4:02 PM, Adam Wolf
> <adamwolf@xxxxxxxxxxxxxxxxxxxx> wrote:
>> Hi folks!
>>
>> I have some things I've been working on for KiCad for quite a long
>> time, and I'd like to wait to show them off once they're finished, but
>> I want to announce them before the feature freeze for v5 (and maybe
>> even get some help).
>>

Nice, good to see that you can still twitch.

>> 1) Reworking how python is included.  I'm now following the way Apple
>> suggests, and this seems to fix some long-standing bugs with people
>> who have already had things installed.  This is basically ready today,
>> and could be incorporated into our nightlies at almost any time (with
>> buy-in from Nick and everyone else who does those), but could also
>> wait until #4.
>>

Well, where is your new work? IIRC we use your scripts from
https://github.com/wayneandlayne/KiCadMacOSPackaging to do the
nightlies...

Getting the issue fixed where it break if you have installed wxpython
from elsewhere would be great.

>> 2) Signing.  I got an Apple key for my business so I can sign binaries
>> and they won't pop up that annoying warning.  I have this working on
>> my system, however, it cannot work with the symlink method that we're
>> using right now for macOS packaging.  Chris and I have been talking
>> about changing this on and off--it definitely won't happen before V5,
>> but I'd like to get it in the works so it's finished by V6.
>>
>> The remaining work on this is to document the issues with the symlink
>> method, brainstorm ideas to see if there's an option Chris and I
>> missed, and get buy-in and schedule the work before the V6 freeze.
>>
>> 3) Builds!  A good friend of mine tried to get KiCad to build based on
>> our build page, and he spent nearly two weeks and was unable to get it
>> to build on macOS or Linux, and he does software development for a
>> living!  Based on that, I thought I could help out.  I wrote some
>> simple scripts, and now I am creating a new VM for a variety of OSes
>> from a clean template, telling them to patch themselves with all the
>> latest security patches, and then running an extremely minimal build
>> script that just tests to see if it builds.  I am currently doing this
>> for Ubuntu 16.04, 16.10, 17.04, 17.10, and macOS 10.12, everyday.  (I
>> will be adding macOS 10.13 and 10.9-10.11, as well as Fedora 25 and 26
>> shortly.)  This is not for packaging, this is just for developers to
>> see that "hey, if you follow this short list of instructions, you
>> should be able to get kicad building on your system".
>>
>> I remember all the pain we had supporting builds on the developer list
>> in the past, and I do not want to bring that back, but this should
>> help warn us if the dependency names change, or if something breaks on
>> those systems.
>>
>> The remaining work on this is mostly documentation.  I need to
>> document how other people can use these scripts, and also, if we have
>> buy-in, rework the builds page so that it's easier for new developers
>> to get started building KiCad.
>>
>> 4) Reworking the macOS build scripts.  I have been talking about this
>> for three years.  I am reworking the macOS build scripts, and actually
>> basing them on CMake :)  I have Python, wxwidgets, wxpython, and kicad
>> building already working.  Next I will be adding docs, packaging a
>> dmg, packaging the extras dmg.
>>
>> Right now I'm using them with Clion to add a feature to KiCad, and
>> they're pretty slick!
>>
>> The next steps here are for me to get it so this has the same output
>> as the current system, and then get buy-in to switch to it for
>> nightlies.  Once this has happened, I can use this to make stable
>> builds in a VM.  This is important, because the way the V4 stable
>> builds were made, using some tricks with homebrew, has been
>> discontinued and it will be trickier and trickier to make new stable
>> releases that way.
>>
>> #4 is the actual top priority-I want to replace nightlies and stable
>> with that new packaging script before V5 comes out, and I'm working on
>> it every day.
>>
>> I can do most of them on my own if it isn't interesting work to other
>> people, but if people want to help, let me know and I can set them up
>> on Github and set up some issues.  I have to say, most of these items
>> have been on my radar for awhile, and I'm glad I finally spent the
>> time and read the 100+ page docs from Apple and did a bunch of
>> experiments and finally made some breakthroughs!

Well, even though people are busy at times, it is nice to know where
to look when you have fifteen mintues where you are in despair of what
to spend ones time on.

>>
>> Adam Wolf
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
>


Follow ups

References