remove ledgerlive container and add appimage to host OS

This commit is contained in:
Anders Rytter Hansen 2024-01-07 17:25:58 +01:00
commit fe8bcc188b
15 changed files with 23 additions and 283 deletions

View file

@ -1,133 +0,0 @@
name: ledgerlive
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
on:
schedule:
- cron: '0 6 * * 6' # 6 am on Saturdays
push:
paths:
- 'containers/cachyos/ledgerlive/**'
env:
# Use docker.io for Docker Hub if empty
REGISTRY: ghcr.io
# github.repository as <account>/<repo>
IMAGE_NAME: ${{ github.repository_owner }}/containers/cachyos/ledgerlive
IMAGE_REGISTRY: ghcr.io/${{ github.repository_owner }}
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
# This is used to complete the identity challenge
# with sigstore/fulcio when running outside of PRs.
id-token: write
steps:
- name: Maximize build space
uses: AdityaGarg8/remove-unwanted-software@v1
with:
remove-dotnet: 'true'
remove-android: 'true'
remove-haskell: 'true'
- name: Get current date
id: date
run: echo "::set-output name=date::$(date +'%Y%m%d')"
- name: Test with environment variables
run: echo $DATE
env:
DATE: ${{ steps.date.outputs.date }}
- name: Checkout repository
uses: actions/checkout@v3
# Install the cosign tool except on PR
# https://github.com/sigstore/cosign-installer
- name: Install cosign
if: github.event_name != 'pull_request'
uses: sigstore/cosign-installer@6e04d228eb30da1757ee4e1dd75a0ec73a653e06 #v3.1.1
with:
cosign-release: 'v2.1.1'
# Login against a Docker registry except on PR
# https://github.com/docker/login-action
- name: Log into registry ${{ env.REGISTRY }}
if: github.event_name != 'pull_request'
uses: docker/login-action@28218f9b04b4f3f62068d7b6ce6ca5b26e35336c
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
# Extract metadata (tags, labels) for Docker
# https://github.com/docker/metadata-action
- name: Extract Docker metadata
id: meta
uses: docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
# Build image using Buildah action
- name: Build Image
id: build_image
uses: redhat-actions/buildah-build@v2
with:
containerfiles: |
./containers/cachyos/ledgerlive/Dockerfile
image: ${{ env.IMAGE_NAME }}
tags: ${{ steps.meta.outputs.tags }} ${{ steps.meta.outputs.tags }}.${{ steps.date.outputs.date }}
oci: false
layers: false
# Workaround bug where capital letters in your GitHub username make it impossible to push to GHCR.
# https://github.com/macbre/push-to-ghcr/issues/12
- name: Lowercase Registry
id: registry_case
uses: ASzc/change-string-case-action@v5
with:
string: ${{ env.IMAGE_REGISTRY }}
# Push the image to GHCR (Image Registry)
- name: Push To GHCR
uses: redhat-actions/push-to-registry@v2
id: push
if: github.event_name != 'pull_request'
env:
REGISTRY_USER: ${{ github.actor }}
REGISTRY_PASSWORD: ${{ github.token }}
with:
image: ${{ steps.build_image.outputs.image }}
tags: ${{ steps.build_image.outputs.tags }}
registry: ${{ steps.registry_case.outputs.lowercase }}
username: ${{ env.REGISTRY_USER }}
password: ${{ env.REGISTRY_PASSWORD }}
extra-args: |
--disable-content-trust
# Sign the resulting Docker image digest except on PRs.
# This will only write to the public Rekor transparency log when the Docker
# repository is public to avoid leaking data. If you would like to publish
# transparency data even for private images, pass --force to cosign below.
# https://github.com/sigstore/cosign
- name: Sign the published Docker image
if: ${{ github.event_name != 'pull_request' }}
env:
# https://docs.github.com/en/actions/security-guides/security-hardening-for-github-actions#using-an-intermediate-environment-variable
TAGS: ${{ steps.meta.outputs.tags }}
DIGEST: ${{ steps.push.outputs.digest }}
# This step uses the identity token to provision an ephemeral certificate
# against the sigstore community Fulcio instance.
run: echo "${TAGS}" | xargs -I {} cosign sign --yes {}@${DIGEST}

View file

