From eece777e285563d51d68d9afd999bbb320594f46 Mon Sep 17 00:00:00 2001 From: Stef Tervelde Date: Tue, 12 Aug 2025 14:11:35 +0200 Subject: [PATCH 1/6] Adding classic confinment support + refactor for later flathub --- .github/workflows/release-gradle.yml | 1 + app/build.gradle.kts | 81 +++++++++++----------------- app/linux/snapcraft.base.yml | 42 +++++++++++++++ 3 files changed, 75 insertions(+), 49 deletions(-) create mode 100644 app/linux/snapcraft.base.yml diff --git a/.github/workflows/release-gradle.yml b/.github/workflows/release-gradle.yml index 16e8984e3b..8ec45cad0b 100644 --- a/.github/workflows/release-gradle.yml +++ b/.github/workflows/release-gradle.yml @@ -153,6 +153,7 @@ jobs: ORG_GRADLE_PROJECT_compose.desktop.mac.notarization.password: ${{ secrets.PROCESSING_APP_PASSWORD }} ORG_GRADLE_PROJECT_compose.desktop.mac.notarization.teamID: ${{ secrets.PROCESSING_TEAM_ID }} ORG_GRADLE_PROJECT_snapname: ${{ vars.SNAP_NAME }} + ORG_GRADLE_PROJECT_snapconfinement: ${{ vars.SNAP_CONFINEMENT }} - name: Sign files with Trusted Signing if: runner.os == 'Windows' diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 5323a1a829..b536208583 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -228,61 +228,44 @@ tasks.register("packageCustomMsi"){ tasks.register("generateSnapConfiguration"){ - val name = findProperty("snapname") ?: rootProject.name + onlyIf { OperatingSystem.current().isLinux } + + val distributable = tasks.named("createDistributable").get() + dependsOn(distributable) + + val name = findProperty("snapname") as String? ?: rootProject.name val arch = when (System.getProperty("os.arch")) { "amd64", "x86_64" -> "amd64" "aarch64" -> "arm64" else -> System.getProperty("os.arch") } - - onlyIf { OperatingSystem.current().isLinux } - val distributable = tasks.named("createDistributable").get() - dependsOn(distributable) - + val confinement = findProperty("snapconfinement") as String? ?: "strict" val dir = distributable.destinationDir.get() - val content = """ - name: $name - version: $version - base: core22 - summary: A creative coding editor - description: | - Processing is a flexible software sketchbook and a programming language designed for learning how to code. - confinement: strict - - apps: - processing: - command: opt/processing/bin/Processing - desktop: opt/processing/lib/processing-Processing.desktop - environment: - LD_LIBRARY_PATH: ${'$'}SNAP/opt/processing/lib/runtime/lib:${'$'}LD_LIBRARY_PATH - LIBGL_DRIVERS_PATH: ${'$'}SNAP/usr/lib/${'$'}SNAPCRAFT_ARCH_TRIPLET/dri - plugs: - - desktop - - desktop-legacy - - wayland - - x11 - - network - - opengl - - home - - removable-media - - audio-playback - - audio-record - - pulseaudio - - gpio - - parts: - processing: - plugin: dump - source: deb/processing_$version-1_$arch.deb - source-type: deb - stage-packages: - - openjdk-17-jre - override-prime: | - snapcraftctl prime - rm -vf usr/lib/jvm/java-17-openjdk-*/lib/security/cacerts - chmod -R +x opt/processing/lib/app/resources/jdk - """.trimIndent() - dir.file("../snapcraft.yaml").asFile.writeText(content) + val base = layout.projectDirectory.file("linux/snapcraft.base.yml") + + doFirst { + + var content = base + .asFile + .readText() + .replace("\$name", name) + .replace("\$arch", arch) + .replace("\$version", version as String) + .replace("\$confinement", confinement) + .let { + if (confinement != "classic") return@let it + // If confinement is not strict, remove the PLUGS section + val start = it.indexOf("# PLUGS START") + val end = it.indexOf("# PLUGS END") + if (start != -1 && end != -1) { + val before = it.substring(0, start) + val after = it.substring(end + "# PLUGS END".length) + return@let before + after + } + return@let it + } + dir.file("../snapcraft.yaml").asFile.writeText(content) + } } tasks.register("packageSnap"){ diff --git a/app/linux/snapcraft.base.yml b/app/linux/snapcraft.base.yml new file mode 100644 index 0000000000..4847f0a7c8 --- /dev/null +++ b/app/linux/snapcraft.base.yml @@ -0,0 +1,42 @@ +name: $name +version: $version +base: core22 +summary: A creative coding editor +description: | + Processing is a flexible software sketchbook and a programming language designed for learning how to code. +confinement: $confinement + +apps: + processing: + command: opt/processing/bin/Processing + desktop: opt/processing/lib/processing-Processing.desktop + environment: + LD_LIBRARY_PATH: $SNAP/opt/processing/lib/runtime/lib:$LD_LIBRARY_PATH + LIBGL_DRIVERS_PATH: $SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET/dri + # PLUGS START + plugs: + - desktop + - desktop-legacy + - wayland + - x11 + - network + - opengl + - home + - removable-media + - audio-playback + - audio-record + - pulseaudio + - gpio + # PLUGS END + +parts: + processing: + plugin: dump + source: deb/processing_$version-1_$arch.deb + source-type: deb + stage-packages: + - openjdk-17-jre + override-prime: | + snapcraftctl prime + rm -vf usr/lib/jvm/java-17-openjdk-*/lib/security/cacerts + chmod -R +x opt/processing/lib/app/resources/jdk \ No newline at end of file From 193cfac840103b3a3843ebee1dbeca3d58b4a65c Mon Sep 17 00:00:00 2001 From: stefterv Date: Tue, 12 Aug 2025 18:02:07 +0200 Subject: [PATCH 2/6] Flatpak configuration file --- app/linux/org.processing.pde.yml | 44 ++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 app/linux/org.processing.pde.yml diff --git a/app/linux/org.processing.pde.yml b/app/linux/org.processing.pde.yml new file mode 100644 index 0000000000..b76bac3be5 --- /dev/null +++ b/app/linux/org.processing.pde.yml @@ -0,0 +1,44 @@ +id: org.processing.processingide +runtime: org.freedesktop.Platform +runtime-version: '24.08' +sdk: org.freedesktop.Sdk +command: processing +finish-args: + - --socket=x11 + - --share=ipc + - --device=all + - --filesystem=home + - --socket=pulseaudio + - --share=network +modules: + - name: "processing" + buildsystem: "simple" + build-commands: + - install -d /app/share/processing + - cp -r app/* /app/share/processing + - install -D processing.sh /app/bin/processing + - install -D src/build/linux/desktop.template /app/share/applications/org.processing.processingide.desktop + - install -D src/build/linux/processing.svg /app/share/icons/hicolor/scalable/apps/org.processing.processingide.svg + - install -D app/lib/app/resources/lib/icons/app-16.png /app/share/icons/hicolor/16x16/apps/org.processing.processingide.png +# # TODO: Add mimetype icons and app icon + sources: + - type: git + url: https://github.com/processing/processing4.git + tag: processing-1304-4.4.4 + dest: src + - type: archive + url: https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-linux-x64-portable.zip + sha256: 8f5141d09c06bc68a3c58ec3bd0e707003a347ea96e742f83f1868b9c460bb6f + only-arches: + - x86_64 + dest: app + - type: archive + url: https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-linux-aarch64-portable.zip + only-arches: + - aarch64 + dest: app + - type: script + dest-filename: "processing.sh" + commands: [ + "exec /app/share/processing/bin/Processing" + ] \ No newline at end of file From 362328abc7345511c86ddac370798818091f4335 Mon Sep 17 00:00:00 2001 From: Stef Tervelde Date: Wed, 13 Aug 2025 11:28:24 +0200 Subject: [PATCH 3/6] file-associations --- app/build.gradle.kts | 8 ++-- app/linux/org.processing.pde.yml | 31 +++++++++++--- build/linux/processing-pde.xml | 69 ++++++++++++++++---------------- 3 files changed, 65 insertions(+), 43 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 5323a1a829..e64bd2ab92 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -86,10 +86,10 @@ compose.desktop { // Fix fonts on some Linux distributions jvmArgs("-Dawt.useSystemAAFontSettings=on") - fileAssociation("pde", "Processing Source Code", "application/x-processing") - fileAssociation("pyde", "Processing Python Source Code", "application/x-processing") - fileAssociation("pdez", "Processing Sketch Bundle", "application/x-processing") - fileAssociation("pdex", "Processing Contribution Bundle", "application/x-processing") + fileAssociation("pde", "Processing Source Code", "application/x-processing",rootProject.file("build/shared/lib/icons/pde-1024.png")) + fileAssociation("pyde", "Processing Python Source Code", "application/x-processing",rootProject.file("build/shared/lib/icons/pde-1024.png")) + fileAssociation("pdez", "Processing Sketch Bundle", "application/x-processing",rootProject.file("build/shared/lib/icons/pde-1024.png")) + fileAssociation("pdex", "Processing Contribution Bundle", "application/x-processing", rootProject.file("build/shared/lib/icons/pde-1024.png")) } } } diff --git a/app/linux/org.processing.pde.yml b/app/linux/org.processing.pde.yml index b76bac3be5..cc151c3fa3 100644 --- a/app/linux/org.processing.pde.yml +++ b/app/linux/org.processing.pde.yml @@ -1,4 +1,4 @@ -id: org.processing.processingide +id: org.processing.pde runtime: org.freedesktop.Platform runtime-version: '24.08' sdk: org.freedesktop.Sdk @@ -10,6 +10,10 @@ finish-args: - --filesystem=home - --socket=pulseaudio - --share=network + +env: + PROCESSING_ID: "org.processing.pde" + modules: - name: "processing" buildsystem: "simple" @@ -17,10 +21,27 @@ modules: - install -d /app/share/processing - cp -r app/* /app/share/processing - install -D processing.sh /app/bin/processing - - install -D src/build/linux/desktop.template /app/share/applications/org.processing.processingide.desktop - - install -D src/build/linux/processing.svg /app/share/icons/hicolor/scalable/apps/org.processing.processingide.svg - - install -D app/lib/app/resources/lib/icons/app-16.png /app/share/icons/hicolor/16x16/apps/org.processing.processingide.png -# # TODO: Add mimetype icons and app icon + + # Install the desktop file and icon + - install -D src/build/linux/desktop.template /app/share/applications/${PROCESSING_ID}.desktop + - sed -i 's/^Icon=.*/Icon=${PROCESSING_ID}/' /app/share/applications/${PROCESSING_ID}.desktop + + # Install icons in various sizes + - install -D src/build/linux/processing.svg /app/share/icons/hicolor/scalable/apps/${PROCESSING_ID}.svg + - install -D app/lib/app/resources/lib/icons/app-16.png /app/share/icons/hicolor/16x16/apps/${PROCESSING_ID}.png + - install -D app/lib/app/resources/lib/icons/app-32.png /app/share/icons/hicolor/32x32/apps/${PROCESSING_ID}.png + - install -D app/lib/app/resources/lib/icons/app-48.png /app/share/icons/hicolor/48x48/apps/${PROCESSING_ID}.png + - install -D app/lib/app/resources/lib/icons/app-64.png /app/share/icons/hicolor/64x64/apps/${PROCESSING_ID}.png + - install -D app/lib/app/resources/lib/icons/app-128.png /app/share/icons/hicolor/128x128/apps/${PROCESSING_ID}.png + - install -D app/lib/app/resources/lib/icons/app-256.png /app/share/icons/hicolor/256x256/apps/${PROCESSING_ID}.png + - install -D app/lib/app/resources/lib/icons/app-512.png /app/share/icons/hicolor/512x512/apps/${PROCESSING_ID}.png + - install -D app/lib/app/resources/lib/icons/pde-16.png /app/share/icons/hicolor/16x16/mimetypes/${PROCESSING_ID}-text-x-processing.png + - install -D app/lib/app/resources/lib/icons/pde-32.png /app/share/icons/hicolor/32x32/mimetypes/${PROCESSING_ID}-text-x-processing.png + - install -D app/lib/app/resources/lib/icons/pde-48.png /app/share/icons/hicolor/48x48/mimetypes/${PROCESSING_ID}-text-x-processing.png + - install -D app/lib/app/resources/lib/icons/pde-64.png /app/share/icons/hicolor/64x64/mimetypes/${PROCESSING_ID}-text-x-processing.png + - install -D app/lib/app/resources/lib/icons/pde-128.png /app/share/icons/hicolor/128x128/mimetypes/${PROCESSING_ID}-text-x-processing.png + - install -D app/lib/app/resources/lib/icons/pde-256.png /app/share/icons/hicolor/256x256/mimetypes/${PROCESSING_ID}-text-x-processing.png + - install -D app/lib/app/resources/lib/icons/pde-512.png /app/share/icons/hicolor/512x512/mimetypes/${PROCESSING_ID}-text-x-processing.png sources: - type: git url: https://github.com/processing/processing4.git diff --git a/build/linux/processing-pde.xml b/build/linux/processing-pde.xml index 3b8a6837be..a869b1977d 100644 --- a/build/linux/processing-pde.xml +++ b/build/linux/processing-pde.xml @@ -2,41 +2,42 @@ Processing source code - شفرة مصدر Processing - Kryničny kod Processing - Изходен код на Processing - codi font en Processing - Processingkildekode - Processing-Quelltext - πηγαίος κώδικας Processing - Processing source code - Processing-fontkodo - código fuente en Processing - Processing iturburu-kodea - Processing-lähdekoodi - code source Processing - cód foinseach Processing - Processing-forráskód - Kode program Processing - Codice sorgente Processing - Processing ソースコード - Processing pradinis kodas - Processing pirmkods - Kod sumber Processing - Processing-kildekode - Processing-broncode - Processing-kjeldekode - Kod źródłowy Processing - código fonte Processing - Código fonte Processing - исходный код Processing - Kod burues Processing - Processing-källkod - Вихідний код на мові Processing - Mã nguồn Processing - Processing 源代码 - Processing 源代碼 + شفرة مصدر Processing + Kryničny kod Processing + Изходен код на Processing + codi font en Processing + Processingkildekode + Processing-Quelltext + πηγαίος κώδικας Processing + Processing source code + Processing-fontkodo + código fuente en Processing + Processing iturburu-kodea + Processing-lähdekoodi + code source Processing + cód foinseach Processing + Processing-forráskód + Kode program Processing + Codice sorgente Processing + Processing ソースコード + Processing pradinis kodas + Processing pirmkods + Kod sumber Processing + Processing-kildekode + Processing-broncode + Processing-kjeldekode + Kod źródłowy Processing + código fonte Processing + Código fonte Processing + исходный код Processing + Kod burues Processing + Processing-källkod + Вихідний код на мові Processing + Mã nguồn Processing + Processing 源代码 + Processing 源代碼 + From 562a018d0b9b4eedfc0c704c75e7f4ad407d4094 Mon Sep 17 00:00:00 2001 From: Stef Tervelde Date: Wed, 13 Aug 2025 12:40:59 +0200 Subject: [PATCH 4/6] Fixing file associations --- app/build.gradle.kts | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index e64bd2ab92..241460758e 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -80,16 +80,17 @@ compose.desktop { upgradeUuid = "89d8d7fe-5602-4b12-ba10-0fe78efbd602" } linux { - appCategory = "Programming" + debMaintainer = "hello@processing.org" menuGroup = "Development;Programming;" + appCategory = "Programming" iconFile = rootProject.file("build/linux/processing.png") // Fix fonts on some Linux distributions jvmArgs("-Dawt.useSystemAAFontSettings=on") - fileAssociation("pde", "Processing Source Code", "application/x-processing",rootProject.file("build/shared/lib/icons/pde-1024.png")) - fileAssociation("pyde", "Processing Python Source Code", "application/x-processing",rootProject.file("build/shared/lib/icons/pde-1024.png")) - fileAssociation("pdez", "Processing Sketch Bundle", "application/x-processing",rootProject.file("build/shared/lib/icons/pde-1024.png")) - fileAssociation("pdex", "Processing Contribution Bundle", "application/x-processing", rootProject.file("build/shared/lib/icons/pde-1024.png")) + fileAssociation("application/x-processing","pde", "Processing Source Code",rootProject.file("build/shared/lib/icons/pde-1024.png")) + fileAssociation("application/x-processing","pyde", "Processing Python Source Code",rootProject.file("build/shared/lib/icons/pde-1024.png")) + fileAssociation("application/x-processing","pdez", "Processing Sketch Bundle",rootProject.file("build/shared/lib/icons/pde-1024.png")) + fileAssociation("application/x-processing","pdex", "Processing Contribution Bundle", rootProject.file("build/shared/lib/icons/pde-1024.png")) } } } From fd1473d1373312b87d5d01c55552188a3b5f19ea Mon Sep 17 00:00:00 2001 From: stefterv Date: Wed, 13 Aug 2025 13:12:08 +0200 Subject: [PATCH 5/6] Flatpak configuration file --- app/linux/org.processing.pde.yml | 68 ++++++++++---------------------- 1 file changed, 21 insertions(+), 47 deletions(-) diff --git a/app/linux/org.processing.pde.yml b/app/linux/org.processing.pde.yml index cc151c3fa3..2d14a06695 100644 --- a/app/linux/org.processing.pde.yml +++ b/app/linux/org.processing.pde.yml @@ -2,7 +2,7 @@ id: org.processing.pde runtime: org.freedesktop.Platform runtime-version: '24.08' sdk: org.freedesktop.Sdk -command: processing +command: Processing finish-args: - --socket=x11 - --share=ipc @@ -11,55 +11,29 @@ finish-args: - --socket=pulseaudio - --share=network -env: - PROCESSING_ID: "org.processing.pde" - modules: - - name: "processing" - buildsystem: "simple" + - name: Processing + buildsystem: simple build-commands: - - install -d /app/share/processing - - cp -r app/* /app/share/processing - - install -D processing.sh /app/bin/processing + # Unpack Processing deb + - ar x processing.deb + - tar --zstd -xf data.tar.zst + - mv opt/processing/* /app/ + - find /app/lib/app/resources/jdk/bin -type f -exec chmod +x {} + + # Install the desktop file and icon - - install -D src/build/linux/desktop.template /app/share/applications/${PROCESSING_ID}.desktop - - sed -i 's/^Icon=.*/Icon=${PROCESSING_ID}/' /app/share/applications/${PROCESSING_ID}.desktop + - install -D /app/lib/processing-Processing.desktop /app/share/applications/org.processing.pde.desktop + - sed -i 's/^Icon=.*/Icon=org.processing.pde/' /app/share/applications/org.processing.pde.desktop + - sed -i 's/^Exec=.*/Exec=\/app\/bin\/Processing/' /app/share/applications/org.processing.pde.desktop + + # Install the mimetype info + - install -D /app/lib/processing-Processing-MimeInfo.xml /app/share/mime/packages/org.processing.pde.xml + +# - install -D /app/lib/Processing.png /app/share/icons/hicolor/512x512/apps/org.processing.pde.png +# - install -D /app/lib/application-x-processing.png /app/share/icons/hicolor/512x512/mimetypes/org.processing.pde-text-x-processing.png - # Install icons in various sizes - - install -D src/build/linux/processing.svg /app/share/icons/hicolor/scalable/apps/${PROCESSING_ID}.svg - - install -D app/lib/app/resources/lib/icons/app-16.png /app/share/icons/hicolor/16x16/apps/${PROCESSING_ID}.png - - install -D app/lib/app/resources/lib/icons/app-32.png /app/share/icons/hicolor/32x32/apps/${PROCESSING_ID}.png - - install -D app/lib/app/resources/lib/icons/app-48.png /app/share/icons/hicolor/48x48/apps/${PROCESSING_ID}.png - - install -D app/lib/app/resources/lib/icons/app-64.png /app/share/icons/hicolor/64x64/apps/${PROCESSING_ID}.png - - install -D app/lib/app/resources/lib/icons/app-128.png /app/share/icons/hicolor/128x128/apps/${PROCESSING_ID}.png - - install -D app/lib/app/resources/lib/icons/app-256.png /app/share/icons/hicolor/256x256/apps/${PROCESSING_ID}.png - - install -D app/lib/app/resources/lib/icons/app-512.png /app/share/icons/hicolor/512x512/apps/${PROCESSING_ID}.png - - install -D app/lib/app/resources/lib/icons/pde-16.png /app/share/icons/hicolor/16x16/mimetypes/${PROCESSING_ID}-text-x-processing.png - - install -D app/lib/app/resources/lib/icons/pde-32.png /app/share/icons/hicolor/32x32/mimetypes/${PROCESSING_ID}-text-x-processing.png - - install -D app/lib/app/resources/lib/icons/pde-48.png /app/share/icons/hicolor/48x48/mimetypes/${PROCESSING_ID}-text-x-processing.png - - install -D app/lib/app/resources/lib/icons/pde-64.png /app/share/icons/hicolor/64x64/mimetypes/${PROCESSING_ID}-text-x-processing.png - - install -D app/lib/app/resources/lib/icons/pde-128.png /app/share/icons/hicolor/128x128/mimetypes/${PROCESSING_ID}-text-x-processing.png - - install -D app/lib/app/resources/lib/icons/pde-256.png /app/share/icons/hicolor/256x256/mimetypes/${PROCESSING_ID}-text-x-processing.png - - install -D app/lib/app/resources/lib/icons/pde-512.png /app/share/icons/hicolor/512x512/mimetypes/${PROCESSING_ID}-text-x-processing.png sources: - - type: git - url: https://github.com/processing/processing4.git - tag: processing-1304-4.4.4 - dest: src - - type: archive - url: https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-linux-x64-portable.zip - sha256: 8f5141d09c06bc68a3c58ec3bd0e707003a347ea96e742f83f1868b9c460bb6f - only-arches: - - x86_64 - dest: app - - type: archive - url: https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-linux-aarch64-portable.zip - only-arches: - - aarch64 - dest: app - - type: script - dest-filename: "processing.sh" - commands: [ - "exec /app/share/processing/bin/Processing" - ] \ No newline at end of file + - type: file + path: ../build/compose/binaries/main/deb/processing_1.0.0-1_amd64.deb + dest-filename: processing.deb \ No newline at end of file From b338d518d7bffda5f54b15ff2c3ce6eb726572e1 Mon Sep 17 00:00:00 2001 From: Stef Tervelde Date: Wed, 13 Aug 2025 14:29:24 +0200 Subject: [PATCH 6/6] file association fix --- app/build.gradle.kts | 8 ++++---- app/linux/org.processing.pde.yml | 3 +-- build/shared/lib/icons/app-linux.svg | 19 +++++++++++++++++++ 3 files changed, 24 insertions(+), 6 deletions(-) create mode 100644 build/shared/lib/icons/app-linux.svg diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 31462fdff6..8212b879bd 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -87,10 +87,10 @@ compose.desktop { // Fix fonts on some Linux distributions jvmArgs("-Dawt.useSystemAAFontSettings=on") - fileAssociation("application/x-processing","pde", "Processing Source Code",rootProject.file("build/shared/lib/icons/pde-1024.png")) - fileAssociation("application/x-processing","pyde", "Processing Python Source Code",rootProject.file("build/shared/lib/icons/pde-1024.png")) - fileAssociation("application/x-processing","pdez", "Processing Sketch Bundle",rootProject.file("build/shared/lib/icons/pde-1024.png")) - fileAssociation("application/x-processing","pdex", "Processing Contribution Bundle", rootProject.file("build/shared/lib/icons/pde-1024.png")) + fileAssociation("application/x-processing","pde", "Processing Source Code",rootProject.file("build/shared/lib/icons/pde-512.png")) + fileAssociation("application/x-processing","pyde", "Processing Python Source Code",rootProject.file("build/shared/lib/icons/pde-512.png")) + fileAssociation("application/x-processing","pdez", "Processing Sketch Bundle",rootProject.file("build/shared/lib/icons/pde-512.png")) + fileAssociation("application/x-processing","pdex", "Processing Contribution Bundle", rootProject.file("build/shared/lib/icons/pde-512.png")) } } } diff --git a/app/linux/org.processing.pde.yml b/app/linux/org.processing.pde.yml index 2d14a06695..587bc22236 100644 --- a/app/linux/org.processing.pde.yml +++ b/app/linux/org.processing.pde.yml @@ -21,7 +21,6 @@ modules: - mv opt/processing/* /app/ - find /app/lib/app/resources/jdk/bin -type f -exec chmod +x {} + - # Install the desktop file and icon - install -D /app/lib/processing-Processing.desktop /app/share/applications/org.processing.pde.desktop - sed -i 's/^Icon=.*/Icon=org.processing.pde/' /app/share/applications/org.processing.pde.desktop @@ -31,7 +30,7 @@ modules: - install -D /app/lib/processing-Processing-MimeInfo.xml /app/share/mime/packages/org.processing.pde.xml # - install -D /app/lib/Processing.png /app/share/icons/hicolor/512x512/apps/org.processing.pde.png -# - install -D /app/lib/application-x-processing.png /app/share/icons/hicolor/512x512/mimetypes/org.processing.pde-text-x-processing.png + - install -D /app/lib/application-x-processing.png /app/share/icons/hicolor/512x512/mimetypes/org.processing.pde-text-x-processing.png sources: - type: file diff --git a/build/shared/lib/icons/app-linux.svg b/build/shared/lib/icons/app-linux.svg new file mode 100644 index 0000000000..9b5ccd52b1 --- /dev/null +++ b/build/shared/lib/icons/app-linux.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + +