Notifications
Clear all

Arduino IDE 2

71 Posts
7 Users
19 Reactions
4,661 Views
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 4 years ago
Posts: 7287
 

@frogandtoad No MAC portable version, violates security.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.


   
ReplyQuote
(@davee)
Member
Joined: 3 years ago
Posts: 1743
 

Hi @frogandtoad,

  Thanks for the reply ... sorry, could I please ask for clarification of your answer?

(Apologies for the pedantry - I am asking to try to help other forum members, rather than my own projects and I want to minimise risk to them)

-------------

Background and scenario

I think it is sometimes helpful to have a 2nd (and maybe also 3rd, etc) instance of entire 'programme suite' ... which in this case is Arduino IDE ... that is completely independent of the 1st instance. Depending on the reason for wanting it, I might keep it indefinitely as a 'parallel universe' ... or I might wipe it after a few minutes when it has answered a question ... or .... etc.

The important thing is to be confident that the IDE instances do not affect each other in any way.

I am assuming the user has set the 'sketch location' to an independent area and does not deliberately, explicitly interconnect different IDE instances and their code by some means, such as using an 'include' statement that points to a common file.

----------------

Main Question

Can you please confirm:

I can simply download the Linux Appimage  or Windows image into any folder (assumed to have normal write and execute permissions, etc.) on my machine, enable execute permission on Linux Appimage, run the executable file, set sketches folder to a convenient 'clean' location, and start using it without knowing, caring, affecting, or being affected, by other (functional or broken) instances of the IDE elsewhere on the same machine?

If so, this implies:

  • We can be sure that the different IDE instances do not affect each other by 'backdoors' such as common files, folder locations, registry locations and so on which are hard coded into the IDE.
  • We have an option of being able to advise a user whose existing IDE's installation is suspect, to simply create a 2nd one and work through a problem from a 'fresh' environment perspective.

-----------------

Supplementary/Optional Questions

  • Is there a parallel  path for Apple users? (I don't have Apple ... I am just asking for others and maybe others can contribute an answer) (I also respect & appreciate Ron @zander has found evidence to suggest this may be prevented by Apple security ... I am wondering how developers who need to work with more than 1 version achieve it ... it may not be an advisable route to take, this is just asking if there is a route and what is its nature.)
  • I regard 'portable' meaning the IDE can be put on a USB memory stick, and used directly on multiple machines, with the only persistent changes to hosting machines being the explicit sketch folders and their contents. Is this supported with 2.0x?
    • As I referred to previously, IDE 1.8 had instructions on how to do that. When I looked (some time ago), I could only find a forum thread saying the then current 2.0 beta did not support this. Are there any explicit references to 'portable' with 2.0? I did not see the word used on your reference.
    • Being 'portable' implies that the IDE meets the isolation requirements sought above. It also implies the user is permitted to execute programs from an external media, a useful, but potentially dangerous in a commercial environment, capability.

------------------

Thanks and best wishes, Dave

 


   
ReplyQuote
frogandtoad
(@frogandtoad)
Member
Joined: 5 years ago
Posts: 1458
Topic starter  

@zander

Posted by: @zander

@frogandtoad No MAC portable version, violates security.

You didn't mention that last time, and made it sound like it was all AOK, i.e:

DBWS   Z

...so what did you exactly mean by this at the time?

Cheers


   
ReplyQuote
frogandtoad
(@frogandtoad)
Member
Joined: 5 years ago
Posts: 1458
Topic starter  

@davee

Posted by: @davee

Hi @frogandtoad,

  Thanks for the reply ... sorry, could I please ask for clarification of your answer?

(Apologies for the pedantry - I am asking to try to help other forum members, rather than my own projects and I want to minimise risk to them)

Hi Dave, please do not be sorry to ask for clarification, just be yourself and ask away, and likewise, please never apologise for engaging in discussion on a public forum, you are most entitled to ask questions of anyone, we are all here to learn, and sometime engage in passionate debate... (arguing? :-)) that's what makes the world go around, otherwise we're all clones - "Alice Cooper" 😉

Posted by: @davee

Background and scenario

I think it is sometimes helpful to have a 2nd (and maybe also 3rd, etc) instance of entire 'programme suite' ... which in this case is Arduino IDE ... that is completely independent of the 1st instance. Depending on the reason for wanting it, I might keep it indefinitely as a 'parallel universe' ... or I might wipe it after a few minutes when it has answered a question ... or .... etc.