@ -51,6 +51,9 @@ RUN rpm-ostree install haruna
# software to be replaced with clang version
RUN rpm-ostree override replace --experimental --from repo=fedora-clang podman tar kpipewire NetworkManager-libnm NetworkManager NetworkManager-vpnc NetworkManager-wwan NetworkManager-wifi NetworkManager-ppp NetworkManager-bluetooth NetworkManager-config-connectivity-fedora wayland-utils xz xz-libs gzip bzip2-libs bzip2 libzip firefox firefox-langpacks libarchive rsync libva dbus-broker dbus-glib wget dbusmenu-qt
# Get latest Ledger Live AppImage
RUN wget https://download.live.ledger.com/latest/linux -O /usr/bin/ledgerlive && chmod +x /usr/bin/ledgerlive
# Copy config files
COPY etc /etc
# Copy /usr

View file

@ -1,19 +0,0 @@
FROM ghcr.io/andersrh/containers/cachyos/base-gui:main
WORKDIR /app
COPY containers/cachyos/ledgerlive/ledger-live-bin /app/ledger-live-bin
COPY containers/cachyos/ledgerlive/ledger-udev /app/ledger-udev
RUN chown -R build /app
USER build
RUN cd ledger-udev \
&& makepkg -si --noconfirm
RUN cd ledger-live-bin \
&& makepkg -si --noconfirm \
&& rm -rf /app/*
USER root

View file

@ -1,17 +0,0 @@
pkgbase = ledger-live-bin
pkgdesc = Maintain your Ledger devices
pkgver = 2.69.0
pkgrel = 1
url = https://www.ledger.com/ledger-live
arch = x86_64
license = MIT
depends = ledger-udev
provides = ledger-live
conflicts = ledger-live
options = !strip
source = ledger-live-desktop-2.69.0-linux-x86_64.AppImage::https://download.live.ledger.com/ledger-live-desktop-2.69.0-linux-x86_64.AppImage
source = LICENSE::https://raw.githubusercontent.com/LedgerHQ/ledger-live/%40ledgerhq/live-desktop%402.69.0/apps/ledger-live-desktop/LICENSE
sha512sums = 914a783be7f542113362d7ae45d6d27973447e3f2d04771dd3dc8167f69abebb3a2753e8db7cef6584ff94cc2d65876b2e7c57904024e4415688025274240b40
sha512sums = 915edd51fe7732af57f5a4ca8f4c61c4f435de6357e34ed0733cac8d950d80b3a9e513deac0a3672a07f38ff871a57032a221b3aa27edae8e42cc00586fe3318
pkgname = ledger-live-bin

View file

@ -1,58 +0,0 @@
# Maintainer: Serge K <arch@phnx47.net>
# Contributor: Stephen Argent <steve [at] tuxcon [dot] com>
# For Issues, Pull Requests
# https://github.com/phnx47/pkgbuilds
_pkgbin=ledger-live-desktop
_pkgname=ledger-live
pkgname="${_pkgname}-bin"
pkgdesc='Maintain your Ledger devices'
license=('MIT')
url='https://www.ledger.com/ledger-live'
pkgver=2.71.1
pkgrel=1
arch=('x86_64')
depends=('ledger-udev')
options=(!strip)
provides=("${_pkgname}")
conflicts=("${_pkgname}")
_appimg="ledger-live-desktop-linux-${arch[0]}.AppImage"
source=("${_appimg}::https://download.live.ledger.com/latest/linux"
"LICENSE::https://raw.githubusercontent.com/LedgerHQ/ledger-live/%40ledgerhq/live-desktop%40${pkgver}/apps/ledger-live-desktop/LICENSE")
sha512sums=('SKIP'
'915edd51fe7732af57f5a4ca8f4c61c4f435de6357e34ed0733cac8d950d80b3a9e513deac0a3672a07f38ff871a57032a221b3aa27edae8e42cc00586fe3318')
prepare() {
# Extract files
chmod +x "${_appimg}"
"./${_appimg}" --appimage-extract
cd squashfs-root
# Correct .desktop
sed -e "s/AppRun --no-sandbox/${_pkgbin}/g" -i "${_pkgbin}.desktop"
sed -e "/X-AppImage-Version/d" -i "${_pkgbin}.desktop"
# Remove unnecessary files
rm "AppRun" "resources/app-update.yml"
}
package() {
install -d "${pkgdir}/opt/${_pkgname}"
cp -a "squashfs-root/." "${pkgdir}/opt/${_pkgname}/"
install -d "${pkgdir}/usr/bin"
ln -s "/opt/${_pkgname}/${_pkgbin}" "${pkgdir}/usr/bin/${_pkgbin}"
install -d "${pkgdir}/usr/share/applications"
ln -s "/opt/${_pkgname}/${_pkgbin}.desktop" "${pkgdir}/usr/share/applications/${_pkgbin}.desktop"
for i in 128 256 512 1024; do
install -d "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps"
ln -s "/opt/${_pkgname}/usr/share/icons/hicolor/${i}x${i}/apps/${_pkgbin}.png" "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/${_pkgbin}.png"
done
find "${pkgdir}" -type d -exec chmod 755 {} +
install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}

View file

@ -1,13 +0,0 @@
pkgbase = ledger-udev
pkgdesc = Udev rules to connect a ledger wallet to your linux box
pkgver = 1
pkgrel = 8
url = https://www.ledgerwallet.com
install = ledger-udev.install
arch = any
license = Apache
depends = udev
source = https://raw.githubusercontent.com/LedgerHQ/udev-rules/master/20-hw1.rules
sha256sums = e6d262beeb5ce40804ad90ce99716617e3fe046afa85a7b8c24e83362b653221
pkgname = ledger-udev

View file

@ -1,18 +0,0 @@
# Maintainer: Josh Ellithorpe <quest@mac.com>
pkgname=ledger-udev
pkgver=1
pkgrel=8
pkgdesc='Udev rules to connect a ledger wallet to your linux box'
arch=(any)
url='https://www.ledgerwallet.com'
license=(Apache)
depends=(udev)
install='ledger-udev.install'
source=(https://raw.githubusercontent.com/LedgerHQ/udev-rules/master/20-hw1.rules)
sha256sums=('e6d262beeb5ce40804ad90ce99716617e3fe046afa85a7b8c24e83362b653221')
package() {
install -Dm 644 20-hw1.rules "$pkgdir"/usr/lib/udev/rules.d/20-hw1.rules
}

View file

@ -1,12 +0,0 @@
post_install() {
udevadm trigger
udevadm control --reload-rules
}
post_upgrade() {
post_install
}
post_remove() {
post_install
}

View file

@ -31,17 +31,6 @@ root=false
replace=false
home="~/containers/tradingview"
[ledgerlive]
image=ghcr.io/andersrh/containers/cachyos/ledgerlive:main
#additional_packages=" "
#export="app tradingview"
init=false
#nvidia=true
pull=true
root=false
replace=false
home="~/containers/ledgerlive"
[lbry]
image=ghcr.io/andersrh/containers/cachyos/lbry:main
init=false

View file

@ -3,7 +3,6 @@
podman rm -f general-cachyos
podman rm -f tradingview
podman rm -f general
podman rm -f ledgerlive
podman rm -f development
podman rm -f lbry
podman rm -f electron-cash
@ -14,7 +13,6 @@ podman pull ghcr.io/andersrh/containers/fedora-toolbox/general:main
distrobox create -i ghcr.io/andersrh/containers/fedora-toolbox/general:main --home ~/containers/general -n general
distrobox enter tradingview -- distrobox-export --app tradingview --extra-flags "--enable-features=WaylandWindowDecorations --ozone-platform=wayland"
distrobox enter ledgerlive -- distrobox-export --app ledger-live-desktop --extra-flags "--enable-features=WaylandWindowDecorations --ozone-platform=wayland"
distrobox enter general -- distrobox-export --app x2goclient
distrobox enter development -- distrobox-export --app qtcreator

View file

@ -0,0 +1,20 @@
[Desktop Entry]
Categories=Finance;
Comment[da_DK]=Ledger Live - Desktop
Comment=Ledger Live - Desktop
Exec=ledgerlive --enable-features=WaylandWindowDecorations --ozone-platform=wayland %U
GenericName[da_DK]=
GenericName=
Icon=ledger-live-desktop
MimeType=
Name[da_DK]=Ledger Live
Name=Ledger Live
Path=
StartupNotify=true
StartupWMClass=Ledger Live
Terminal=false
TerminalOptions=
Type=Application
X-KDE-RunOnDiscreteGpu=false
X-KDE-SubstituteUID=false
X-KDE-Username=

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB