building a simple debian package

This commit is contained in:
Richard Ulrich 2023-01-20 17:14:22 +01:00
parent d1fcdeca3b
commit 7b7c6aa7fb
No known key found for this signature in database
GPG Key ID: B37F658367A845DC
6 changed files with 63 additions and 0 deletions

2
.dockerignore Normal file
View File

@ -0,0 +1,2 @@
/target
/contrib/*.deb

1
.gitignore vendored
View File

@ -1 +1,2 @@
/target
/contrib/*.deb

View File

@ -49,3 +49,10 @@ zeroize = "1.5"
opt-level = 3
debug-assertions = false
overflow-checks = false
[package.metadata.deb]
section = "web"
assets = [
["target/release/gossip", "/usr/bin/", "755"],
["contrib/gossip.desktop", "/usr/share/applications/gossip.desktop", "644"],
]

26
contrib/Dockerfile Normal file
View File

@ -0,0 +1,26 @@
FROM rust:1.65-bullseye as builder
RUN apt-get update \
&& apt-get install --no-install-recommends -y \
build-essential \
ca-certificates \
curl \
libfontconfig1-dev \
libssl-dev \
pkg-config \
sudo \
&& apt -y autoremove \
&& apt clean \
&& rm -rf /var/lib/apt/lists/*
RUN cargo install cargo-deb
# Build gossip
COPY ./ gossip/
WORKDIR gossip
RUN mkdir -p /gossip/artifacts
RUN cargo deb
RUN ls /gossip/target/debian/
FROM scratch as custom-exporter
COPY --from=builder /gossip/target/debian/gossip*_amd64.deb .

10
contrib/deb.sh Executable file
View File

@ -0,0 +1,10 @@
#!/usr/bin/env bash
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
cd $SCRIPT_DIR/..
DOCKER_BUILDKIT=1 \
docker build \
--output contrib \
-f contrib/Dockerfile \
.

17
contrib/gossip.desktop Normal file
View File

@ -0,0 +1,17 @@
[Desktop Entry]
Name=gossip
Version=1.0
Comment=Desktop client for Nostr
Exec=gossip
Icon=gossip
Type=Application
Categories=Network;InstantMessaging;
StartupWMClass=gossip
Terminal=false
MimeType=x-scheme-handler/nostr;
X-GNOME-UsesNotifications=false
# Allows finding Gossip using application launchers and software shops more easily
Keywords=Nostr
X-KDE-Keywords=Nostr
# to be listed properly in some stores
X-Purism-FormFactor=Workstation;Mobile;