Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [eclipse-ide-wg] Minutes of May 3rd Eclipse IDE WG Steering Committee Meeting

Hi Ed,

there is an (not up to date to the latest edge) description here:

https://läubisoft.gmbh/en/articles/using-maven-artifacts-in-pde-rcp-and-tycho-builds/

but I plan to update that soon to reflect recent changes.

A help-page would be cool, but as for now it is sadly missing, I found setting up help pages a bit brittle and don't know if PDE yet really allows to setup one for individual target types, so if you can share how you solved thit with Ommph targlets that would be usefull, maybe you can even open a PR to add such page to m2e with just dummy content for now, I'll then most probably migrate the stuff from the mentioned site there.

Am 19.05.22 um 09:28 schrieb Ed Merks:
Mickael,

This document would have been very helpful to me previously!  I like it!!

I would suggest that there should be a better place to find out specifically about m2e's PDE integration than in the release notes because when I start at https://www.eclipse.org/m2e/ and even when I get to https://www.eclipse.org/m2e/documentation/m2e-documentation.html there is very little user-focused documentation.  E.g., when I hit this wizard I was wondering where can I find out about the multitude of choices and options in this dialog (and the ? button does nothing):

https://user-images.githubusercontent.com/1331477/139412713-e0218ff7-642c-4c19-afac-55fca49ef325.png

I guess Tycho doesn't really have a project site beyond this one

https://projects.eclipse.org/projects/technology.tycho

The website link links to here:

https://www.eclipse.org/tycho/sitedocs/

That documentation is good and I use it a lot.  It would be good to be able to discover this additional documentation later starting from your project's portal site or whatever you consider the main user-facing entry point.  It would be good to post some type of article to attract people's attention to the new possibilities!  Let's just just not let it get lost over time...

Previously I've been working on a sample like the one below where I investigated all the parts involved.  I.e., a *.target file using m2e (just like what's in the Platform SDK's *.target), a category.xml for building an update site, and all the pom.xml files needed for this.


I experimented locally with generating a PGP key and I can run this build locally to produce an update site (as seen loaded in the Repo Explore) with PGP signed content (as seen in the artifacts.xml).

The build can run like this:

I always run these types of things in a "fake" user home so that I can run this in isolation of my real user home (to be able to create a from-scratch user experience and to be able to delete it all).  So I wrote a script like this (for Windows) to help set up and test the various things needed to have a local PGP key that can be used for signing:

    #!/bin/sh
    #
    # Use the following to your use home to be the current directory.
    # . user-home
    #
    # https://maven.apache.org/plugins/maven-gpg-plugin/usage.html
    # https://maven.apache.org/plugins/maven-gpg-plugin/sign-mojo.html
    #
    https://www.eclipse.org/tycho/sitedocs/tycho-gpg-plugin/sign-p2-artifacts-mojo.html
    #
    https://blog.sonatype.com/2010/01/how-to-generate-pgp-signatures-with-maven/
    # https://www.gnupg.org/gph/en/manual/x135.html

    DRIVE=$(echo "$PWD" | cut -d "/" -f2)
    DIRECTORY=$(realpath --relative-to=/$DRIVE $PWD)
    NAME=$(basename $PWD)

    echo "DRIVE='$DRIVE'"
    echo "DIRECTORY='$DIRECTORY'"
    echo "NAME='$NAME'"

    export APPDATA="${DRIVE^}:\\${DIRECTORY/\//\\}\\AppData\\Roaming"
    export HOME="$PWD"
    export HOMEPATH="\\${DIRECTORY/\//\\}"
    export HOMEDRIVE="${DRIVE^}:"
    export LOCALAPPDATA="${DRIVE^}:\\${DIRECTORY/\//\\}\\AppData\\Local"
    export USERNAME="${NAME}"
    export USERPROFILE="${DRIVE^}:\\${DIRECTORY/\//\\}"

    export

    echo ""
    echo "gpgconf"
    gpgconf --list-dirs

    echo ""
    echo "agent?"

    ps -s | grep gpg-agent

    echo 'If there is a running agent, you may need to kill -9 <pid> it
    to use this this new user home."


    echo ""
    echo "keys"

    gpg --list-keys

    echo 'If no keys are listed, using $gpg --generate-key to generate one'
    echo 'The keyname is the list 8 digits of the keys listed above.'
    echo 'The value gpg --list-keys <keyname> should list the same
    details for pgp signing in Maven/Tycho to work.'

This really helped me understand how the whole end-to-end process works.   It's especially cool that one can produce such a PGP-signed update site locally!

Somehow I need to find time to turn this into useful/reusable documentation...

On 19.05.2022 02:38, Mickael Istria wrote:
Hello,

On the topic of

> Create a sample that shows how to create a p2 repository from maven dependencies to understand how this process works

Alex (Kurtakov) recently suggested that I write an article about it. I followed this good advice and wrote https://docs.google.com/document/d/1MnDBvOUwKvKacB-QKnH_PzK88dUlHkjs-D-DWEKmvkY/edit#heading=h.tir6oo3i3el8 which is IMO complete (taking TM4E as example and linking to various official-ish documentation). I'd like to publish it soon, but am not yet sure where is the best place to do it. So if the IDE working group has some recommendation of where is the best place to host it so it gets enough attention from the community, that would be welcome. In the end, what seemd more important than where it's hosted is to share this with cross-project-issues-dev mailing-list, but where to host can also matter so let's discuss that. Some ideas are 1. my personal and outdated blog, 2. Red Hat Developers blog (need to check with them if they'd like to host this very specific content), 3. Eclipse Newsletter, but it's usually crowded with other informations and focused on particular topics so we may face a delay, 4. keep it as a Google Doc and share it as it, 5. Make it a .md file somwhere on Tycho repo.... I really don't have any preference as all them have more or less equivalent benfits&drawbacks so none seems really better. What do you think?

Cheers,
Mickael

_______________________________________________
eclipse-ide-wg mailing list
eclipse-ide-wg@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/eclipse-ide-wg

_______________________________________________
eclipse-ide-wg mailing list
eclipse-ide-wg@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/eclipse-ide-wg


Back to the top