diff --git a/.github/scripts/release.py b/.github/scripts/release.py index 651ff01fe767..8a4dab91ed61 100755 --- a/.github/scripts/release.py +++ b/.github/scripts/release.py @@ -4,6 +4,7 @@ import subprocess import sys from datetime import datetime +from email import utils import xml.etree.ElementTree as xml import json @@ -112,6 +113,19 @@ def gh_get_last_nightly_tag(): return next(gh_list_nightly_tags(16), None) +def deb_changelog(version, revision, date, fullname='ruffle', email='ruffle@ruffle.rs', suite='unstable'): + orig = '' + changes = '' + rfc2822date = utils.format_datetime(date) + if os.path.exists(f'{REPO_DIR}/.github/changelog.entries'): + with open(f'{REPO_DIR}/.github/changelog.entries', 'r') as changelog: + changes = changelog.read() + with open(f'{REPO_DIR}/desktop/packages/linux/debian/changelog', 'r') as original: + orig = original.read() + with open(f'{REPO_DIR}/desktop/packages/linux/debian/changelog', 'w') as modified: + modified.write(f'ruffle ({version}-{revision}) {suite}; urgency=medium\n\n{changes}\n\n -- {fullname} <{email}> {rfc2822date}\n\n{orig}') + + # ===== Commands =========================================== def bump(): @@ -120,6 +134,7 @@ def bump(): """ current_version = cargo_get_version() + current_day_id = get_current_day_id() log(f'Current version: {current_version}') log('Bumping minor version to get the next planned version') @@ -135,7 +150,7 @@ def bump(): cargo_set_version([nightly_version]) version = cargo_get_version() - version4 = f'{next_planned_version}.{get_current_day_id()}' + version4 = f'{next_planned_version}.{current_day_id}' npm_dir = f'{REPO_DIR}/web' run_command(['npm', 'install', 'workspace-version'], cwd=npm_dir) @@ -146,6 +161,8 @@ def bump(): github_output('version', version) github_output('version4', version4) + deb_changelog(version, current_day_id, datetime.now()) + def metainfo(): metainfo_path1 = f'{REPO_DIR}/desktop/packages/linux/rs.ruffle.Ruffle.metainfo.xml' diff --git a/.github/workflows/release_nightly.yml b/.github/workflows/release_nightly.yml index 82ffc5a4d4d4..2b62fffd3fa5 100644 --- a/.github/workflows/release_nightly.yml +++ b/.github/workflows/release_nightly.yml @@ -21,6 +21,7 @@ jobs: upload_url: ${{ steps.create_release.outputs.upload_url }} package_prefix: ${{ steps.create_release.outputs.package_prefix }} tag_name: ${{ steps.commit.outputs.tag_name }} + version: ${{ steps.version.outputs.version }} version4: ${{ steps.version.outputs.version4 }} # Only run the scheduled workflows on the main repo. @@ -54,6 +55,27 @@ jobs: crate: cargo-get version: '^1.0' + - name: Get last tag + id: last_tag + run: echo "last_tag=`gh release list --order=desc --limit=1 --json tagName --jq '.[0].tagName'`" >> $GITHUB_OUTPUT + env: + GITHUB_TOKEN: ${{ secrets.PGITHUB_TOKEN }} + - name: Get changelog + uses: mikepenz/release-changelog-builder-action@v6.0.1 + with: + owner: ruffle-rs + repo: ruffle + #fromTag: nightly-2025-12-03 + fromTag: ${{ steps.last_tag.outputs.last_tag }} + toTag: HEAD + token: ${{ secrets.PGITHUB_TOKEN }} + outputFile: .github/changelog.entries + configurationJson: | + { + "template": "#{{UNCATEGORIZED}}", + "pr_template": " * #{{TITLE}} by @#{{AUTHOR}} in ##{{NUMBER}}", + "categories": [] + } - name: Bump version if: steps.activity.outputs.is_active == 'true' id: version @@ -647,3 +669,136 @@ jobs: commit_email: ruffle@ruffle.rs ssh_private_key: ${{ secrets.AUR_SSH_PRIVATE_KEY }} commit_message: Update to ${{ needs.create-nightly-release.outputs.tag_name }} + + build-debian-packages: + name: Build Debian ${{ matrix.build_name }} packages + needs: [create-nightly-release, build] + strategy: + fail-fast: false + matrix: + include: + - build_name: amd64 + os: ubuntu-24.04 + arch: x86_64 + - build_name: arm64 + os: ubuntu-24.04-arm + arch: aarch64 + runs-on: ${{ matrix.os }} + if: github.repository == 'donmor/ruffle' + steps: + - uses: actions/checkout@v6 + with: + ref: ${{ needs.create-nightly-release.outputs.tag_name }} + - name: Get current time with dashes + uses: josStorer/get-current-time@v2.1.2 + id: current_time_dashes + with: + format: YYYY-MM-DD + + - name: Get current time with dots + uses: josStorer/get-current-time@v2.1.2 + id: current_time_dots + with: + format: YYYY.M.D + + - name: Install build dependencies + run: sudo apt install debhelper rename + - name: Prepare informations and source + id: profiling + run: | + version4=${{ needs.create-nightly-release.outputs.version4 }} + version=${{ needs.create-nightly-release.outputs.version }} + revision=${version4##*.} + echo "version=${version}" >>$GITHUB_OUTPUT + echo "revision=${revision}" >>$GITHUB_OUTPUT + git archive --prefix=ruffle-${version}/ -o ../ruffle_${version}.orig.tar.gz HEAD + cp -a desktop/packages/linux/debian ./ + - name: Build Source package + if: runner.arch == 'X64' + run: | + dpkg-buildpackage -us -uc -d -S + - name: Get prebuilt binaries + run: | + gh release download "${{ needs.create-nightly-release.outputs.tag_name }}" --pattern "${{ needs.create-nightly-release.outputs.package_prefix }}-linux-${{ matrix.arch }}.tar.gz" + gh release download "${{ needs.create-nightly-release.outputs.tag_name }}" --pattern "${{ needs.create-nightly-release.outputs.package_prefix }}-web-extension.zip" + gh release download "${{ needs.create-nightly-release.outputs.tag_name }}" --pattern "${{ needs.create-nightly-release.outputs.package_prefix }}-web-extension-firefox-unsigned.xpi" + tar -xf "${{ needs.create-nightly-release.outputs.package_prefix }}-linux-${{ matrix.arch }}.tar.gz" ruffle + rm "${{ needs.create-nightly-release.outputs.package_prefix }}-linux-${{ matrix.arch }}.tar.gz" + mkdir -p web/packages/extension/dist + mv "${{ needs.create-nightly-release.outputs.package_prefix }}-web-extension.zip" web/packages/extension/dist/ruffle_extension.zip + mv "${{ needs.create-nightly-release.outputs.package_prefix }}-web-extension-firefox-unsigned.xpi" web/packages/extension/dist/firefox_unsigned.xpi + mkdir -p target/release + mv ruffle target/release/ruffle_desktop + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Build Packages + run: | + dpkg-buildpackage -us -uc -nc -d -b + rename 's/\.deb/\.ddeb/' *-dbgsym*.deb + - name: Move built files (sources) + if: runner.arch == 'X64' + run: | + mv ../ruffle_${{ steps.profiling.outputs.version }}.orig.tar.gz ./ + mv ../ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}.debian.tar.xz ./ + mv ../ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}.dsc ./ + mv ../ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_source.buildinfo ./ + mv ../ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_source.changes ./ + - name: Move built files (packages) + run: | + mv ../ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_${{ matrix.build_name }}.buildinfo ./ + mv ../ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_${{ matrix.build_name }}.changes ./ + mv ../ruffle-desktop_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_${{ matrix.build_name }}.deb ./ + mv ../ruffle-desktop-dbgsym_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_${{ matrix.build_name }}.ddeb ./ + mv ../webext-ruffle-flash-emulator_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_all.deb ./ + - name: Upload Source package as build artifact + if: runner.arch == 'X64' + uses: actions/upload-artifact@v5 + with: + name: deb-source + path: | + ruffle_${{ steps.profiling.outputs.version }}.orig.tar.gz + ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}.debian.tar.xz + ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}.dsc + ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_source.buildinfo + ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_source.changes + - name: Upload Extension Package as build artifact + if: runner.arch == 'X64' + uses: actions/upload-artifact@v5 + with: + name: deb-all + path: | + webext-ruffle-flash-emulator_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_all.deb + - name: Upload Packages as build artifact + uses: actions/upload-artifact@v5 + with: + name: deb-${{ matrix.build_name }} + path: | + ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_${{ matrix.build_name }}.buildinfo + ruffle_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_${{ matrix.build_name }}.changes + ruffle-desktop_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_${{ matrix.build_name }}.deb + ruffle-desktop-dbgsym_${{ steps.profiling.outputs.version }}-${{ steps.profiling.outputs.revision }}_${{ matrix.build_name }}.ddeb + publish-debian-packages: + name: Publish Debian packages + needs: [create-nightly-release, build-debian-packages] + runs-on: ubuntu-24.04 + steps: + - name: Download all artifacts previously built + uses: actions/download-artifact@v4 + with: + merge-multiple: true + pattern: deb-* + run-id: ${{ needs.build-debian-packages.outputs.run_id }} + path: download/${{ needs.create-nightly-release.outputs.tag_name }} + - name: Generate trivial source + working-directory: download/${{ needs.create-nightly-release.outputs.tag_name }} + run: | + dpkg-scanpackages -m ../../download/${{ needs.create-nightly-release.outputs.tag_name }} > Packages + dpkg-scanpackages -t ddeb -m ../../download/${{ needs.create-nightly-release.outputs.tag_name }} >> Packages + dpkg-scansources ../../download/${{ needs.create-nightly-release.outputs.tag_name }} > Sources + apt-ftparchive release . > Release + - name: Upload packages + run: | + gh release upload -R ${{ github.repository }} "${{ needs.create-nightly-release.outputs.tag_name }}" `find download -name '*ruffle*.deb'` `find download -name 'ruffle*.ddeb'` + gh release upload -R ${{ github.repository }} "${{ needs.create-nightly-release.outputs.tag_name }}" `find download -name 'ruffle*.orig.tar.gz'` `find download -name 'ruffle*.debian.tar.xz'` `find download -name 'ruffle*.dsc'` download/${{ needs.create-nightly-release.outputs.tag_name }}/Packages download/${{ needs.create-nightly-release.outputs.tag_name }}/Sources download/${{ needs.create-nightly-release.outputs.tag_name }}/Release + env: + GITHUB_TOKEN: ${{ secrets.PGITHUB_TOKEN }} diff --git a/.gitignore b/.gitignore index 7e1512f05c4a..04f4de7c4136 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,9 @@ RECOVER_*.fla # Mac junk .DS_Store + +# Generated by Make +/debian + +# CI middle files +/.github/changelog.entries diff --git a/Makefile b/Makefile new file mode 100644 index 000000000000..14a2c776a023 --- /dev/null +++ b/Makefile @@ -0,0 +1,110 @@ +.PHONY: all clean distclean ruffle_desktop ruffle_webext install uninstall version deb + +SI := -i '' +ifeq ($(shell sed --version 2>/dev/null | head -1 | grep -q GNU && echo GNU),GNU) + SI := -i +endif + +DEBIAN_DIR := desktop/packages/linux/debian +DEBFULLNAME ?= unknown +DEBEMAIL ?= unknown@localhost +DEBDATE ?= $(shell date -R) +DEBSUITE ?= unstable + +prefix ?= /usr/local + +VERSION := $(shell cargo metadata --format-version=1 --no-deps --offline | jq -r '.packages[] | select(.name == "ruffle_desktop").version') +DEBIAN_ORIG_GZ := ../ruffle_$(VERSION).orig.tar.gz +DEBIAN_ORIG_XZ := ../ruffle_$(VERSION).orig.tar.xz +REVISION := $(shell date -d $(shell echo $(notdir $(CURDIR)) | sed 's/ruffle-//' | sed 's/nightly-//' | sed 's/$(VERSION)-//') +%y%j 2>/dev/null) +ifeq ($(REVISION),) + REVISION := $(shell date +%y%j) +endif + +all: target/release/ruffle_desktop web/packages/extension/dist/ruffle_extension.zip web/packages/extension/dist/firefox_unsigned.xpi + +clean: + -rm -f ruffle_desktop + -rm -rf target + +distclean: clean + -find . -name "*.o" -delete + -rm -rf *.swd RECOVER_*.fla /.idea .DS_Store + -cd $(DEBIAN_DIR) && rm -rf ./ruffle.substvars ./.debhelper/ ./debhelper-build-stamp ./files ./ruffle/ ./ruffle.debhelper.log ./tmp/ + +ruffle_desktop: target/release/ruffle_desktop + +target/release/ruffle_desktop: + cargo build --release --package=ruffle_desktop + +ruffle_webext: web/packages/extension/dist/ruffle_extension.zip web/packages/extension/dist/firefox_unsigned.xpi + +web/packages/extension/dist/ruffle_extension.zip web/packages/extension/dist/firefox_unsigned.xpi: + cd web && npm install + cd web && CARGO_FEATURES=jpegxr WASM_SOURCE=cargo_and_store npm run build:dual-wasm-repro + +install: target/release/ruffle_desktop web/packages/extension/dist/ruffle_extension.zip web/packages/extension/dist/firefox_unsigned.xpi + install -d $(DESTDIR)$(prefix)/bin/ + install -m755 target/release/ruffle_desktop $(DESTDIR)$(prefix)/bin/ + install -d $(DESTDIR)$(prefix)/share/ + install -d $(DESTDIR)$(prefix)/share/applications/ + install -m644 desktop/packages/linux/rs.ruffle.Ruffle.desktop $(DESTDIR)$(prefix)/share/applications/ + install -d $(DESTDIR)$(prefix)/share/metainfo/ + install -m644 desktop/packages/linux/rs.ruffle.Ruffle.metainfo.xml $(DESTDIR)$(prefix)/share/metainfo/ + install -d $(DESTDIR)$(prefix)/share/icons/ + install -d $(DESTDIR)$(prefix)/share/icons/hicolor/ + install -d $(DESTDIR)$(prefix)/share/icons/hicolor/scalable/ + install -d $(DESTDIR)$(prefix)/share/icons/hicolor/scalable/apps/ + install -m644 desktop/packages/linux/rs.ruffle.Ruffle.svg $(DESTDIR)$(prefix)/share/icons/hicolor/scalable/apps/ + install -d $(DESTDIR)$(prefix)/share/webext/ + install -d $(DESTDIR)$(prefix)/share/webext/ruffle-flash-emulator/ + install -d $(DESTDIR)$(prefix)/share/chromium/ + install -d $(DESTDIR)$(prefix)/share/chromium/extensions/ + install -d $(DESTDIR)$(prefix)/share/mozilla/ + install -d $(DESTDIR)$(prefix)/share/mozilla/extensions/ + install -d $(DESTDIR)$(prefix)/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/ + unzip -o web/packages/extension/dist/ruffle_extension.zip -d $(DESTDIR)$(prefix)/share/webext/ruffle-flash-emulator/ + ln -sf /usr/share/webext/ruffle-flash-emulator $(DESTDIR)$(prefix)/share/chromium/extensions/ + install -m644 web/packages/extension/dist/firefox_unsigned.xpi $(DESTDIR)$(prefix)/share/webext/ruffle@ruffle.rs.xpi + ln -sf /usr/share/webext/ruffle@ruffle.rs.xpi $(DESTDIR)$(prefix)/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/ + +uninstall: + -rm -f $(DESTDIR)$(prefix)/bin/ruffle_desktop + -rm -f $(DESTDIR)$(prefix)/share/applications/rs.ruffle.Ruffle.desktop + -rm -f $(DESTDIR)$(prefix)/share/icons/hicolor/scalable/apps/rs.ruffle.Ruffle.svg + -rm -f $(DESTDIR)$(prefix)/share/metainfo/rs.ruffle.Ruffle.metainfo.xml + -rm -f $(DESTDIR)$(prefix)/share/chromium/extensions/ruffle-flash-emulator + -rm -f $(DESTDIR)$(prefix)/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/ruffle@ruffle.rs.xpi + -rm -rf $(DESTDIR)$(prefix)/share/webext/ruffle-flash-emulator + -rm -f $(DESTDIR)$(prefix)/share/webext/ruffle@ruffle.rs.xpi + +version: + @echo $(VERSION)-$(REVISION) + @-if ! grep "$(VERSION)-$(REVISION)" $(DEBIAN_DIR)/changelog; then \ + if [ -s $(DEBIAN_DIR)/changelog ]; then \ + sed $(SI) '1i\\' $(DEBIAN_DIR)/changelog; \ + else \ + echo > $(DEBIAN_DIR)/changelog; \ + fi; \ + sed $(SI) '1i\ -- $(DEBFULLNAME) <$(DEBEMAIL)> $(DEBDATE)' $(DEBIAN_DIR)/changelog; \ + sed $(SI) '1i\\' $(DEBIAN_DIR)/changelog; \ + touch -a .github/changelog.entries; \ + tac .github/changelog.entries | while read line; do \ + sed $(SI) "1i$$line" $(DEBIAN_DIR)/changelog; \ + done; \ + sed $(SI) '1i\\' $(DEBIAN_DIR)/changelog; \ + sed $(SI) '1iruffle ($(VERSION)-$(REVISION)) $(DEBSUITE); urgency=medium' $(DEBIAN_DIR)/changelog; \ + fi + +deb: version + @if [ ! -s $(DEBIAN_ORIG_XZ) -a ! -s $(DEBIAN_ORIG_GZ) ]; then \ + if [ -s ../$(notdir $(CURDIR)).tar.gz ]; then \ + mv -v ../$(notdir $(CURDIR)).tar.gz $(DEBIAN_ORIG_GZ); \ + else \ + echo 'Creating $(DEBIAN_ORIG_GZ) from HEAD...' >&2; \ + git archive --prefix=ruffle-$(VERSION)/ -o $(DEBIAN_ORIG_GZ) HEAD; \ + fi; \ + fi + rm -rf debian + cp -a $(DEBIAN_DIR) ./ + dpkg-buildpackage -us -uc diff --git a/desktop/packages/linux/debian/.gitignore b/desktop/packages/linux/debian/.gitignore new file mode 100644 index 000000000000..eef6191c9e74 --- /dev/null +++ b/desktop/packages/linux/debian/.gitignore @@ -0,0 +1,7 @@ +/*.substvars +/.debhelper/ +/debhelper-build-stamp +/files +/ruffle/ +/ruffle.debhelper.log +/tmp/ diff --git a/desktop/packages/linux/debian/changelog b/desktop/packages/linux/debian/changelog new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/desktop/packages/linux/debian/control b/desktop/packages/linux/debian/control new file mode 100644 index 000000000000..8a658b93e150 --- /dev/null +++ b/desktop/packages/linux/debian/control @@ -0,0 +1,36 @@ +Source: ruffle +Section: misc +Priority: optional +Maintainer: unknown +Rules-Requires-Root: no +Build-Depends: + debhelper-compat (= 13), + rustc (>= 1.86), + cargo (>= 1.86), + libasound2-dev, + libudev-dev, + jq, + nodejs, + librust-wasm-bindgen-dev, + default-jdk-headless, + binaryen, + libjxr-dev, +Standards-Version: 4.7.2 +Homepage: https://ruffle.rs/ +#Vcs-Browser: https://github.com/ruffle-rs/ruffle +#Vcs-Git: https://github.com/ruffle-rs/ruffle.git + +Package: ruffle-desktop +Architecture: any +Depends: + ${shlibs:Depends}, + ${misc:Depends}, +Description: A Flash Player emulator written in Rust + Ruffle is an Adobe Flash Player emulator written in the Rust programming + language. Ruffle targets both the desktop and the web using WebAssembly. + +Package: webext-ruffle-flash-emulator +Architecture: all +Description: A Flash Player emulator written in Rust (web extensions) + Ruffle is an Adobe Flash Player emulator written in the Rust programming + language. Ruffle targets both the desktop and the web using WebAssembly. diff --git a/desktop/packages/linux/debian/copyright b/desktop/packages/linux/debian/copyright new file mode 100644 index 000000000000..3f2b17789182 --- /dev/null +++ b/desktop/packages/linux/debian/copyright @@ -0,0 +1,55 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Source: https://github.com/ruffle-rs/ruffle +Upstream-Name: ruffle +Upstream-Contact: kjarosh + +Files: + * +Copyright: + 2021-2025 Aaron1011 + 2021-2025 Bale001 + 2016-2025 Herschel + 2023-2025 kjarosh + 2019-2024 kmeisthax + 2022-2025 n0samu + 2023-2025 sleepycatcoding + 2020-2025 Toad06 + 2020-2025 torokati44 +License: Apache-2.0 OR MIT + +License: Apache-2.0 + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + . + https://www.apache.org/licenses/LICENSE-2.0 + . + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + . + On Debian systems, the full text of the Apache Software License version 2 can + be found in the file `/usr/share/common-licenses/Apache-2.0'. + +License: MIT + Permission to use, copy, modify, and distribute this software and + its documentation for any purpose and without fee is hereby + granted, provided that the above copyright notice appear in all + copies and that both that copyright notice and this permission + notice appear in supporting documentation, and that the name of + Giampaolo Rodola' not be used in advertising or publicity pertaining to + distribution of the software without specific, written prior + permission. + . + ISSUER DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN + NO EVENT Giampaolo Rodola' BE LIABLE FOR ANY SPECIAL, INDIRECT OR + CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS + OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, + NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + diff --git a/desktop/packages/linux/debian/ruffle-desktop.install b/desktop/packages/linux/debian/ruffle-desktop.install new file mode 100644 index 000000000000..410b0cee5378 --- /dev/null +++ b/desktop/packages/linux/debian/ruffle-desktop.install @@ -0,0 +1,4 @@ +usr/bin/* +usr/share/applications/* +usr/share/icons/* +usr/share/metainfo/* diff --git a/desktop/packages/linux/debian/rules b/desktop/packages/linux/debian/rules new file mode 100755 index 000000000000..f3c3ca72c2fe --- /dev/null +++ b/desktop/packages/linux/debian/rules @@ -0,0 +1,22 @@ +#!/usr/bin/make -f + +# See debhelper(7) (uncomment to enable). +# Output every command that modifies files on the build system. +#export DH_VERBOSE = 1 + + +# See FEATURE AREAS in dpkg-buildflags(1). +#export DEB_BUILD_MAINT_OPTIONS = hardening=+all + +# See ENVIRONMENT in dpkg-buildflags(1). +# Package maintainers to append CFLAGS. +#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic +# Package maintainers to append LDFLAGS. +#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed + + +%: + dh $@ + +override_dh_auto_install: + dh_auto_install -- prefix=/usr diff --git a/desktop/packages/linux/debian/source/format b/desktop/packages/linux/debian/source/format new file mode 100644 index 000000000000..163aaf8d82b6 --- /dev/null +++ b/desktop/packages/linux/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/desktop/packages/linux/debian/webext-ruffle-flash-emulator.install b/desktop/packages/linux/debian/webext-ruffle-flash-emulator.install new file mode 100644 index 000000000000..69bd320502ee --- /dev/null +++ b/desktop/packages/linux/debian/webext-ruffle-flash-emulator.install @@ -0,0 +1,3 @@ +usr/share/chromium/* +usr/share/mozilla/* +usr/share/webext/*