New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a PPA or APT repo #37

Open
pizzadude opened this Issue Sep 5, 2016 · 113 comments

Comments

Projects
None yet
@pizzadude

pizzadude commented Sep 5, 2016

Hi, interesting project.

Is it possible for you to setup a Ubuntu PPA so Ubuntu/Mint/[insert derivative here] users could easily be up to date?

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 6, 2016

Owner

I like the idea, but I don't have time to maintain a PPA manually. If this can be automated in some way, I would like to hear it.

If you or someone else would like to maintain a PPA or repository, go right ahead. I can add a link to it from the README.

Owner

Eloston commented Sep 6, 2016

I like the idea, but I don't have time to maintain a PPA manually. If this can be automated in some way, I would like to hear it.

If you or someone else would like to maintain a PPA or repository, go right ahead. I can add a link to it from the README.

@Eloston Eloston added the enhancement label Sep 6, 2016

@Eloston Eloston changed the title from Ubuntu PPA? to Add an Ubuntu PPA or APT repo Sep 6, 2016

@pizzadude

This comment has been minimized.

Show comment
Hide comment
@pizzadude

pizzadude Sep 6, 2016

I'm not sure how to make a PPA, I'm not a developer. But PPA's can be automated. http://askubuntu.com/questions/550012/how-to-create-a-automatic-ppa

Sorry if this is too much to ask. :<

pizzadude commented Sep 6, 2016

I'm not sure how to make a PPA, I'm not a developer. But PPA's can be automated. http://askubuntu.com/questions/550012/how-to-create-a-automatic-ppa

Sorry if this is too much to ask. :<

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 6, 2016

Owner

Well the link you provided basically says that a CI can push packages to a PPA server, which means that I would need to figure out how to use Travis CI (or some other CI system) and find a server to host a PPA.

That sounds nice, so I might look into this in the future when I have more time.

Owner

Eloston commented Sep 6, 2016

Well the link you provided basically says that a CI can push packages to a PPA server, which means that I would need to figure out how to use Travis CI (or some other CI system) and find a server to host a PPA.

That sounds nice, so I might look into this in the future when I have more time.

@hrj

This comment has been minimized.

Show comment
Hide comment
@hrj

hrj Sep 13, 2016

@Eloston As a first step, you could also consider pushing the build from Travis-CI to Github Releases pages as per this doc. That will take care of hosting atleast.

hrj commented Sep 13, 2016

@Eloston As a first step, you could also consider pushing the build from Travis-CI to Github Releases pages as per this doc. That will take care of hosting atleast.

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 13, 2016

Owner

@hrj: I'm not sure if I trust Travis CI enough to give it the public_repo permission to this account. But what really bugs me is that they telll you to use their magic command travis setup releases that obscures how things are setup:

Instead of setting it up manually, it is highly recommended to use travis setup releases, which will automatically create a GitHub oauth token with the correct scopes and encrypts it.

I could make another GitHub account that mirrors this repository and integrates with Travis CI, but that would require me to manage another GitHub account on top of Travis CI. Though this option seems more appealing the more I think about it.

Owner

Eloston commented Sep 13, 2016

@hrj: I'm not sure if I trust Travis CI enough to give it the public_repo permission to this account. But what really bugs me is that they telll you to use their magic command travis setup releases that obscures how things are setup:

Instead of setting it up manually, it is highly recommended to use travis setup releases, which will automatically create a GitHub oauth token with the correct scopes and encrypts it.

I could make another GitHub account that mirrors this repository and integrates with Travis CI, but that would require me to manage another GitHub account on top of Travis CI. Though this option seems more appealing the more I think about it.

@hrj

This comment has been minimized.

Show comment
Hide comment
@hrj

hrj Sep 13, 2016

@Eloston Oh, that's an overarching permission. I understand your hesitation.

I wonder how the permission system works. If you create a dummy Github account, add it as a collaborator on this repository (without write permissions), create an oauth token for the dummy account and give it to Travis, will Github allow code writes through that token? If it allows releases but not code-writes, then it might be worth exploring.

hrj commented Sep 13, 2016

@Eloston Oh, that's an overarching permission. I understand your hesitation.

I wonder how the permission system works. If you create a dummy Github account, add it as a collaborator on this repository (without write permissions), create an oauth token for the dummy account and give it to Travis, will Github allow code writes through that token? If it allows releases but not code-writes, then it might be worth exploring.

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 13, 2016

Owner

@hrj: I'm pretty sure you have to own the repository. I'm a collaborator on another repository (with write access), and I couldn't get Travis CI to see it.

Fortunately, there are commands in git that make it easy to mirror a remote repository. Here's GitHub's documentation on them. This way my dummy account can be separate from this account.

Owner

Eloston commented Sep 13, 2016

@hrj: I'm pretty sure you have to own the repository. I'm a collaborator on another repository (with write access), and I couldn't get Travis CI to see it.

Fortunately, there are commands in git that make it easy to mirror a remote repository. Here's GitHub's documentation on them. This way my dummy account can be separate from this account.

@hrj

This comment has been minimized.

Show comment
Hide comment
@hrj

hrj Sep 15, 2016

@Eloston Ah, ok.

FWIW, Github seems to have come out with a new auth system yesterday. Here's hoping that Travis-CI leaps on to it quickly.

hrj commented Sep 15, 2016

@Eloston Ah, ok.

FWIW, Github seems to have come out with a new auth system yesterday. Here's hoping that Travis-CI leaps on to it quickly.

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 15, 2016

Owner

@hrj: Huh, looks interesting. That would solve the hassle of setting up a separate account.

I'm a bit worried about the build environment they provide us. They allocate 7.5 GB (since I have to use a Docker image of Ubuntu Xenial), which might be enough to link if I set the right flags. However, I'm not sure how much disk space they allocate -- my whole build directory is taking 4 GB, which is pretty small by Chromium standards. Also, I'm not clear what Travis considers a "job". From what I've read, a single job can only last for about 50 minutes maximum (assuming it prints output at at least 10 minute intervals), but the build can take as long as it needs to. Are jobs the processes Travis directly invokes? Does this include subprocesses? Threads? A build takes about 3 hours, so the definition is pretty crucial.

Owner

Eloston commented Sep 15, 2016

@hrj: Huh, looks interesting. That would solve the hassle of setting up a separate account.

I'm a bit worried about the build environment they provide us. They allocate 7.5 GB (since I have to use a Docker image of Ubuntu Xenial), which might be enough to link if I set the right flags. However, I'm not sure how much disk space they allocate -- my whole build directory is taking 4 GB, which is pretty small by Chromium standards. Also, I'm not clear what Travis considers a "job". From what I've read, a single job can only last for about 50 minutes maximum (assuming it prints output at at least 10 minute intervals), but the build can take as long as it needs to. Are jobs the processes Travis directly invokes? Does this include subprocesses? Threads? A build takes about 3 hours, so the definition is pretty crucial.

@Eloston Eloston changed the title from Add an Ubuntu PPA or APT repo to Add a PPA or APT repo Sep 25, 2016

@podshumok

This comment has been minimized.

Show comment
Hide comment
@podshumok

podshumok Sep 26, 2016

Launchpad can automate on-commit build, packaging and publishing of deb packages
You just need

  1. a debian/ directory
  2. bzr-script https://help.launchpad.net/Packaging/SourceBuilds/Recipes
  3. setup launchpad mirror of source repo

podshumok commented Sep 26, 2016

Launchpad can automate on-commit build, packaging and publishing of deb packages
You just need

  1. a debian/ directory
  2. bzr-script https://help.launchpad.net/Packaging/SourceBuilds/Recipes
  3. setup launchpad mirror of source repo
@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 26, 2016

Owner

@podshumok Good to know. I might consider it if Travis doesn't work out. Would you mind linking some documentation to do this? Thanks.

Owner

Eloston commented Sep 26, 2016

@podshumok Good to know. I might consider it if Travis doesn't work out. Would you mind linking some documentation to do this? Thanks.

@podshumok

This comment has been minimized.

Show comment
Hide comment
@podshumok

podshumok Sep 26, 2016

Some docs are available here https://help.launchpad.net/Packaging/SourceBuilds/GettingStarted
The hardest part is to actually make a debian/ directory, everything else is more or less obvious, although may seem not so easy at the beginning...

You may want to look at https://code.launchpad.net/~chromium-team/chromium-browser/chromium-browser.head

Best thing is that Launchpad provides separate everyday builds for different platforms and Ubuntu versions

podshumok commented Sep 26, 2016

Some docs are available here https://help.launchpad.net/Packaging/SourceBuilds/GettingStarted
The hardest part is to actually make a debian/ directory, everything else is more or less obvious, although may seem not so easy at the beginning...

You may want to look at https://code.launchpad.net/~chromium-team/chromium-browser/chromium-browser.head

Best thing is that Launchpad provides separate everyday builds for different platforms and Ubuntu versions

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 26, 2016

Owner

@podshumok Alright thanks.

Owner

Eloston commented Sep 26, 2016

@podshumok Alright thanks.

@MikolajQ

This comment has been minimized.

Show comment
Hide comment
@MikolajQ

MikolajQ Oct 8, 2016

PPA would be great!
+1 for PPA

MikolajQ commented Oct 8, 2016

PPA would be great!
+1 for PPA

@kirylpl

This comment has been minimized.

Show comment
Hide comment
@kirylpl

kirylpl Oct 21, 2016

Please add the PPA.
And great thanks for you work, really.

kirylpl commented Oct 21, 2016

Please add the PPA.
And great thanks for you work, really.

@Lesik

This comment has been minimized.

Show comment
Hide comment
@Lesik

Lesik Nov 12, 2016

I oppose the use of PPAs/Launchpad.

I don't understand why using the OBS as suggested in #17 and #59 was rejected. The OBS allows building binaries for Debian, Ubuntu, Fedora, CentOS/RHEL, Arch Linux and many more distributions. By investing some time into this you receive a unified build/hosting service serving packages for all distributions, not just Ubuntu. Launchpad, on the other hand, only supports Ubuntu (and while it would theoretically work to install a PPA on Debian, you should never do that!)

Lesik commented Nov 12, 2016

I oppose the use of PPAs/Launchpad.

I don't understand why using the OBS as suggested in #17 and #59 was rejected. The OBS allows building binaries for Debian, Ubuntu, Fedora, CentOS/RHEL, Arch Linux and many more distributions. By investing some time into this you receive a unified build/hosting service serving packages for all distributions, not just Ubuntu. Launchpad, on the other hand, only supports Ubuntu (and while it would theoretically work to install a PPA on Debian, you should never do that!)

@hrj

This comment has been minimized.

Show comment
Hide comment
@hrj

hrj Nov 12, 2016

I don't understand why using the OBS as suggested in #17 and #59 was rejected.

It wasn't rejected. #59 was closed as a duplicate of #17, which is still open.

hrj commented Nov 12, 2016

I don't understand why using the OBS as suggested in #17 and #59 was rejected.

It wasn't rejected. #59 was closed as a duplicate of #17, which is still open.

@zabbal

This comment has been minimized.

Show comment
Hide comment
@zabbal

zabbal Nov 20, 2016

Using OBS does not contradict using Launchpad - those are orthogonal things. Having ppa would be really convenient for Ubuntu users which would greatly help with wider adoption and testing.

zabbal commented Nov 20, 2016

Using OBS does not contradict using Launchpad - those are orthogonal things. Having ppa would be really convenient for Ubuntu users which would greatly help with wider adoption and testing.

@Lesik

This comment has been minimized.

Show comment
Hide comment
@Lesik

Lesik Nov 21, 2016

@zabbal How do Ubuntu users benefit from Launchpad more than from OBS? Why maintain two services? OBS does everything Launchpad can, and much more. Or am I mistaken?

Lesik commented Nov 21, 2016

@zabbal How do Ubuntu users benefit from Launchpad more than from OBS? Why maintain two services? OBS does everything Launchpad can, and much more. Or am I mistaken?

@message

This comment has been minimized.

Show comment
Hide comment
@message

message commented Jan 10, 2017

bump

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Jan 10, 2017

Owner

I'm not quite sure how APT or PPA repos work, but are they basically retrieving files from a web server? If so, it may be possible to generate these files and upload them to the GitHub pages repo of the downloads repository.

Owner

Eloston commented Jan 10, 2017

I'm not quite sure how APT or PPA repos work, but are they basically retrieving files from a web server? If so, it may be possible to generate these files and upload them to the GitHub pages repo of the downloads repository.

@pseudoj

This comment has been minimized.

Show comment
Hide comment
@pseudoj

pseudoj Jan 22, 2017

+1 for a PPA repository.

pseudoj commented Jan 22, 2017

+1 for a PPA repository.

@kirylpl

This comment has been minimized.

Show comment
Hide comment
@kirylpl

kirylpl Jan 23, 2017

@Eloston Personal Package Archive (PPA) only works with launchpad
https://askubuntu.com/questions/71510/how-do-i-create-a-ppa

kirylpl commented Jan 23, 2017

