From c4f0adb31678caa9d6fab93a141626f7ba466a58 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Wed, 9 Feb 2022 14:42:24 +0000
Subject: [PATCH 01/23] Add Beta branch for arduino 2.0
---
arduino-appdata-fixes.patch | 22 --
cc.arduino.arduinoide.appdata.xml | 44 ++++
cc.arduino.arduinoide.desktop | 9 +
cc.arduino.arduinoide.json | 328 ++++--------------------------
cc.arduino.arduinoide.png | Bin 0 -> 10496 bytes
flathub.json | 4 +
6 files changed, 92 insertions(+), 315 deletions(-)
delete mode 100644 arduino-appdata-fixes.patch
create mode 100644 cc.arduino.arduinoide.appdata.xml
create mode 100644 cc.arduino.arduinoide.desktop
create mode 100644 cc.arduino.arduinoide.png
create mode 100644 flathub.json
diff --git a/arduino-appdata-fixes.patch b/arduino-appdata-fixes.patch
deleted file mode 100644
index 5d09ca1..0000000
--- a/arduino-appdata-fixes.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- a/build/linux/dist/appdata.xml
-+++ b/build/linux/dist/appdata.xml
-@@ -36,6 +36,19 @@
-
-
-
-+
-+
-+
-+ - Removed log4j from IDE. Fix CVE-2021-45105, CVE-2021-45046
-+
-+
-+
-+
-+
-+
-+
-+
-+
-
-
-
diff --git a/cc.arduino.arduinoide.appdata.xml b/cc.arduino.arduinoide.appdata.xml
new file mode 100644
index 0000000..669ff9d
--- /dev/null
+++ b/cc.arduino.arduinoide.appdata.xml
@@ -0,0 +1,44 @@
+
+
+ cc.arduino.arduinoide.desktop
+ CC-BY-SA-3.0
+ AGPL-3.0
+ Arduino IDE
+ Open-source electronics prototyping platform
+ Arduino LLC
+
+
+ Arduino is an open-source electronics prototyping platform based
+ on flexible, easy-to-use hardware and software. It's intended for
+ artists, designers, hobbyists, and anyone interested in creating
+ interactive objects or environments.
+
+
+ Included is an integrated development environment that can be used
+ to develop and upload code to compatible microcontrollers.
+
+
+
+
+
+
+ - https://github.com/arduino/arduino-ide/releases/tag/2.0.0-rc3
+
+
+
+
+
+
+ https://github.com/arduino/arduino-ide/raw/main/static/screenshot.png
+ Image of Arduino IDE v2
+
+
+ http://www.arduino.cc/
+ https://www.arduino.cc/en/Guide/HomePage
+ https://github.com/arduino/Arduino/issues
+ https://github.com/arduino/Arduino/tree/master/arduino-core/src/processing/app/i18n
+ https://www.arduino.cc/en/Main/Contribute
+
+ arduino.appdata.xml@mavit.org.uk
+
+
diff --git a/cc.arduino.arduinoide.desktop b/cc.arduino.arduinoide.desktop
new file mode 100644
index 0000000..23ad2e9
--- /dev/null
+++ b/cc.arduino.arduinoide.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Arduino IDE
+Exec=arduino-ide
+Icon=cc.arduino.arduinoide
+Comment=Arduino IDE v2 on Flathub
+Terminal=false
+Type=Application
+Categories=Development;IDE;Java;
+StartupWMClass=jetbrains-studio
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index abedf68..dda8e6f 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -1,20 +1,9 @@
{
"app-id": "cc.arduino.arduinoide",
- "command": "arduino",
"runtime": "org.freedesktop.Platform",
"runtime-version": "21.08",
"sdk": "org.freedesktop.Sdk",
- "sdk-extensions": [
- "org.freedesktop.Sdk.Extension.openjdk8"
- ],
- "rename-icon": "arduino",
- "build-options": {
- "cflags": "-O2 -g",
- "cxxflags": "-O2 -g",
- "env": {
- "V": "1"
- }
- },
+ "command": "arduino-ide",
"finish-args": [
"--socket=x11",
"--share=ipc",
@@ -22,22 +11,7 @@
"--device=all",
"--filesystem=home"
],
- "cleanup": [
- "/include",
- "/lib/pkgconfig",
- "/share/aclocal",
- "/share/info",
- "/bin/usbhid-dump",
- "/share/man"
- ],
"modules": [
- {
- "name": "openjdk",
- "buildsystem": "simple",
- "build-commands": [
- "/usr/lib/sdk/openjdk8/install.sh"
- ]
- },
"shared-modules/libusb/libusb.json",
{
"name": "usbutils",
@@ -56,292 +30,60 @@
]
},
{
- "name": "arduino",
+ "name": "arduino-ide",
"buildsystem": "simple",
- "build-options": {
- "env": {
- "PATH": "/usr/bin:/usr/lib/sdk/openjdk8/bin",
- "JAVA_HOME": "/usr/lib/sdk/openjdk8/jvm/java-8-openjdk"
- }
- },
"build-commands": [
- "./ant/bin/ant --execdebug build",
- "mkdir -p /app/bin /app/Arduino",
- "cp -a linux/work/* /app/Arduino",
- "ln -s /app/Arduino/arduino /app/bin",
- "ln -s /app/jre /app/Arduino",
- "mv /app/Arduino/jre /app/Arduino/java",
- "mkdir -p /app/share/icons/hicolor",
- "cp -a /app/Arduino/lib/icons/* /app/share/icons/hicolor",
- "install -Dp -m 0644 /app/Arduino/lib/desktop.template /app/share/applications/cc.arduino.arduinoide.desktop",
- "desktop-file-edit --set-key=\"Exec\" --set-value=\"arduino %F\" /app/share/applications/${FLATPAK_ID}.desktop",
- "desktop-file-edit --set-icon=\"cc.arduino.arduinoide\" /app/share/applications/cc.arduino.arduinoide.desktop",
- "install -Dp -m 0644 /app/Arduino/lib/appdata.xml /app/share/metainfo/cc.arduino.arduinoide.appdata.xml",
- "install -Dp -m 0644 /app/Arduino/lib/arduino-arduinoide.xml /app/share/mime/packages/cc.arduino.arduinoide.xml"
+ "ls /app/",
+ "install -D apply_extra /app/bin/apply_extra",
+ "install -D arduino-ide.sh /app/bin/arduino-ide",
+ "install -Dm644 cc.arduino.arduinoide.png /app/share/icons/hicolor/128x128/apps/cc.arduino.arduinoide.png",
+ "install -Dm644 cc.arduino.arduinoide.appdata.xml /app/share/appdata/cc.arduino.arduinoide.appdata.xml",
+ "install -Dm644 cc.arduino.arduinoide.desktop /app/share/applications/cc.arduino.arduinoide.desktop"
],
- "subdir": "build",
"sources": [
- {
- "type": "archive",
- "url": "https://github.com/arduino/Arduino/releases/download/1.8.19/arduino-1.8.19.tar.xz",
- "sha256": "350c7e64a38d562c3c5b61e9b93d4d64455a2c71bd0773a5c593198b8efa578d",
- "x-checker-data": {
- "type": "anitya",
- "project-id": 105,
- "version-pattern": "^([\\d.]+)$",
- "url-template": "https://github.com/arduino/Arduino/releases/download/$version/arduino-$version.tar.xz"
- }
- },
- {
- "type": "patch",
- "path": "arduino-appdata-fixes.patch"
- },
- {
- "type": "file",
- "url": "https://downloads.arduino.cc/reference-1.6.6-3.zip",
- "sha256": "c3bfb7f9b408fd99a4a1c0f3b022f0a8b10abae6dc28e35d38b4a0df62903685",
- "dest": "build/shared"
- },
- {
- "type": "file",
- "url": "https://downloads.arduino.cc/Galileo_help_files-1.6.2.zip",
- "sha256": "1c70276e4783286d59c8ac0132c3286e7dcf6825bea65e25747a94416b07aa61",
- "dest": "build/shared"
- },
- {
- "type": "file",
- "url": "https://downloads.arduino.cc/Edison_help_files-1.6.2.zip",
- "sha256": "56718ce5b2b090d79dae298f6ff9a09c8c1a77f74e3594a951f7035877cc45f4",
- "dest": "build/shared"
- },
- {
- "type": "file",
- "url": "https://downloads.arduino.cc/cores/avr-1.8.3.tar.bz2",
- "sha256": "de8a9b982477762d3d3e52fc2b682cdd8ff194dc3f1d46f4debdea6a01b33c14",
- "dest": "build"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino/arduino-examples/archive/1.9.1.zip",
- "sha256": "900c4885843c3f650b4f34308ba6d45d7117279de628d810c6ec17dd06213684",
- "dest": "build",
- "dest-filename": "arduino-examples-1.9.1.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/Ethernet/archive/2.0.0.zip",
- "sha256": "a8a650774a613f6eaeae49e2b32f003e42b65be4adc479944b9d071b98214d41",
- "dest": "build",
- "dest-filename": "Ethernet-2.0.0.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/GSM/archive/1.0.6.zip",
- "sha256": "737187d301a6d6eade181488106d3826f6466a926f570fa1d5dfb303729fb1ce",
- "dest": "build",
- "dest-filename": "GSM-1.0.6.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/Stepper/archive/1.1.3.zip",
- "sha256": "9bdc308d1b4a0bafde01123c80aa25458bc6bd22609fd3d13f50ae0aeb32dbcf",
- "dest": "build",
- "dest-filename": "Stepper-1.1.3.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/TFT/archive/1.0.6.zip",
- "sha256": "bcc8e2a0ec6add55ca13ccca801331c3c090f3d4c46fd0b34545ed0cc7edc9b4",
- "dest": "build",
- "dest-filename": "TFT-1.0.6.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/WiFi/archive/1.2.7.zip",
- "sha256": "c61d68237742a39b7d5843496749e123c6721083bd002bcbdd118a630416b2ba",
- "dest": "build",
- "dest-filename": "WiFi-1.2.7.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/firmata/arduino/archive/2.5.8.zip",
- "sha256": "429cdb6f0a4c6b8cadb2d3a3ecb6a50cb083833454332827f67abac26dc6b44a",
- "dest": "build",
- "dest-filename": "Firmata-2.5.8.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/Bridge/archive/1.7.0.zip",
- "sha256": "4823cca4e0a60311c0a5bb75a8bced780a99987ccd86f91926559e23ab58f6e2",
- "dest": "build",
- "dest-filename": "Bridge-1.7.0.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/Robot_Control/archive/1.0.4.zip",
- "sha256": "077f70f2672c75b8c9c75bf4623db4025407d7e43b9cd281a1088e0e5f5e6ade",
- "dest": "build",
- "dest-filename": "Robot_Control-1.0.4.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/Robot_Motor/archive/1.0.3.zip",
- "sha256": "7cf64dc179931da6104f136e78283310940d53f10151f27583599ef36acc7bde",
- "dest": "build",
- "dest-filename": "Robot_Motor-1.0.3.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/RobotIRremote/archive/2.0.0.zip",
- "sha256": "06c5dc9b28e0b12003944b16914f9e8fc8a9c31a078269181f174972aeaaba48",
- "dest": "build",
- "dest-filename": "RobotIRremote-2.0.0.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/SpacebrewYun/archive/1.0.2.zip",
- "sha256": "48cf66b677dc1ce03643a6bdd222f9be6d86081c29d6dda870108bd075ad1ab5",
- "dest": "build",
- "dest-filename": "SpacebrewYun-1.0.2.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/Temboo/archive/1.2.1.zip",
- "sha256": "1dd15dc3a0ea5eaa6f9a9ddcfc2d22f40b4a15736bd585b59257b2a56174dfbb",
- "dest": "build",
- "dest-filename": "Temboo-1.2.1.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/Esplora/archive/1.0.4.zip",
- "sha256": "44d9dd32ff15cf6a7aa48ade99fce890501cf09b931bdbad080338345e76d4b5",
- "dest": "build",
- "dest-filename": "Esplora-1.0.4.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/Mouse/archive/1.0.1.zip",
- "sha256": "f9faf86c9c51c398aa531cb47d9613bc48ba34ae6af3a992ceb4b8fb3b96d280",
- "dest": "build",
- "dest-filename": "Mouse-1.0.1.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/Keyboard/archive/1.0.2.zip",
- "sha256": "a34c261f4746d658647e5632e4bae8641d8055ed354f820f5aeec4904b92ce9f",
- "dest": "build",
- "dest-filename": "Keyboard-1.0.2.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/SD/archive/1.2.4.zip",
- "sha256": "df0d17e201600fcdcf2ae9bbd76d2919125d9afc1c73934cd799619bfa4d6f88",
- "dest": "build",
- "dest-filename": "SD-1.2.4.zip"
- },
- {
- "type": "file",
- "url": "https://github.com/arduino-libraries/Servo/archive/1.1.8.zip",
- "sha256": "f267d1406fc721156f762440a633226fa9f510da8007adef1acc5eeafc2775e5",
- "dest": "build",
- "dest-filename": "Servo-1.1.8.zip"
- },
{
"type": "file",
- "url": "https://github.com/arduino-libraries/LiquidCrystal/archive/1.0.7.zip",
- "sha256": "36f513107a565655766647657252f43407755abb6709156492d9133b3ece3df3",
- "dest": "build",
- "dest-filename": "LiquidCrystal-1.0.7.zip"
+ "path": "cc.arduino.arduinoide.desktop"
},
{
"type": "file",
- "url": "https://github.com/Adafruit/Adafruit_CircuitPlayground/archive/1.11.3.zip",
- "sha256": "60be19022f459e8fab1bf6c0763c675c88257d99db37a2a95c5a63db705fdcb4",
- "dest": "build",
- "dest-filename": "Adafruit_Circuit_Playground-1.11.3.zip"
+ "path": "cc.arduino.arduinoide.appdata.xml"
},
{
"type": "file",
- "url": "https://github.com/arduino-libraries/WiFi101-FirmwareUpdater-Plugin/releases/download/v0.12.0/WiFi101-Updater-ArduinoIDE-Plugin-0.12.0.zip",
- "sha256": "e9133b4abfed9393d57a89e1cda6ba5af45acfeedabfe32149828f0229da3a48",
- "dest": "build/shared"
+ "path": "cc.arduino.arduinoide.png"
},
{
- "type": "file",
- "url": "https://downloads.arduino.cc/libastylej-2.05.1-5.zip",
- "sha256": "def22874099c28d482720ee2a444ec4709f0980bae41f3ebb6033bbc79beb486",
- "dest": "build"
- },
- {
- "type": "file",
- "url": "https://downloads.arduino.cc/liblistSerials/liblistSerials-1.4.2-2.zip",
- "sha256": "a338d470822de19bd971bd7a71d43f5273ba082baa9236be28c44b47c3e51f6b",
- "dest": "build"
- },
- {
- "only-arches": ["aarch64"],
- "type": "file",
- "url": "https://downloads.arduino.cc/tools/arduino-builder-linuxaarch64-1.6.1.tar.bz2",
- "sha256": "04b70022f1add0e41f8cdf3b5b568ba4b01072185d147a01a893c27085b21f14",
- "dest": "build"
- },
- {
- "only-arches": ["x86_64"],
- "type": "file",
- "url": "https://downloads.arduino.cc/tools/arduino-builder-linux64-1.6.1.tar.bz2",
- "sha256": "4141ee0beac4e6facc5fcf8191fbb0fb9f5441d2407a47a869977531c87b5171",
- "dest": "build"
- },
- {
- "only-arches": ["aarch64"],
- "type": "file",
- "url": "https://downloads.arduino.cc/tools/avr-gcc-7.3.0-atmel3.6.1-arduino7-aarch64-pc-linux-gnu.tar.bz2",
- "sha256": "03d322b9df6da17289e9e7c6233c34a8535d9c645c19efc772ba19e56914f339",
- "dest": "build/linux"
+ "type": "extra-data",
+ "filename": "arduino-ide.zip",
+ "size": 362856480,
+ "only-arches": [
+ "x86_64"
+ ],
+ "url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc3/arduino-ide_2.0.0-rc3_Linux_64bit.zip",
+ "sha256": "835e69c76fb1d093f1d72f8fe2ea92c1b8cb34a37702de174f85eee4865f78a4"
},
{
- "only-arches": ["x86_64"],
- "type": "file",
- "url": "https://downloads.arduino.cc/tools/avr-gcc-7.3.0-atmel3.6.1-arduino7-x86_64-pc-linux-gnu.tar.bz2",
- "sha256": "bd8c37f6952a2130ac9ee32c53f6a660feb79bee8353c8e289eb60fdcefed91e",
- "dest": "build/linux"
- },
- {
- "only-arches": ["aarch64"],
- "type": "file",
- "url": "https://downloads.arduino.cc/tools/avrdude-6.3.0-arduino17-aarch64-pc-linux-gnu.tar.bz2",
- "sha256": "6cf948f751acfe7b96684537f2291c766ec8b54b4f7dc95539864821456fa9fc",
- "dest": "build/linux"
- },
- {
- "only-arches": ["x86_64"],
- "type": "file",
- "url": "https://downloads.arduino.cc/tools/avrdude-6.3.0-arduino17-x86_64-pc-linux-gnu.tar.bz2",
- "sha256": "accdfb920af2aabf4f7461d2ac73c0751760f525216dc4e7657427a78c60d13d",
- "dest": "build/linux"
- },
- {
- "only-arches": ["aarch64"],
- "type": "file",
- "url": "http://downloads.arduino.cc/tools/arduinoOTA-1.3.0-linux_aarch64.tar.bz2",
- "sha256": "835ed8f37cffac37e979d1b0f6041559592d3d98be52f0e8611b76c4858e4113",
- "dest": "build/linux"
- },
- {
- "only-arches": ["x86_64"],
- "type": "file",
- "url": "http://downloads.arduino.cc/tools/arduinoOTA-1.3.0-linux_amd64.tar.bz2",
- "sha256": "aa45ee2441ffc3a122daec5802941d1fa2ac47adf5c5c481b5e0daa4dc259ffa",
- "dest": "build/linux"
+ "type": "script",
+ "dest-filename": "apply_extra",
+ "commands": [
+ "unzip /app/extra/arduino-ide.zip",
+ "rm -f /app/extra/arduino-ide.zip",
+ "mv /app/extra/arduino-ide_2.0.0-rc3_Linux_64bit /app/extra/arduino-ide",
+ "chmod 4755 /app/extra/arduino-ide/chrome-sandbox",
+ "chmod +x /app/extra/arduino-ide/arduino-ide"
+ ]
},
{
- "type": "archive",
- "url": "https://archive.apache.org/dist/ant/binaries/apache-ant-1.10.11-bin.tar.xz",
- "sha256": "baa049855cdecbefa62539555824058e52412e5ebe8f102e1db944cb762e06d9",
- "dest": "build/ant"
+ "type": "script",
+ "dest-filename": "arduino-ide.sh",
+ "commands": [
+ "exec env \"PATH=$PATH:$EXTRA_PATH\" /app/extra/arduino-ide/arduino-ide --no-sandbox"
+ ]
}
]
},
- "python3-pyserial.json"
+ "python3-pyserial.json",
+ "shared-modules/libsecret/libsecret.json"
]
}
diff --git a/cc.arduino.arduinoide.png b/cc.arduino.arduinoide.png
new file mode 100644
index 0000000000000000000000000000000000000000..c87f69544d9d50023e73f0181e467eade0877420
GIT binary patch
literal 10496
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
Date: Wed, 9 Feb 2022 14:59:35 +0000
Subject: [PATCH 02/23] remove "URL"
---
cc.arduino.arduinoide.appdata.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cc.arduino.arduinoide.appdata.xml b/cc.arduino.arduinoide.appdata.xml
index 669ff9d..22791bc 100644
--- a/cc.arduino.arduinoide.appdata.xml
+++ b/cc.arduino.arduinoide.appdata.xml
@@ -22,7 +22,7 @@
- - https://github.com/arduino/arduino-ide/releases/tag/2.0.0-rc3
+ - Updated to version 2 release candidate 3. github.com/arduino/arduino-ide/releases/tag/2.0.0-rc3
From 28713740d0650c8518104ed16b65bb46937070f6 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Wed, 9 Feb 2022 17:54:56 +0000
Subject: [PATCH 03/23] Added git to the instance as there was an error from
arduino saying git wasn't installed. Added permissions for keychain access
(as this is used), wayland access and notifications.
---
cc.arduino.arduinoide.json | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index dda8e6f..1a329c3 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -6,10 +6,14 @@
"command": "arduino-ide",
"finish-args": [
"--socket=x11",
+ "--socket=wayland",
"--share=ipc",
"--share=network",
"--device=all",
- "--filesystem=home"
+ "--filesystem=home",
+ "--filesystem=xdg-run/keyring",
+ "--talk-name=org.freedesktop.secrets",
+ "--talk-name=org.freedesktop.Notifications"
],
"modules": [
"shared-modules/libusb/libusb.json",
@@ -29,6 +33,24 @@
]
},
+ {
+ "name": "git",
+ "make-args": [
+ "NO_TCLTK=1",
+ "INSTALL_SYMLINKS=1"
+ ],
+ "make-install-args": [
+ "NO_TCLTK=1",
+ "INSTALL_SYMLINKS=1"
+ ],
+ "sources": [
+ {
+ "type": "archive",
+ "url": "https://www.kernel.org/pub/software/scm/git/git-2.35.1.tar.gz",
+ "sha256": "9845a37dd01f9faaa7d8aa2078399d3aea91b43819a5efea6e2877b0af09bd43"
+ }
+ ]
+ },
{
"name": "arduino-ide",
"buildsystem": "simple",
From b20f7d9b634a1a34be3f45a307bb2c364c6765c0 Mon Sep 17 00:00:00 2001
From: Joshua Glass <28513051+joshuag1000@users.noreply.github.com>
Date: Wed, 9 Feb 2022 18:40:49 +0000
Subject: [PATCH 04/23] Update links.
---
cc.arduino.arduinoide.appdata.xml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/cc.arduino.arduinoide.appdata.xml b/cc.arduino.arduinoide.appdata.xml
index 22791bc..2d94c8f 100644
--- a/cc.arduino.arduinoide.appdata.xml
+++ b/cc.arduino.arduinoide.appdata.xml
@@ -35,8 +35,8 @@
http://www.arduino.cc/
https://www.arduino.cc/en/Guide/HomePage
- https://github.com/arduino/Arduino/issues
- https://github.com/arduino/Arduino/tree/master/arduino-core/src/processing/app/i18n
+ https://github.com//arduino/arduino-ide/issues
+ https://github.com/arduino/arduino-ide/tree/master/arduino-core/src/processing/app/i18n
https://www.arduino.cc/en/Main/Contribute
arduino.appdata.xml@mavit.org.uk
From e19012b7ede172815d1aae91f45b0b33a72962b5 Mon Sep 17 00:00:00 2001
From: Joshua Glass <28513051+joshuag1000@users.noreply.github.com>
Date: Wed, 9 Feb 2022 18:43:57 +0000
Subject: [PATCH 05/23] remove java tag add electronics tag
---
cc.arduino.arduinoide.desktop | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cc.arduino.arduinoide.desktop b/cc.arduino.arduinoide.desktop
index 23ad2e9..ea81405 100644
--- a/cc.arduino.arduinoide.desktop
+++ b/cc.arduino.arduinoide.desktop
@@ -5,5 +5,5 @@ Icon=cc.arduino.arduinoide
Comment=Arduino IDE v2 on Flathub
Terminal=false
Type=Application
-Categories=Development;IDE;Java;
+Categories=Development;IDE;Electronics;
StartupWMClass=jetbrains-studio
From d5e7fe2a27b5865ce61504a37c91c57bd0fa5684 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Wed, 9 Feb 2022 18:54:31 +0000
Subject: [PATCH 06/23] removed pyserial Not needed for v2
---
cc.arduino.arduinoide.json | 1 -
python3-pyserial.json | 14 --------------
2 files changed, 15 deletions(-)
delete mode 100644 python3-pyserial.json
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index 1a329c3..f8a2b65 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -105,7 +105,6 @@
}
]
},
- "python3-pyserial.json",
"shared-modules/libsecret/libsecret.json"
]
}
diff --git a/python3-pyserial.json b/python3-pyserial.json
deleted file mode 100644
index 4348961..0000000
--- a/python3-pyserial.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "name": "python3-pyserial",
- "buildsystem": "simple",
- "build-commands": [
- "pip3 install --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"pyserial\""
- ],
- "sources": [
- {
- "type": "file",
- "url": "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl",
- "sha256": "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0"
- }
- ]
-}
From b4770874d116073279e45646a98a2ff9eaabfd62 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Wed, 9 Feb 2022 21:12:32 +0000
Subject: [PATCH 07/23] Revert "removed pyserial Not needed for v2" Turns out
we need this This reverts commit d5e7fe2a27b5865ce61504a37c91c57bd0fa5684.
---
cc.arduino.arduinoide.json | 1 +
python3-pyserial.json | 14 ++++++++++++++
2 files changed, 15 insertions(+)
create mode 100644 python3-pyserial.json
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index f8a2b65..1a329c3 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -105,6 +105,7 @@
}
]
},
+ "python3-pyserial.json",
"shared-modules/libsecret/libsecret.json"
]
}
diff --git a/python3-pyserial.json b/python3-pyserial.json
new file mode 100644
index 0000000..4348961
--- /dev/null
+++ b/python3-pyserial.json
@@ -0,0 +1,14 @@
+{
+ "name": "python3-pyserial",
+ "buildsystem": "simple",
+ "build-commands": [
+ "pip3 install --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"pyserial\""
+ ],
+ "sources": [
+ {
+ "type": "file",
+ "url": "https://files.pythonhosted.org/packages/07/bc/587a445451b253b285629263eb51c2d8e9bcea4fc97826266d186f96f558/pyserial-3.5-py2.py3-none-any.whl",
+ "sha256": "c4451db6ba391ca6ca299fb3ec7bae67a5c55dde170964c7a14ceefec02f2cf0"
+ }
+ ]
+}
From 5c9634281e4d8c4ff4592275064d1913ee071517 Mon Sep 17 00:00:00 2001
From: Joshua Glass <28513051+joshuag1000@users.noreply.github.com>
Date: Wed, 9 Feb 2022 22:33:45 +0000
Subject: [PATCH 08/23] remove unneeded build line
---
cc.arduino.arduinoide.json | 1 -
1 file changed, 1 deletion(-)
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index 1a329c3..d0bfa5d 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -55,7 +55,6 @@
"name": "arduino-ide",
"buildsystem": "simple",
"build-commands": [
- "ls /app/",
"install -D apply_extra /app/bin/apply_extra",
"install -D arduino-ide.sh /app/bin/arduino-ide",
"install -Dm644 cc.arduino.arduinoide.png /app/share/icons/hicolor/128x128/apps/cc.arduino.arduinoide.png",
From ab5d728229b7534ce88e9a05d9752fcef14b34f1 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Wed, 9 Feb 2022 23:23:14 +0000
Subject: [PATCH 09/23] mv command now ambiguous prep for multiple arch
---
cc.arduino.arduinoide.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index d0bfa5d..5dee20b 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -90,7 +90,7 @@
"commands": [
"unzip /app/extra/arduino-ide.zip",
"rm -f /app/extra/arduino-ide.zip",
- "mv /app/extra/arduino-ide_2.0.0-rc3_Linux_64bit /app/extra/arduino-ide",
+ "mv /app/extra/arduino-ide* /app/extra/arduino-ide",
"chmod 4755 /app/extra/arduino-ide/chrome-sandbox",
"chmod +x /app/extra/arduino-ide/arduino-ide"
]
From 0d48e72cfcc49fd3d0c277a405c77664c100ac82 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Tue, 22 Feb 2022 19:19:20 +0000
Subject: [PATCH 10/23] Just some changes in the install method.
---
.gitignore | 2 ++
cc.arduino.arduinoide.json | 27 ++++++++-------------------
2 files changed, 10 insertions(+), 19 deletions(-)
create mode 100644 .gitignore
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..77276a2
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+Build/
+.flatpak-builder/
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index 5dee20b..3d6537f 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -17,6 +17,8 @@
],
"modules": [
"shared-modules/libusb/libusb.json",
+ "python3-pyserial.json",
+ "shared-modules/libsecret/libsecret.json",
{
"name": "usbutils",
"config-opts": [
@@ -55,7 +57,7 @@
"name": "arduino-ide",
"buildsystem": "simple",
"build-commands": [
- "install -D apply_extra /app/bin/apply_extra",
+ "mv ./arduino-ide /app/arduino-ide",
"install -D arduino-ide.sh /app/bin/arduino-ide",
"install -Dm644 cc.arduino.arduinoide.png /app/share/icons/hicolor/128x128/apps/cc.arduino.arduinoide.png",
"install -Dm644 cc.arduino.arduinoide.appdata.xml /app/share/appdata/cc.arduino.arduinoide.appdata.xml",
@@ -75,36 +77,23 @@
"path": "cc.arduino.arduinoide.png"
},
{
- "type": "extra-data",
- "filename": "arduino-ide.zip",
- "size": 362856480,
+ "type": "archive",
+ "dest-filename": "arduino-ide.zip",
+ "dest": "arduino-ide",
"only-arches": [
"x86_64"
],
"url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc3/arduino-ide_2.0.0-rc3_Linux_64bit.zip",
"sha256": "835e69c76fb1d093f1d72f8fe2ea92c1b8cb34a37702de174f85eee4865f78a4"
},
- {
- "type": "script",
- "dest-filename": "apply_extra",
- "commands": [
- "unzip /app/extra/arduino-ide.zip",
- "rm -f /app/extra/arduino-ide.zip",
- "mv /app/extra/arduino-ide* /app/extra/arduino-ide",
- "chmod 4755 /app/extra/arduino-ide/chrome-sandbox",
- "chmod +x /app/extra/arduino-ide/arduino-ide"
- ]
- },
{
"type": "script",
"dest-filename": "arduino-ide.sh",
"commands": [
- "exec env \"PATH=$PATH:$EXTRA_PATH\" /app/extra/arduino-ide/arduino-ide --no-sandbox"
+ "exec /app/arduino-ide/arduino-ide --no-sandbox"
]
}
]
- },
- "python3-pyserial.json",
- "shared-modules/libsecret/libsecret.json"
+ }
]
}
From 64e7262ae5c4f7c3776f89f73bc392e2927d81b6 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Wed, 2 Mar 2022 18:33:28 +0000
Subject: [PATCH 11/23] Update to release candidate 4, Still unable to get
zypak working however i am going to try compiling from source later
---
cc.arduino.arduinoide.json | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index 3d6537f..3a9f4b6 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -7,6 +7,7 @@
"finish-args": [
"--socket=x11",
"--socket=wayland",
+ "--socket=system-bus",
"--share=ipc",
"--share=network",
"--device=all",
@@ -83,14 +84,14 @@
"only-arches": [
"x86_64"
],
- "url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc3/arduino-ide_2.0.0-rc3_Linux_64bit.zip",
- "sha256": "835e69c76fb1d093f1d72f8fe2ea92c1b8cb34a37702de174f85eee4865f78a4"
+ "url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc4/arduino-ide_2.0.0-rc4_Linux_64bit.zip",
+ "sha256": "1f498f8299ffd7815ca0dd2e856a9000a3dfc60f5f9e958bc57a9ab2c9bb300e"
},
{
"type": "script",
"dest-filename": "arduino-ide.sh",
"commands": [
- "exec /app/arduino-ide/arduino-ide --no-sandbox"
+ "exec /app/arduino-ide/arduino-ide --no-sandbox \"$@\""
]
}
]
From 1c0f203371983152168b227fdf53e2a2152a8249 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Wed, 2 Mar 2022 18:36:50 +0000
Subject: [PATCH 12/23] Update xml
---
cc.arduino.arduinoide.appdata.xml | 1 +
1 file changed, 1 insertion(+)
diff --git a/cc.arduino.arduinoide.appdata.xml b/cc.arduino.arduinoide.appdata.xml
index 2d94c8f..3108080 100644
--- a/cc.arduino.arduinoide.appdata.xml
+++ b/cc.arduino.arduinoide.appdata.xml
@@ -19,6 +19,7 @@
+
From 78185c56c00323ca612859a94249e857fb0c72bb Mon Sep 17 00:00:00 2001
From: Joshua Glass <28513051+joshuag1000@users.noreply.github.com>
Date: Wed, 2 Mar 2022 19:02:44 +0000
Subject: [PATCH 13/23] repair xml file (oops)
---
cc.arduino.arduinoide.appdata.xml | 20 +++++++++++++-------
1 file changed, 13 insertions(+), 7 deletions(-)
diff --git a/cc.arduino.arduinoide.appdata.xml b/cc.arduino.arduinoide.appdata.xml
index 3108080..63e13f7 100644
--- a/cc.arduino.arduinoide.appdata.xml
+++ b/cc.arduino.arduinoide.appdata.xml
@@ -19,14 +19,20 @@
-
+
+
+
+ - Updated to version 2 release candidate 4. github.com/arduino/arduino-ide/releases/tag/2.0.0-rc4
+
+
+
-
-
- - Updated to version 2 release candidate 3. github.com/arduino/arduino-ide/releases/tag/2.0.0-rc3
-
-
-
+
+
+ - Updated to version 2 release candidate 3. github.com/arduino/arduino-ide/releases/tag/2.0.0-rc3
+
+
+
From 1ae0767a39542a92e582fc596e511932dd83de48 Mon Sep 17 00:00:00 2001
From: Joshua
Date: Thu, 10 Mar 2022 14:25:47 +0000
Subject: [PATCH 14/23] Update to rc5
---
cc.arduino.arduinoide.appdata.xml | 11 +++++++++--
cc.arduino.arduinoide.json | 4 ++--
2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/cc.arduino.arduinoide.appdata.xml b/cc.arduino.arduinoide.appdata.xml
index 63e13f7..3bee8ce 100644
--- a/cc.arduino.arduinoide.appdata.xml
+++ b/cc.arduino.arduinoide.appdata.xml
@@ -19,20 +19,27 @@
+
+
+
+ - Updated to version 2 release candidate 5. github.com/arduino/arduino-ide/releases/tag/2.0.0-rc5
+
+
+
- Updated to version 2 release candidate 4. github.com/arduino/arduino-ide/releases/tag/2.0.0-rc4
-
+
- Updated to version 2 release candidate 3. github.com/arduino/arduino-ide/releases/tag/2.0.0-rc3
-
+
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index 3a9f4b6..586dd35 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -84,8 +84,8 @@
"only-arches": [
"x86_64"
],
- "url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc4/arduino-ide_2.0.0-rc4_Linux_64bit.zip",
- "sha256": "1f498f8299ffd7815ca0dd2e856a9000a3dfc60f5f9e958bc57a9ab2c9bb300e"
+ "url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc5/arduino-ide_2.0.0-rc5_Linux_64bit.zip",
+ "sha256": "28df1e5f2457d4f191f19c266d12ca9b31750542c91fd6d00bdf21d533f38664"
},
{
"type": "script",
From 845d1fc8b7270d6d155fb03ff6709fa775ebe658 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Wed, 20 Apr 2022 12:45:11 +0100
Subject: [PATCH 15/23] Update to rc6
---
cc.arduino.arduinoide.appdata.xml | 7 +++++++
cc.arduino.arduinoide.json | 4 ++--
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/cc.arduino.arduinoide.appdata.xml b/cc.arduino.arduinoide.appdata.xml
index 3bee8ce..4bfdce0 100644
--- a/cc.arduino.arduinoide.appdata.xml
+++ b/cc.arduino.arduinoide.appdata.xml
@@ -19,6 +19,13 @@
+
+
+
+ - Updated to version 2 release candidate 6. github.com/arduino/arduino-ide/releases/tag/2.0.0-rc6
+
+
+
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index 586dd35..8d1eb73 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -84,8 +84,8 @@
"only-arches": [
"x86_64"
],
- "url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc5/arduino-ide_2.0.0-rc5_Linux_64bit.zip",
- "sha256": "28df1e5f2457d4f191f19c266d12ca9b31750542c91fd6d00bdf21d533f38664"
+ "url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc6/arduino-ide_2.0.0-rc6_Linux_64bit.zip",
+ "sha256": "6c4a60d18d30895fe0de6872ca89b5404bf1a2874e32bf3d958a9e6a934e824f"
},
{
"type": "script",
From 05535d46cecb5edcdb6e66506014f0cec0f344dd Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Mon, 9 May 2022 20:51:10 +0100
Subject: [PATCH 16/23] Updated Git version.
---
arduino-ide.sh | 13 +++++++++++++
cc.arduino.arduinoide.json | 20 +++++++++++---------
2 files changed, 24 insertions(+), 9 deletions(-)
create mode 100644 arduino-ide.sh
diff --git a/arduino-ide.sh b/arduino-ide.sh
new file mode 100644
index 0000000..a72e70a
--- /dev/null
+++ b/arduino-ide.sh
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+FLAGS='--no-sandbox'
+
+if [[ $XDG_SESSION_TYPE == "wayland" ]] && [ -c /dev/nvidia0 ]
+then
+ FLAGS="$FLAGS --disable-gpu-sandbox"
+fi
+
+# I'm Unable to get this working just yet.
+#env TMPDIR=$XDG_CACHE_HOME zypak-wrapper /app/arduino-ide/arduino-ide $FLAGS "$@"
+
+exec /app/arduino-ide/arduino-ide $FLAGS "$@"
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index 8d1eb73..f24cacf 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -1,13 +1,17 @@
{
"app-id": "cc.arduino.arduinoide",
+ "base": "org.electronjs.Electron2.BaseApp",
+ "base-version": "21.08",
"runtime": "org.freedesktop.Platform",
"runtime-version": "21.08",
"sdk": "org.freedesktop.Sdk",
"command": "arduino-ide",
+ "separate-locales": false,
"finish-args": [
"--socket=x11",
"--socket=wayland",
"--socket=system-bus",
+ "--socket=pulseaudio",
"--share=ipc",
"--share=network",
"--device=all",
@@ -16,6 +20,7 @@
"--talk-name=org.freedesktop.secrets",
"--talk-name=org.freedesktop.Notifications"
],
+
"modules": [
"shared-modules/libusb/libusb.json",
"python3-pyserial.json",
@@ -49,8 +54,8 @@
"sources": [
{
"type": "archive",
- "url": "https://www.kernel.org/pub/software/scm/git/git-2.35.1.tar.gz",
- "sha256": "9845a37dd01f9faaa7d8aa2078399d3aea91b43819a5efea6e2877b0af09bd43"
+ "url": "https://www.kernel.org/pub/software/scm/git/git-2.36.1.tar.gz",
+ "sha256": "37d936fd17c81aa9ddd3dba4e56e88a45fa534ad0ba946454e8ce818760c6a2c"
}
]
},
@@ -65,6 +70,10 @@
"install -Dm644 cc.arduino.arduinoide.desktop /app/share/applications/cc.arduino.arduinoide.desktop"
],
"sources": [
+ {
+ "type": "file",
+ "path": "arduino-ide.sh"
+ },
{
"type": "file",
"path": "cc.arduino.arduinoide.desktop"
@@ -86,13 +95,6 @@
],
"url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc6/arduino-ide_2.0.0-rc6_Linux_64bit.zip",
"sha256": "6c4a60d18d30895fe0de6872ca89b5404bf1a2874e32bf3d958a9e6a934e824f"
- },
- {
- "type": "script",
- "dest-filename": "arduino-ide.sh",
- "commands": [
- "exec /app/arduino-ide/arduino-ide --no-sandbox \"$@\""
- ]
}
]
}
From 03b024087856f4f5a85cf8a69a65caaeccd41639 Mon Sep 17 00:00:00 2001
From: Joshua Glass <28513051+joshuag1000@users.noreply.github.com>
Date: Thu, 19 May 2022 23:41:13 +0100
Subject: [PATCH 17/23] Update cc.arduino.arduinoide.desktop
---
cc.arduino.arduinoide.desktop | 1 -
1 file changed, 1 deletion(-)
diff --git a/cc.arduino.arduinoide.desktop b/cc.arduino.arduinoide.desktop
index ea81405..c93e172 100644
--- a/cc.arduino.arduinoide.desktop
+++ b/cc.arduino.arduinoide.desktop
@@ -6,4 +6,3 @@ Comment=Arduino IDE v2 on Flathub
Terminal=false
Type=Application
Categories=Development;IDE;Electronics;
-StartupWMClass=jetbrains-studio
From 0c5fff8bde18c6338c0cbe425970edfd6873c75e Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Fri, 20 May 2022 11:01:08 +0100
Subject: [PATCH 18/23] Updated to build from source Needs work to tidy. todo
later
---
cc.arduino.arduinoide.json | 43 ++++++++++++++++++++++++++++++--------
1 file changed, 34 insertions(+), 9 deletions(-)
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index f24cacf..96e6981 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -5,6 +5,9 @@
"runtime": "org.freedesktop.Platform",
"runtime-version": "21.08",
"sdk": "org.freedesktop.Sdk",
+ "sdk-extensions": [
+ "org.freedesktop.Sdk.Extension.node14"
+ ],
"command": "arduino-ide",
"separate-locales": false,
"finish-args": [
@@ -20,6 +23,12 @@
"--talk-name=org.freedesktop.secrets",
"--talk-name=org.freedesktop.Notifications"
],
+ "build-options": {
+ "append-path": "/usr/lib/sdk/node14/bin",
+ "env": {
+ "NPM_CONFIG_LOGLEVEL": "info"
+ }
+ },
"modules": [
"shared-modules/libusb/libusb.json",
@@ -62,8 +71,28 @@
{
"name": "arduino-ide",
"buildsystem": "simple",
+ "build-options": {
+ "build-args": [
+ "--share=network"
+ ],
+ "env": {
+ "XDG_CACHE_HOME": "/run/build/arduino-ide/flatpak-node/cache",
+ "npm_config_cache": "/run/build/arduino-ide/flatpak-node/npm-cache",
+ "npm_config_nodedir": "/usr/lib/sdk/node14",
+ "npm_config_no_save": "true",
+ "npm_config_loglevel": "verbose",
+ "npm_config_offline": "false",
+ "YARN_DISABLE_SELF_UPDATE_CHECK": "true"
+ }
+ },
"build-commands": [
- "mv ./arduino-ide /app/arduino-ide",
+ "yarn --cwd ./build/arduino-ide-source/electron/packager/",
+ "yarn --cwd ./build/arduino-ide-source/electron/packager/ package",
+ "mv ./build/arduino-ide-source/electron/build/dist/*Linux_64bit.zip ./build/arduino-ide.zip",
+ "unzip ./build/arduino-ide.zip -d ./build/arduino-ide/",
+ "rm -f ./build/arduino-ide.zip",
+ "mv ./build/arduino-ide/ /app/arduino-ide/",
+ "rm -rf ./build/",
"install -D arduino-ide.sh /app/bin/arduino-ide",
"install -Dm644 cc.arduino.arduinoide.png /app/share/icons/hicolor/128x128/apps/cc.arduino.arduinoide.png",
"install -Dm644 cc.arduino.arduinoide.appdata.xml /app/share/appdata/cc.arduino.arduinoide.appdata.xml",
@@ -87,14 +116,10 @@
"path": "cc.arduino.arduinoide.png"
},
{
- "type": "archive",
- "dest-filename": "arduino-ide.zip",
- "dest": "arduino-ide",
- "only-arches": [
- "x86_64"
- ],
- "url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc6/arduino-ide_2.0.0-rc6_Linux_64bit.zip",
- "sha256": "6c4a60d18d30895fe0de6872ca89b5404bf1a2874e32bf3d958a9e6a934e824f"
+ "type": "git",
+ "url": "https://github.com/arduino/arduino-ide.git",
+ "tag": "2.0.0-rc6",
+ "dest": "build/arduino-ide-source"
}
]
}
From 8177a7a0f51d0f5da7a5dd158456340ac1a05612 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Fri, 20 May 2022 16:38:11 +0100
Subject: [PATCH 19/23] Updated to v2 icon
---
cc.arduino.arduinoide.png | Bin 10496 -> 77329 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
diff --git a/cc.arduino.arduinoide.png b/cc.arduino.arduinoide.png
index c87f69544d9d50023e73f0181e467eade0877420..ec2ecfcbf70c19cc63803b1b6ab074588eb2c96c 100644
GIT binary patch
literal 77329
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
Date: Fri, 20 May 2022 16:43:35 +0100
Subject: [PATCH 20/23] Prep for zypak - possible
---
arduino-ide.sh | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arduino-ide.sh b/arduino-ide.sh
index a72e70a..f85179c 100644
--- a/arduino-ide.sh
+++ b/arduino-ide.sh
@@ -8,6 +8,8 @@ then
fi
# I'm Unable to get this working just yet.
+#ELECTRON_RUN_AS_NODE=1
+#ZYPAK_SPAWN_LATEST_ON_REEXEC=0
#env TMPDIR=$XDG_CACHE_HOME zypak-wrapper /app/arduino-ide/arduino-ide $FLAGS "$@"
exec /app/arduino-ide/arduino-ide $FLAGS "$@"
From 8e9a7ce7883f6079fee01b0590e9947c1a9c6428 Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Fri, 20 May 2022 16:43:52 +0100
Subject: [PATCH 21/23] Revert "Updated to build from source Needs work to
tidy. todo later"
This reverts commit 0c5fff8bde18c6338c0cbe425970edfd6873c75e.
---
cc.arduino.arduinoide.json | 43 ++++++++------------------------------
1 file changed, 9 insertions(+), 34 deletions(-)
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index 96e6981..f24cacf 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -5,9 +5,6 @@
"runtime": "org.freedesktop.Platform",
"runtime-version": "21.08",
"sdk": "org.freedesktop.Sdk",
- "sdk-extensions": [
- "org.freedesktop.Sdk.Extension.node14"
- ],
"command": "arduino-ide",
"separate-locales": false,
"finish-args": [
@@ -23,12 +20,6 @@
"--talk-name=org.freedesktop.secrets",
"--talk-name=org.freedesktop.Notifications"
],
- "build-options": {
- "append-path": "/usr/lib/sdk/node14/bin",
- "env": {
- "NPM_CONFIG_LOGLEVEL": "info"
- }
- },
"modules": [
"shared-modules/libusb/libusb.json",
@@ -71,28 +62,8 @@
{
"name": "arduino-ide",
"buildsystem": "simple",
- "build-options": {
- "build-args": [
- "--share=network"
- ],
- "env": {
- "XDG_CACHE_HOME": "/run/build/arduino-ide/flatpak-node/cache",
- "npm_config_cache": "/run/build/arduino-ide/flatpak-node/npm-cache",
- "npm_config_nodedir": "/usr/lib/sdk/node14",
- "npm_config_no_save": "true",
- "npm_config_loglevel": "verbose",
- "npm_config_offline": "false",
- "YARN_DISABLE_SELF_UPDATE_CHECK": "true"
- }
- },
"build-commands": [
- "yarn --cwd ./build/arduino-ide-source/electron/packager/",
- "yarn --cwd ./build/arduino-ide-source/electron/packager/ package",
- "mv ./build/arduino-ide-source/electron/build/dist/*Linux_64bit.zip ./build/arduino-ide.zip",
- "unzip ./build/arduino-ide.zip -d ./build/arduino-ide/",
- "rm -f ./build/arduino-ide.zip",
- "mv ./build/arduino-ide/ /app/arduino-ide/",
- "rm -rf ./build/",
+ "mv ./arduino-ide /app/arduino-ide",
"install -D arduino-ide.sh /app/bin/arduino-ide",
"install -Dm644 cc.arduino.arduinoide.png /app/share/icons/hicolor/128x128/apps/cc.arduino.arduinoide.png",
"install -Dm644 cc.arduino.arduinoide.appdata.xml /app/share/appdata/cc.arduino.arduinoide.appdata.xml",
@@ -116,10 +87,14 @@
"path": "cc.arduino.arduinoide.png"
},
{
- "type": "git",
- "url": "https://github.com/arduino/arduino-ide.git",
- "tag": "2.0.0-rc6",
- "dest": "build/arduino-ide-source"
+ "type": "archive",
+ "dest-filename": "arduino-ide.zip",
+ "dest": "arduino-ide",
+ "only-arches": [
+ "x86_64"
+ ],
+ "url": "https://github.com/arduino/arduino-ide/releases/download/2.0.0-rc6/arduino-ide_2.0.0-rc6_Linux_64bit.zip",
+ "sha256": "6c4a60d18d30895fe0de6872ca89b5404bf1a2874e32bf3d958a9e6a934e824f"
}
]
}
From 823bc65f2fcd2641c4e7a3922573f4938dfe3f6f Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Fri, 20 May 2022 17:07:13 +0100
Subject: [PATCH 22/23] I cracked zypak's secrets Zypak should work now meaning
that --no-sandbox is nolonger needed still struggling with compile from
source but i will get there in the future.
---
arduino-ide.sh | 11 ++++-------
cc.arduino.arduinoide.json | 16 ++++++++++++++--
2 files changed, 18 insertions(+), 9 deletions(-)
diff --git a/arduino-ide.sh b/arduino-ide.sh
index f85179c..7c267cc 100644
--- a/arduino-ide.sh
+++ b/arduino-ide.sh
@@ -1,15 +1,12 @@
#!/bin/bash
-FLAGS='--no-sandbox'
+FLAGS=''
if [[ $XDG_SESSION_TYPE == "wayland" ]] && [ -c /dev/nvidia0 ]
then
FLAGS="$FLAGS --disable-gpu-sandbox"
fi
-# I'm Unable to get this working just yet.
-#ELECTRON_RUN_AS_NODE=1
-#ZYPAK_SPAWN_LATEST_ON_REEXEC=0
-#env TMPDIR=$XDG_CACHE_HOME zypak-wrapper /app/arduino-ide/arduino-ide $FLAGS "$@"
-
-exec /app/arduino-ide/arduino-ide $FLAGS "$@"
+# I cracked zypak's secrets
+export ZYPAK_SPAWN_LATEST_ON_REEXEC=0
+env TMPDIR=$XDG_CACHE_HOME zypak-wrapper /app/arduino-ide/arduino-ide /app/arduino-ide/resources/app/src-gen/frontend/electron-main.js $FLAGS "$@"
diff --git a/cc.arduino.arduinoide.json b/cc.arduino.arduinoide.json
index f24cacf..36f249b 100644
--- a/cc.arduino.arduinoide.json
+++ b/cc.arduino.arduinoide.json
@@ -1,7 +1,5 @@
{
"app-id": "cc.arduino.arduinoide",
- "base": "org.electronjs.Electron2.BaseApp",
- "base-version": "21.08",
"runtime": "org.freedesktop.Platform",
"runtime-version": "21.08",
"sdk": "org.freedesktop.Sdk",
@@ -97,6 +95,20 @@
"sha256": "6c4a60d18d30895fe0de6872ca89b5404bf1a2874e32bf3d958a9e6a934e824f"
}
]
+ },
+ {
+ "name": "zypak",
+ "sources": [
+ {
+ "type": "git",
+ "url": "https://github.com/refi64/zypak.git",
+ "tag": "v2022.04",
+ "commit": "55a60d110301e8dd37b631503c3524ab7baaf7aa",
+ "x-checker-data": {
+ "type": "git"
+ }
+ }
+ ]
}
]
}
From 940f682f4f1168d1ec6980790f6143bcf33c8e3b Mon Sep 17 00:00:00 2001
From: Joshua Glass
Date: Fri, 20 May 2022 22:46:05 +0100
Subject: [PATCH 23/23] Updated the manifest to correct any innacurate data.
---
cc.arduino.arduinoide.appdata.xml | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
diff --git a/cc.arduino.arduinoide.appdata.xml b/cc.arduino.arduinoide.appdata.xml
index 4bfdce0..26198ef 100644
--- a/cc.arduino.arduinoide.appdata.xml
+++ b/cc.arduino.arduinoide.appdata.xml
@@ -3,7 +3,7 @@
cc.arduino.arduinoide.desktop
CC-BY-SA-3.0
AGPL-3.0
- Arduino IDE
+ Arduino IDE 2.x
Open-source electronics prototyping platform
Arduino LLC
@@ -17,7 +17,11 @@
Included is an integrated development environment that can be used
to develop and upload code to compatible microcontrollers.
+
+ This is version 2 of the Arduino IDE. Version 2 is currently still in beta.
+
+
@@ -48,18 +52,19 @@
+
https://github.com/arduino/arduino-ide/raw/main/static/screenshot.png
Image of Arduino IDE v2
+
http://www.arduino.cc/
- https://www.arduino.cc/en/Guide/HomePage
+ https://docs.arduino.cc/software/ide-v2
https://github.com//arduino/arduino-ide/issues
- https://github.com/arduino/arduino-ide/tree/master/arduino-core/src/processing/app/i18n
- https://www.arduino.cc/en/Main/Contribute
+ https://github.com/arduino/arduino-ide/tree/main/i18n
+ https://www.arduino.cc/en/donate/
- arduino.appdata.xml@mavit.org.uk