The important thing is to be confident that the IDE instances do not affect each other in any way.

I am assuming the user has set the 'sketch location' to an independent area and does not deliberately, explicitly interconnect different IDE instances and their code by some means, such as using an 'include' statement that points to a common file.

Ok, as far as this question is concerned... nothing is guaranteed, and as I have advocated in the past, using virtual machine technology via the many hypervisor offerings available  these days is the best way forward to anyone wishing to experiment without affecting their critical O/S environment.

Posted by: @davee

Main Question

Can you please confirm:

I can simply download the Linux Appimage  or Windows image into any folder (assumed to have normal write and execute permissions, etc.) on my machine, enable execute permission on Linux Appimage, run the executable file, set sketches folder to a convenient 'clean' location, and start using it without knowing, caring, affecting, or being affected, by other (functional or broken) instances of the IDE elsewhere on the same machine?

If so, this implies:

  • We can be sure that the different IDE instances do not affect each other by 'backdoors' such as common files, folder locations, registry locations and so on which are hard coded into the IDE.
  • We have an option of being able to advise a user whose existing IDE's installation is suspect, to simply create a 2nd one and work through a problem from a 'fresh' environment perspective.

I can confirm, that when I download the Linux .AppImage or the .ZIP version for Windows, that it just works, and by that I mean... You replace/overwrite the previous version with the new one, and this replaces/updates the specific installation, however, the directories that the original portable download created (such as windows...etc... Arduino 15, and equivalent for Linux) are not changed, thus libraries and core language... just the IDE specifics really, at least, this has been my experience over many years of downloads.

Can I guarantee that nothing will break? Nope... I don't speak for Arduino, so that's not for me to answer, but I have outlined my experience over the years, and it has been so far in the positive.

Posted by: @davee

Supplementary/Optional Questions

  • Is there a parallel  path for Apple users? (I don't have Apple ... I am just asking for others and maybe others can contribute an answer) (I also respect & appreciate Ron @zander has found evidence to suggest this may be prevented by Apple security ... I am wondering how developers who need to work with more than 1 version achieve it ... it may not be an advisable route to take, this is just asking if there is a route and what is its nature.)
  • I regard 'portable' meaning the IDE can be put on a USB memory stick, and used directly on multiple machines, with the only persistent changes to hosting machines being the explicit sketch folders and their contents. Is this supported with 2.0x?
    • As I referred to previously, IDE 1.8 had instructions on how to do that. When I looked (some time ago), I could only find a forum thread saying the then current 2.0 beta did not support this. Are there any explicit references to 'portable' with 2.0? I did not see the word used on your reference.
    • Being 'portable' implies that the IDE meets the isolation requirements sought above. It also implies the user is permitted to execute programs from an external media, a useful, but potentially dangerous in a commercial environment, capability.

------------------

Thanks and best wishes, Dave

Likewise, @zander is probably the best person to answer, as per my link to previous discussion on this aspect of installation.

There are different levels of portability, and I cannot vouch for how Arduino handles this, perhaps a question you could pose to the wider Arduino comminity?

All I can say is that I download the portable .ZIP version for Windows, which does not requre an installer to be run.... I just extract the .ZIP file to any directory I wish, and then run the Arduino executable in the extracted directory to launch the IDE, and it uses previously downloaded and installed libraries under your Arduino15 directory structure... equivalent occurs for Linux when replacing and old .AppImage with a new one.

Not sure how much this helps, but as always... you just can't beat virtualisation for testing out this stuff without breaking your real environment!

Cheers


   
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 4 years ago
Posts: 7287
 

@frogandtoad I think it was clear. I use normal install, it only takes a couple secs. Do we not speak the same English?

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.


   
ReplyQuote
(@davee)
Member
Joined: 3 years ago
Posts: 1743
 

Hi @frogandtoad,

   Thanks for your comprehensive and informative answer ... as usual its prompted some more things to look at and try to clarify in my afew remaining grey cells. 😀 

In particular, I note you equate the zip version with 'portable', which I found interesting, as I didn't spot any mention of its specific purpose, and the installation pictures for Windows and Linux don't mention it. I have generally been trying to get more used to Linux, but perhaps I'll try it in a Windows environment.

The Arduino documentation has a page for V1 installation ...

https://docs.arduino.cc/software/ide-v1/tutorials/PortableIDE?queryID=undefined

---------

... with an October 2022 date, but still no mention of V2.

BTW I have remembered virtual machines, and even considered them for a moment before asking the question, but continued with the question, because it was about how to give advice to give other people when they were looking for assistance with their Arduino IDE system. I didn't think this was a good time to introduce virtual machines, though that decision might be flawed.

Thanks,take care and best wishes, Dave

 😉 😉 And sorry if I overdo the apologies. 😉 😉 


   
ReplyQuote
frogandtoad
(@frogandtoad)
Member
Joined: 5 years ago
Posts: 1458
Topic starter  

Posted by: @zander

@frogandtoad I think it was clear. I use normal install, it only takes a couple secs. Do we not speak the same English?

Frankly, until you said it was the same thing... what exactly did you mean by that?

You previously said it's the same, and takes a couple of secs... which also implies some kind of portability, thus you implied the same thing as I was talking about!

Please speak clearly it's not me, it's you 😉

Cheers

 


   
ReplyQuote
frogandtoad
(@frogandtoad)
Member
Joined: 5 years ago
Posts: 1458
Topic starter  

Posted by: @davee

Hi @frogandtoad,

   Thanks for your comprehensive and informative answer ... as usual its prompted some more things to look at and try to clarify in my afew remaining grey cells. 😀 

In particular, I note you equate the zip version with 'portable', which I found interesting, as I didn't spot any mention of its specific purpose, and the installation pictures for Windows and Linux don't mention it. I have generally been trying to get more used to Linux, but perhaps I'll try it in a Windows environment.

The Arduino documentation has a page for V1 installation ...

https://docs.arduino.cc/software/ide-v1/tutorials/PortableIDE?queryID=undefined

---------

... with an October 2022 date, but still no mention of V2.

BTW I have remembered virtual machines, and even considered them for a moment before asking the question, but continued with the question, because it was about how to give advice to give other people when they were looking for assistance with their Arduino IDE system. I didn't think this was a good time to introduce virtual machines, though that decision might be flawed.

Thanks,take care and best wishes, Dave

 😉 😉 And sorry if I overdo the apologies. 😉 😉 

Hi @davee, not sure it was that comprehensive on my part :-), but I try to do my best when in a pinch!