@Eloston Personal Package Archive (PPA) only works with launchpad
https://askubuntu.com/questions/71510/how-do-i-create-a-ppa

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK Aug 26, 2018

Sorry, I forgot to set the repo to be public. The links should work now.

According to Ask Ubuntu, it seems we want to replace
cd ..
dpkg-source -b -uc

In the building.md under Building via source package you say dpkg-source -b src. Is that what I should replace with debuild -S -sa?

I already have a GPG key that I generated some months ago and added to my launchpad account. I guess I'll have to dig out the private key again if we need it outside of launchpad.

Thanks for digging out the information on the suit thingy. I was not able to find that. I guess I'll just put in stretch then if I want to build for Debian Stretch?

T-vK commented Aug 26, 2018

Sorry, I forgot to set the repo to be public. The links should work now.

According to Ask Ubuntu, it seems we want to replace
cd ..
dpkg-source -b -uc

In the building.md under Building via source package you say dpkg-source -b src. Is that what I should replace with debuild -S -sa?

I already have a GPG key that I generated some months ago and added to my launchpad account. I guess I'll have to dig out the private key again if we need it outside of launchpad.

Thanks for digging out the information on the suit thingy. I was not able to find that. I guess I'll just put in stretch then if I want to build for Debian Stretch?

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Aug 26, 2018

Owner

@T-vK

In the building.md under Building via source package you say dpkg-source -b src. Is that what I should replace with debuild -S -sa?

Sorry, I made a small typo in my comment; dpkg-source -b -uc is supposed to be dpkg-source -b src. But, the intent remains the same; the commands cd .. and dpkg-source -b src should be replaced with debuild -S -sa.

I already have a GPG key that I generated some months ago and added to my launchpad account. I guess I'll have to dig out the private key again if we need it outside of launchpad.

👍

Thanks for digging out the information on the suit thingy. I was not able to find that. I guess I'll just put in stretch then if I want to build for Debian Stretch?

According to the Launchpad docs you sent me: You can upload a source from any Debian-compatible distribution straight to your PPA with no changes required and it will be built and published in the targeted Ubuntu suite.

If you want Debian packages, you might have to send it to something like the openSUSE Build Service, since they seem to provide an APT repo.

If we are okay with abusing git and/or potentially using Git LFS, we can do something like the following:

  • Create another repo under ungoogled-software like ungoogled-chromium-apt that will hold only one commit with the binary and metadata files needed by APT.
  • I can create another account that has write access only to ungoogled-chromium-apt that is accessible by a CI system (CI systems have a way to hide credentials from the public)
  • Trigger the CI system via changes in ungoogled-chromium-binaries, and activate a script I can write that detects any changes to binaries for Debian-based systems and push only what has changed to ungoogled-chromium-apt.

Granted this will take a little bit of time to implement, whereas OBS already solves this APT repo hosting and has the added benefit of building the packages for us.

Owner

Eloston commented Aug 26, 2018

@T-vK

In the building.md under Building via source package you say dpkg-source -b src. Is that what I should replace with debuild -S -sa?

Sorry, I made a small typo in my comment; dpkg-source -b -uc is supposed to be dpkg-source -b src. But, the intent remains the same; the commands cd .. and dpkg-source -b src should be replaced with debuild -S -sa.

I already have a GPG key that I generated some months ago and added to my launchpad account. I guess I'll have to dig out the private key again if we need it outside of launchpad.

👍

Thanks for digging out the information on the suit thingy. I was not able to find that. I guess I'll just put in stretch then if I want to build for Debian Stretch?

According to the Launchpad docs you sent me: You can upload a source from any Debian-compatible distribution straight to your PPA with no changes required and it will be built and published in the targeted Ubuntu suite.

If you want Debian packages, you might have to send it to something like the openSUSE Build Service, since they seem to provide an APT repo.

If we are okay with abusing git and/or potentially using Git LFS, we can do something like the following:

  • Create another repo under ungoogled-software like ungoogled-chromium-apt that will hold only one commit with the binary and metadata files needed by APT.
  • I can create another account that has write access only to ungoogled-chromium-apt that is accessible by a CI system (CI systems have a way to hide credentials from the public)
  • Trigger the CI system via changes in ungoogled-chromium-binaries, and activate a script I can write that detects any changes to binaries for Debian-based systems and push only what has changed to ungoogled-chromium-apt.

