[arch-dev-public] Moving arduino into [community] important notes
Hey guys, I've got a few concerns when moving arduino into community. Lately we could solve most bugs, but those require some manual installation steps that I want to explain here, and those possibly need additional information on the front page: Some (very old) arduino installations (somehow) left over the empty path /usr/share/arduino/hardware/avr which will cause a crash with the new arduino installation: java.io.FileNotFoundException: /usr/share/arduino/hardware/arduino/avr/platform.txt (No such file or directory) -> To resolve this issue you need to remove arduino and manually delete the folder. You might also want to check if there are any other folder zombies inside the arduino path. If this still does not help it might also be an idea to delete (backup before) ~/.arduino15 The 2nd issue is when people try to upgrade from an older version of arduino that provided arduino-builder. It will fail to install as the new version says "oh, arduino-builder is already installed". It then tries to remove arduino and the arduino-builder dependency is not satisfied anymore. This only affects a small number of versions, but still raise up on AUR. I am not sure if this got fixed in pacman by now. -> To resolve this issue you need to remove arduino first and then reinstall it. The version issue that some of you got seems to be only the case when you use a 3rd party tool like arturo. It got fixed now. Arduino now uses the upstream avr-gcc within the optional package arduino-avr-core which should be installed if you want to use avr boards. You can still use their older avr-gcc 4.9, see the wiki for more details. Since such many upgrade problems raised up, I think it is highly recommended to sum those up in a short news at archlinux.org and then push arduino to community. While people will likely have to remove their existing installation, I think it would also make sense to get rid of the current epoche value at the same time when it moves to community. As an alternative we could also rename arduino to arduino-ide and add a replace into the PKGBUILD. I am also working on getting the build system fix into upstream and also to sign their upstream sources. Thanks a lot for all the feedback so far from AUR and IRC! To sum up, the news should contain: * Remove arduino manually first * Delete /usr/share/arduino/hardware/avr if it still exists * check for other folder zombies in /usr/share/arduino * Install arduino * Consider to install the new optional deps arduino-avr-core and arduino-docs * Consider to also to start with a clean ~/.arduino15 folder if any other problem occurs * Read the wiki about further details or contact me personally Any comments on that? Cheers, Nico
On 2016-11-26 18:01, NicoHood wrote:
Hey guys, I've got a few concerns when moving arduino into community. Lately we could solve most bugs, but those require some manual installation steps that I want to explain here, and those possibly need additional information on the front page:
Some (very old) arduino installations (somehow) left over the empty path /usr/share/arduino/hardware/avr which will cause a crash with the new arduino installation: java.io.FileNotFoundException: /usr/share/arduino/hardware/arduino/avr/platform.txt (No such file or directory)
How did it get created in the first place?
The 2nd issue is when people try to upgrade from an older version of arduino that provided arduino-builder. It will fail to install as the new version says "oh, arduino-builder is already installed". It then tries to remove arduino and the arduino-builder dependency is not satisfied anymore. This only affects a small number of versions, but still raise up on AUR. I am not sure if this got fixed in pacman by now.
I don't understand this point. What fails to install new version? What pacman bug you are talking about?
Since such many upgrade problems raised up, I think it is highly recommended to sum those up in a short news at archlinux.org and then push arduino to community.
Because of your vague description, it's hard to say if that's true.
While people will likely have to remove their existing installation, I think it would also make sense to get rid of the current epoche value at the same time when it moves to community. As an alternative we could also rename arduino to arduino-ide and add a replace into the PKGBUILD.
There is no way to remove epoch, ever. I know it looks ugly for some packagers, but there is nothing to be ashamed for. We have it for a reason, and if it's been added, it stays. Bartłomiej
El Mon, 28 Nov 2016 01:34:38 +0100, Bartłomiej Piotrowski escribió:
There is no way to remove epoch, ever. I know it looks ugly for some packagers, but there is nothing to be ashamed for. We have it for a reason, and if it's been added, it stays.
I thought AUR packages were unsupported. Sure, it is nice to give them a higher version number when they are moved to the official repos to allow for a smooth upgrade, but that shouldn't be an enforced rule IMO. And removing epoch is a reasonable enough reason not to do it.
On 11/28/2016 01:34 AM, Bartłomiej Piotrowski wrote:
On 2016-11-26 18:01, NicoHood wrote:
Hey guys, I've got a few concerns when moving arduino into community. Lately we could solve most bugs, but those require some manual installation steps that I want to explain here, and those possibly need additional information on the front page:
Some (very old) arduino installations (somehow) left over the empty path /usr/share/arduino/hardware/avr which will cause a crash with the new arduino installation: java.io.FileNotFoundException: /usr/share/arduino/hardware/arduino/avr/platform.txt (No such file or directory)
How did it get created in the first place?
It must be a leftover from some old AUR packages. I myself cannot reproduce this bug, I only got this reported from a few other users who've been using arduino longer than I maintained it. I dont want to call it a pacman bug (possibly not anymore), otherwise its possibly black magic. However this happened to quite some people.
The 2nd issue is when people try to upgrade from an older version of arduino that provided arduino-builder. It will fail to install as the new version says "oh, arduino-builder is already installed". It then tries to remove arduino and the arduino-builder dependency is not satisfied anymore. This only affects a small number of versions, but still raise up on AUR. I am not sure if this got fixed in pacman by now.
I don't understand this point. What fails to install new version? What pacman bug you are talking about?
As far as I remember this got fixed. I also tried to reproduce this and it seems it got fixed.
Since such many upgrade problems raised up, I think it is highly recommended to sum those up in a short news at archlinux.org and then push arduino to community.
Because of your vague description, it's hard to say if that's true.
Especially because so many problems occurred it would make sense to let people know to uninstall and the reinstall arduino.
While people will likely have to remove their existing installation, I think it would also make sense to get rid of the current epoche value at the same time when it moves to community. As an alternative we could also rename arduino to arduino-ide and add a replace into the PKGBUILD.
There is no way to remove epoch, ever. I know it looks ugly for some packagers, but there is nothing to be ashamed for. We have it for a reason, and if it's been added, it stays.
Bartłomiej
On 11/28/2016 08:26 AM, Antonio Rojas wrote:
El Mon, 28 Nov 2016 01:34:38 +0100, Bartłomiej Piotrowski escribió:
There is no way to remove epoch, ever. I know it looks ugly for some packagers, but there is nothing to be ashamed for. We have it for a reason, and if it's been added, it stays.
I thought AUR packages were unsupported. Sure, it is nice to give them a higher version number when they are moved to the official repos to allow for a smooth upgrade, but that shouldn't be an enforced rule IMO. And removing epoch is a reasonable enough reason not to do it.
I agree with that too. And with the other arguments above this can be justified if you ask me. If we do it this way it would be easier for others to notice the change and fix their installation. Without a news people will start contacting me or on IRC how the hell they can fix arduino (as AUR will the not exist anymore). It would just make sense to do the suggested steps. If you dont want, I dont need to. My installation works, other peoples possibly dont. Cheers Nico
On 11/28/2016 08:26 AM, Antonio Rojas wrote:
El Mon, 28 Nov 2016 01:34:38 +0100, Bartłomiej Piotrowski escribió:
There is no way to remove epoch, ever. I know it looks ugly for some packagers, but there is nothing to be ashamed for. We have it for a reason, and if it's been added, it stays.
I thought AUR packages were unsupported. Sure, it is nice to give them a higher version number when they are moved to the official repos to allow for a smooth upgrade, but that shouldn't be an enforced rule IMO. And removing epoch is a reasonable enough reason not to do it.
I agree with that too. And with the other arguments above this can be justified if you ask me. If we do it this way it would be easier for others to notice the change and fix their installation. Without a news people will start contacting me or on IRC how the hell they can fix arduino (as AUR will the not exist anymore).
So on one hand you say that it deserves a news post and on the other you agree that AUR should be considered unsupported. Seems contradictory? Anyway, it looks like it could be handled with post_upgrade function. The problematic directory can be simply removed, you can also print message saying about deleting ~/.arduino15 (but guard it with vercmp please). Bartłomiej
On 12/02/2016 08:32 PM, Bartłomiej Piotrowski wrote:
On 11/28/2016 08:26 AM, Antonio Rojas wrote:
El Mon, 28 Nov 2016 01:34:38 +0100, Bartłomiej Piotrowski escribió:
There is no way to remove epoch, ever. I know it looks ugly for some packagers, but there is nothing to be ashamed for. We have it for a reason, and if it's been added, it stays.
I thought AUR packages were unsupported. Sure, it is nice to give them a higher version number when they are moved to the official repos to allow for a smooth upgrade, but that shouldn't be an enforced rule IMO. And removing epoch is a reasonable enough reason not to do it.
I agree with that too. And with the other arguments above this can be justified if you ask me. If we do it this way it would be easier for others to notice the change and fix their installation. Without a news people will start contacting me or on IRC how the hell they can fix arduino (as AUR will the not exist anymore).
So on one hand you say that it deserves a news post and on the other you agree that AUR should be considered unsupported. Seems contradictory?
Anyway, it looks like it could be handled with post_upgrade function. The problematic directory can be simply removed, you can also print message saying about deleting ~/.arduino15 (but guard it with vercmp please).
Bartłomiej
Alright. I will just add a note in the upgrade install file, but no hardcoded remove command which might break other packages. Can you give me an example of the vercmp? I guess I only need to print this note for pre 1.6.12 upgrades then. Thats also a good suggestion.
On 2016-12-02 20:36, NicoHood wrote:
Can you give me an example of the vercmp? I guess I only need to print this note for pre 1.6.12 upgrades then. Thats also a good suggestion.
Take a look at nginx or systemd. (More packages do that, but these two comes to my mind without grepping.) Bartłomiej
On 2016-11-28 08:26, Antonio Rojas wrote:
El Mon, 28 Nov 2016 01:34:38 +0100, Bartłomiej Piotrowski escribió:
There is no way to remove epoch, ever. I know it looks ugly for some packagers, but there is nothing to be ashamed for. We have it for a reason, and if it's been added, it stays.
I thought AUR packages were unsupported. Sure, it is nice to give them a higher version number when they are moved to the official repos to allow for a smooth upgrade, but that shouldn't be an enforced rule IMO. And removing epoch is a reasonable enough reason not to do it.
They are, but have we ever told users to uninstall a package that's been in AUR before upgrading to the repository version? I don't recall something like that. This is just two characters more in resulting package version. Bartłomiej
On Fri, 2 Dec 2016 20:28:02 +0100 Bartłomiej Piotrowski <bpiotrowski@archlinux.org> wrote:
On 2016-11-28 08:26, Antonio Rojas wrote:
El Mon, 28 Nov 2016 01:34:38 +0100, Bartłomiej Piotrowski escribió:
There is no way to remove epoch, ever. I know it looks ugly for some packagers, but there is nothing to be ashamed for. We have it for a reason, and if it's been added, it stays.
I thought AUR packages were unsupported. Sure, it is nice to give them a higher version number when they are moved to the official repos to allow for a smooth upgrade, but that shouldn't be an enforced rule IMO. And removing epoch is a reasonable enough reason not to do it.
They are, but have we ever told users to uninstall a package that's been in AUR before upgrading to the repository version? I don't recall something like that. This is just two characters more in resulting package version.
Bartłomiej
Yes, I believe that was the upgrade path for gitlab.
participants (4)
-
Antonio Rojas
-
Bartłomiej Piotrowski
-
Doug Newgard
-
NicoHood