Quite true.. when I see a .zip version available, it does mean portable to me, because most of the time I download .zip archives, they are portable (meaning no installer/registry keys etc...), though I agree with you that portability can mean different things in different contexts, and for different people!

Cheers

 


   
DaveE reacted
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 4 years ago
Posts: 7287
 

@frogandtoad Let's start over. I don't use the portable install because I didn't really know/understand about it and even now don't see why I would need it. The odd time when a beta was messing up, I just downloaded the previous version and did a one click install (it may be simpler on an apple, I don't know) After it happened a second time I resorted to renaming the old working version so that if the latest beta messed up I only had to delete the new and rename the old to current. I still don't see where portable would help with anything I am doing and it's moot anyway since it's not supported on an MacOS.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.


   
ReplyQuote
frogandtoad
(@frogandtoad)
Member
Joined: 5 years ago
Posts: 1458
Topic starter  

@zander

Posted by: @zander

@frogandtoad Let's start over. I don't use the portable install because I didn't really know/understand about it and even now don't see why I would need it. The odd time when a beta was messing up, I just downloaded the previous version and did a one click install (it may be simpler on an apple, I don't know) After it happened a second time I resorted to renaming the old working version so that if the latest beta messed up I only had to delete the new and rename the old to current. I still don't see where portable would help with anything I am doing and it's moot anyway since it's not supported on an MacOS.

No worries, Ron... all good!

Cheers

 


   
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 4 years ago
Posts: 7287
 

I was made aware that the copy as HTML feature was dropped in IDE 2. I checked the project and it was assigned to a developer back in Jan 2022. Sorry, but in my day that would have been done a year ago, I have no idea why this critical function is missing. As a workaround, you can copy from IDE2 and paste to IDE1 then in IDE 1 use the Copy as HTML for posting here.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
My personal scorecard is now 1 PC hardware fix (circa 1982), 1 open source fix (at age 82), and 2 zero day bugs in a major OS.


   
ReplyQuote
Page 5 / 5