Granted this will take a little bit of time to implement, whereas OBS already solves this APT repo hosting and has the added benefit of building the packages for us.

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK Aug 27, 2018

I see. I'll try to get it to work with ubuntu bionic then. If we get the launchpad thing to work, I might also try to get it to work with OBS. I'm not sure if I understand the git abusing idea correctly. Where would the binaries come from? I mean we can't build them in CI because of the time limitations, right? I think it would be much nicer to have a fully automated solution.

I found the GPG private key btw. But importing it to the CI docker container turns out to be very difficult. I'll keep trying tough.

Edit:
I finally managed to import the GPG key. Let's see what happens: https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/92419835

T-vK commented Aug 27, 2018

I see. I'll try to get it to work with ubuntu bionic then. If we get the launchpad thing to work, I might also try to get it to work with OBS. I'm not sure if I understand the git abusing idea correctly. Where would the binaries come from? I mean we can't build them in CI because of the time limitations, right? I think it would be much nicer to have a fully automated solution.

I found the GPG private key btw. But importing it to the CI docker container turns out to be very difficult. I'll keep trying tough.

Edit:
I finally managed to import the GPG key. Let's see what happens: https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/92419835

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Aug 27, 2018

Owner

@T-vK I made a small tweak to Ubuntu bionic packaging that affects the resulting package name: 0e1461e

Owner

Eloston commented Aug 27, 2018

@T-vK I made a small tweak to Ubuntu bionic packaging that affects the resulting package name: 0e1461e

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK commented Aug 27, 2018

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Aug 27, 2018

Owner

@T-vK

dpkg-source: error: cannot represent change to ungoogled-chromium-browser-build-deps_68.0.3440.106-1~buster_all.deb: binary file contents changed

It looks like you used mk-build-deps to install the build dependencies, but forgot to remove the resulting .deb package.

Owner

Eloston commented Aug 27, 2018

@T-vK

dpkg-source: error: cannot represent change to ungoogled-chromium-browser-build-deps_68.0.3440.106-1~buster_all.deb: binary file contents changed

It looks like you used mk-build-deps to install the build dependencies, but forgot to remove the resulting .deb package.

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK Aug 28, 2018

@Eloston Thanks. I just did another build: https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/92569956
Looks like I have some more work to do to make it recognize the imported GPG key? Or do you think this is something that has to be fixed in the sources?

Edit: I think it tries to use a key with the user ID "ungoogled-chromium Authors maintainer@null", but of course the user ID of my key is different. Maybe passing the -k flag with the wanted key ID will fix this.

Edit2:
https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/92667907

I'm getting a lot of these:

E: ungoogled-chromium-browser source: source-is-missing third_party/analytics/google-analytics-bundle.js line length is 525 characters (>512)
E: ungoogled-chromium-browser source: source-is-missing third_party/web-animations-js/sources/web-animations-next-lite.min.js

and also this one:

Now signing changes and any dsc files...
 signfile dsc ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc tavk tavk <t-v.k@gmx.net>
gpg: signing failed: No such file or directory
gpg: /tmp/debsign.6qMhz92i/ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc: clear-sign failed: No such file or directory
debsign: gpg error occurred!  Aborting....
debuild: fatal error at line 1081:
running debsign failed

any ideas?

T-vK commented Aug 28, 2018

@Eloston Thanks. I just did another build: https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/92569956
Looks like I have some more work to do to make it recognize the imported GPG key? Or do you think this is something that has to be fixed in the sources?

Edit: I think it tries to use a key with the user ID "ungoogled-chromium Authors maintainer@null", but of course the user ID of my key is different. Maybe passing the -k flag with the wanted key ID will fix this.

Edit2:
https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/92667907

I'm getting a lot of these:

E: ungoogled-chromium-browser source: source-is-missing third_party/analytics/google-analytics-bundle.js line length is 525 characters (>512)
E: ungoogled-chromium-browser source: source-is-missing third_party/web-animations-js/sources/web-animations-next-lite.min.js

and also this one:

Now signing changes and any dsc files...
 signfile dsc ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc tavk tavk <t-v.k@gmx.net>
gpg: signing failed: No such file or directory
gpg: /tmp/debsign.6qMhz92i/ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc: clear-sign failed: No such file or directory
debsign: gpg error occurred!  Aborting....
debuild: fatal error at line 1081:
running debsign failed

any ideas?

Eloston added a commit that referenced this issue Aug 28, 2018

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Aug 28, 2018

Owner

I'm getting a lot of these:

Not entirely sure, but a lot of it is due to minified JS causing the column length check to go crazy. Are those files actually missing though?

But this one is interesting: E: ungoogled-chromium-browser source: uploader-address-malformed Maintainer <maintainer@null>

This may be causing a problem for the second problem you described with No such file or directory if a file fails to be generated as a result. Hopefully I fixed it in 23ebfe4

On a tangential note, I'm surprised at how deep the checks go; they reported spelling errors in patch descriptions and an old URLs in debian/control.

Owner

Eloston commented Aug 28, 2018

I'm getting a lot of these:

Not entirely sure, but a lot of it is due to minified JS causing the column length check to go crazy. Are those files actually missing though?

But this one is interesting: E: ungoogled-chromium-browser source: uploader-address-malformed Maintainer <maintainer@null>

This may be causing a problem for the second problem you described with No such file or directory if a file fails to be generated as a result. Hopefully I fixed it in 23ebfe4

On a tangential note, I'm surprised at how deep the checks go; they reported spelling errors in patch descriptions and an old URLs in debian/control.

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK Aug 29, 2018

I pulled the changes and started another build. https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/92885375

I am replacing -- ungoogled-chromium Authors <maintainer@null> from the packaging/ubuntu_bionic/changelog.ungoogin file before the build btw because it seemed like the data has to match with the user ID of the GPG key.

I haven't had the time to check if the files are actually missing.

I got a new error message btw, during debian/rules get-orig-source:
make: *** [get-orig-source] Error 25

Seems like the download fails every time. I retried a coupe of times, but I keep getting that error.
I got that same error before the merge already btw.

T-vK commented Aug 29, 2018

I pulled the changes and started another build. https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/92885375

I am replacing -- ungoogled-chromium Authors <maintainer@null> from the packaging/ubuntu_bionic/changelog.ungoogin file before the build btw because it seemed like the data has to match with the user ID of the GPG key.

I haven't had the time to check if the files are actually missing.

I got a new error message btw, during debian/rules get-orig-source:
make: *** [get-orig-source] Error 25

Seems like the download fails every time. I retried a coupe of times, but I keep getting that error.
I got that same error before the merge already btw.

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 4, 2018

Owner

@T-vK Sorry for the delayed response. Are you able to get more details on that error? The CI job doesn't show where in the make target get-orig-source failed.

Owner

Eloston commented Sep 4, 2018

@T-vK Sorry for the delayed response. Are you able to get more details on that error? The CI job doesn't show where in the make target get-orig-source failed.

@Eloston Eloston modified the milestones: 68.x.x.x, 69.x.x.x Sep 4, 2018

@message

This comment has been minimized.

Show comment
Hide comment
@message

message Sep 5, 2018

This ticket was created 2 years ago today. Congratulations 🎉

message commented Sep 5, 2018

This ticket was created 2 years ago today. Congratulations 🎉

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 5, 2018

Owner

@message Thanks! I think it's nice to see progress on an issue that could've otherwise been forgotten. Do you have something you want to contribute?

Owner

Eloston commented Sep 5, 2018

@message Thanks! I think it's nice to see progress on an issue that could've otherwise been forgotten. Do you have something you want to contribute?

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK Sep 5, 2018

@Eloston
The Error 25 came from me trying to replace the -- ungoogled-chromium Authors <maintainer@null> thing with the GPG user ID. I undid this. This time I'm getting make: *** [get-orig-source] Error 255:
https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/94960498

I'm not sure what that means. It's really hard for me to debug because I don't have Debian or Ubuntu. So I have to constantly make changes, commit and push them, wait for Gitlab CI to build it and then check the build output for errors.
The error is coming form the debian/rules get-orig-source.

T-vK commented Sep 5, 2018

@Eloston
The Error 25 came from me trying to replace the -- ungoogled-chromium Authors <maintainer@null> thing with the GPG user ID. I undid this. This time I'm getting make: *** [get-orig-source] Error 255:
https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/94960498

I'm not sure what that means. It's really hard for me to debug because I don't have Debian or Ubuntu. So I have to constantly make changes, commit and push them, wait for Gitlab CI to build it and then check the build output for errors.
The error is coming form the debian/rules get-orig-source.

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 5, 2018

Owner

@T-vK Could you add -d flag to get-orig-source so that it becomes: debian/rules -d get-orig-source

EDIT: FYI, this enables debugging info for make files.

Owner

Eloston commented Sep 5, 2018

@T-vK Could you add -d flag to get-orig-source so that it becomes: debian/rules -d get-orig-source

EDIT: FYI, this enables debugging info for make files.

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK Sep 6, 2018

@Eloston Thanks, that helped a lot! I managed to get rid of the error.

This one: E: ungoogled-chromium-browser source: uploader-address-malformed Maintainer <maintainer@null> is gone now btw.
I'm getting this one though: E: ungoogled-chromium-browser changes: changed-by-address-malformed ungoogled-chromium Authors <maintainer@null>
https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/95187525

By replacing the ungoogled-chromium Authors <maintainer@null> from packaging/ubuntu_bionic/changelog.ungoogin with the the GPG key's user ID, I managed to get rid of that one as well.
https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/95194118

The file ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc seems to be missing:

Now signing changes and any dsc files...
 signfile dsc ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc tavk tavk <t-v.k@gmx.net>
gpg: signing failed: No such file or directory
gpg: /tmp/debsign.hwokAatw/ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc: clear-sign failed: No such file or directory
debsign: gpg error occurred!  Aborting....
debuild: fatal error at line 1081:
running debsign failed

And I still get these source-is-missing errors for a lot of files in the third_party directory.

I'll try to do an ls on a few of these pathes before the debuild to check if the files are actually missing.

edit: I couldn't find the location of the third_party directory. Do you know where it is?

T-vK commented Sep 6, 2018

@Eloston Thanks, that helped a lot! I managed to get rid of the error.

This one: E: ungoogled-chromium-browser source: uploader-address-malformed Maintainer <maintainer@null> is gone now btw.
I'm getting this one though: E: ungoogled-chromium-browser changes: changed-by-address-malformed ungoogled-chromium Authors <maintainer@null>
https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/95187525

By replacing the ungoogled-chromium Authors <maintainer@null> from packaging/ubuntu_bionic/changelog.ungoogin with the the GPG key's user ID, I managed to get rid of that one as well.
https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/95194118

The file ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc seems to be missing:

Now signing changes and any dsc files...
 signfile dsc ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc tavk tavk <t-v.k@gmx.net>
gpg: signing failed: No such file or directory
gpg: /tmp/debsign.hwokAatw/ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc: clear-sign failed: No such file or directory
debsign: gpg error occurred!  Aborting....
debuild: fatal error at line 1081:
running debsign failed

And I still get these source-is-missing errors for a lot of files in the third_party directory.

I'll try to do an ls on a few of these pathes before the debuild to check if the files are actually missing.

edit: I couldn't find the location of the third_party directory. Do you know where it is?

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 6, 2018

Owner

The file ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc seems to be missing:

Try adding your signing identity to the debian/control file as well.

edit: I couldn't find the location of the third_party directory. Do you know where it is?

There are multiple, but the most commonly used one is the one at the root of the Chromium source tree.

Owner

Eloston commented Sep 6, 2018

The file ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc seems to be missing:

Try adding your signing identity to the debian/control file as well.

edit: I couldn't find the location of the third_party directory. Do you know where it is?

There are multiple, but the most commonly used one is the one at the root of the Chromium source tree.

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK Sep 7, 2018

@Eloston I also changed the identity in debian/control now, but I till get the error saying that ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc is missing.
https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/95610619

T-vK commented Sep 7, 2018

@Eloston I also changed the identity in debian/control now, but I till get the error saying that ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc is missing.
https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/95610619

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 8, 2018

Owner

Could you try replacing debuild -S -sa with debuild -i -S?

Owner

Eloston commented Sep 8, 2018

Could you try replacing debuild -S -sa with debuild -i -S?

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK commented Sep 9, 2018

Of course.
I'm still getting the same error: https://gitlab.com/T-vK/ungoogled-chromium-launchpad/-/jobs/95980083

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 10, 2018

Owner

Well, I'm out of ideas now. If I figure something out, I'll let you know.

Owner

Eloston commented Sep 10, 2018

Well, I'm out of ideas now. If I figure something out, I'll let you know.

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK Sep 10, 2018

In the meantime I ran find / -name "google-analytics-bundle.js" before the debuild and also after the debuild fails and bot times I get no result. Not sure what to make out of that. I mean the error message does say source-is-missing , but at the same time it's talking about the line length of that file:

E: ungoogled-chromium-browser source: source-is-missing third_party/analytics/google-analytics-bundle.js line length is 525 characters (>512)

T-vK commented Sep 10, 2018

In the meantime I ran find / -name "google-analytics-bundle.js" before the debuild and also after the debuild fails and bot times I get no result. Not sure what to make out of that. I mean the error message does say source-is-missing , but at the same time it's talking about the line length of that file:

E: ungoogled-chromium-browser source: source-is-missing third_party/analytics/google-analytics-bundle.js line length is 525 characters (>512)
@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 11, 2018

Owner

I mean the error message does say source-is-missing , but at the same time it's talking about the line length of that file

The file isn't removed by ungoogled-chromium commands, and I don't see any reference to it or its parent directory (third_party/analytics) within the debian directory either. It is also present in a fresh unpacking of the Chromium source tree.

However, it is domain substituted, which may cause the minified file to have lines that exceed 512 characters. But, I think it's more likely that it's normal to see these particular warnings since Chromium has minified files scattered about in the source code.

Owner

Eloston commented Sep 11, 2018

I mean the error message does say source-is-missing , but at the same time it's talking about the line length of that file

The file isn't removed by ungoogled-chromium commands, and I don't see any reference to it or its parent directory (third_party/analytics) within the debian directory either. It is also present in a fresh unpacking of the Chromium source tree.

However, it is domain substituted, which may cause the minified file to have lines that exceed 512 characters. But, I think it's more likely that it's normal to see these particular warnings since Chromium has minified files scattered about in the source code.

@T-vK

This comment has been minimized.

Show comment
Hide comment
@T-vK

T-vK Sep 11, 2018

Weird, I guess it's only temporarily being unpacked during the debuild command then? Anyway, I extracted the source tree and found the file in there. The line in question doesn't have any sort of domain string in it:
(function() { 'use strict';var h,aa=aa||{},k=this,m=function(a){return void 0!==a},ba=function(){},ca=function(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&

The other files for which source-is-missing was reported seem to be there as well.

I also checked if the ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc is actually missing and it's not. It's located in build/ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc but debuild seems to expect it at /tmp/debsign.YogMWoVr/ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc. My guess is that it tries to copy the file to that tmp location and then sign it in there and finally copy it back. And the first copy step probably already fails. But I don't know...

T-vK commented Sep 11, 2018

Weird, I guess it's only temporarily being unpacked during the debuild command then? Anyway, I extracted the source tree and found the file in there. The line in question doesn't have any sort of domain string in it:
(function() { 'use strict';var h,aa=aa||{},k=this,m=function(a){return void 0!==a},ba=function(){},ca=function(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&

The other files for which source-is-missing was reported seem to be there as well.

I also checked if the ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc is actually missing and it's not. It's located in build/ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc but debuild seems to expect it at /tmp/debsign.YogMWoVr/ungoogled-chromium-browser_68.0.3440.106-1~bionic.dsc. My guess is that it tries to copy the file to that tmp location and then sign it in there and finally copy it back. And the first copy step probably already fails. But I don't know...

@Eloston Eloston added the help wanted label Sep 12, 2018

@Eloston

This comment has been minimized.

Show comment
Hide comment
@Eloston

Eloston Sep 12, 2018

Owner

Weird, I guess it's only temporarily being unpacked during the debuild command then?

I'm not sure. Maybe it's being removed by debuild through some automatic filtering?

But I don't know...

My guess is that some file or tool required by signing isn't present, and the standard "no such file or directory" error is being propagated up without any context. I've seen this happen a few times in completely different situations, so it may be the case here considering the dsc file is present in the location given.

If that isn't the case, then it may be some sort of procedural error where the temporary directory is removed before it has finished using the files.

Owner

Eloston commented Sep 12, 2018

Weird, I guess it's only temporarily being unpacked during the debuild command then?

I'm not sure. Maybe it's being removed by debuild through some automatic filtering?

But I don't know...

My guess is that some file or tool required by signing isn't present, and the standard "no such file or directory" error is being propagated up without any context. I've seen this happen a few times in completely different situations, so it may be the case here considering the dsc file is present in the location given.

If that isn't the case, then it may be some sort of procedural error where the temporary directory is removed before it has finished using the files.

@Eloston Eloston removed this from the 69.x.x.x milestone Oct 12, 2018

@metsatron

This comment has been minimized.

Show comment
Hide comment
@metsatron

metsatron Oct 16, 2018

What is the current status of the PPA?

metsatron commented Oct 16, 2018

What is the current status of the PPA?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment