3 Commits

Author SHA1 Message Date
47dc685ffb Rediff patches
Add 0003-Use-mini-as-release-profile.patch: <REASON>
Add 0001-Alter-blake3-to-emit-Built-Using-info.patch: <REASON>
Add 0002-Use-pure-Rust-implementation-of-Blake3-parts.patch: <REASON>
2025-09-28 12:58:43 -05:00
736f7ab260 Add missing build-depends 2025-09-28 12:55:15 -05:00
2d5830d3bc Begin package for Debian Trixie 2025-09-28 12:46:23 -05:00
10 changed files with 215 additions and 0 deletions

5
debian/changelog vendored Normal file
View File

@@ -0,0 +1,5 @@
another-boids-in-rust (0.3.0-1) UNRELEASED; urgency=medium
* TODO: Regenerate the changelog from Git history
-- Robert Garrett <robertgarrett404@gmail.com> Sat, 27 Sep 2025 10:33:04 -0500

24
debian/control vendored Normal file
View File

@@ -0,0 +1,24 @@
Source: another-boids-in-rust
Maintainer: Robert Garrett <robertgarrett404@gmail.com>
Section: misc
Priority: optional
Standards-Version: 4.6.2
Build-Depends:
debhelper-compat (= 13),
dh-cargo,
pkg-config,
libasound2-dev,
libudev-dev,
Homepage: https://git.gelvin.dev/robert/boids
Vcs-Git: https://git.gelvin.dev/robert/boids
Vcs-Browser: https://git.gelvin.dev/robert/boids
Rules-Requires-Root: no
Package: another-boids-in-rust
Architecture: any
Depends:
${misc:Depends},
${shlibs:Depends},
Description: Another Boids implementation in Rust.
Boids is a flocking algorithm. This one is built in Rust using the Bevy game
engine.

26
debian/copyright vendored Normal file
View File

@@ -0,0 +1,26 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: boids
Upstream-Contact: Robert Garrett <robertgarrett404@gmail.com>
Source: https://git.gelvin.dev/robert/boids
Files: *
Copyright: 2025 Robert Garrett <robertgarrett404@gmail.com>
License: GPL-3+
License: GPL-3+
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
.
It is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
License for more details.
.
You should have received a copy of the GNU General Public License
along with it. If not, see <http://www.gnu.org/licenses/>.
.
On Debian systems, the full text of the GNU General Public License version 3
can be found in the file /usr/share/common-licenses/GPL-3.

6
debian/gbp.conf vendored Normal file
View File

@@ -0,0 +1,6 @@
[DEFAULT]
compression = xz
compression-level = 9
upstream-tag = v%(version)s
debian-branch = deb/trixie

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,28 @@
From: Robert Garrett <robertgarrett404@gmail.com>
Date: Fri, 26 Sep 2025 11:02:04 -0500
Subject: Use pure Rust implementation of Blake3 parts
I can't figure out how to get Debian's build system to tell the blake3
crate what CPU features are available. It's possible the answer is that
I'm not supposed to, or that I simply do not.
Rather than figure it out, I'll just avoid the question by not using
C, C++, or assembly through the conditional compilation systems.
---
Cargo.toml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/Cargo.toml b/Cargo.toml
index fe0a0c2..60dd621 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -6,6 +6,9 @@ edition = "2024"
[dependencies]
bevy = "0.16.0"
+# Use pure-Rust impl. to dodge problems with CPU feature set availability.
+blake3 = { version = "1.8.2", features = ["pure"] }
+
# Grand-dependency pins
# ab_glyph = "0.2.16"
# fnv = "1.0.6"

View File

@@ -0,0 +1,25 @@
From: Robert Garrett <robertgarrett404@gmail.com>
Date: Sat, 27 Sep 2025 22:01:16 -0500
Subject: Use "mini" as "release" profile
---
Cargo.toml | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/Cargo.toml b/Cargo.toml
index 60dd621..c7bcf17 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -36,8 +36,11 @@ opt-level = 1
opt-level = 3
[profile.release]
-# codegen-units = 1
lto = "fat"
+opt-level = "z"
+codegen-units = 1
+strip = "symbols"
+panic = "abort"
[profile.mini]
inherits = "release"

3
debian/patches/series vendored Normal file
View File

@@ -0,0 +1,3 @@
0001-Alter-blake3-to-emit-Built-Using-info.patch
0002-Use-pure-Rust-implementation-of-Blake3-parts.patch
0003-Use-mini-as-release-profile.patch

27
debian/rules vendored Executable file
View File

@@ -0,0 +1,27 @@
#!/usr/bin/make -f
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/default.mk
include /usr/share/rustc/architecture.mk
export DEB_HOST_RUST_TYPE
export PATH:=/usr/share/cargo/bin:$(PATH)
export CARGO=/usr/share/cargo/bin/cargo
export CARGO_HOME=$(CURDIR)/debian/cargo_home
export CARGO_REGISTRY=$(CURDIR)/debian/cargo_registry
export DEB_CARGO_CRATE=$(DEB_SOURCE)_$(DEB_VERSION_UPSTREAM)
%:
dh $@ --buildsystem=cargo
execute_after_dh_auto_clean:
$(CARGO) clean
rm -rf $(CARGO_HOME)
rm -rf $(CARGO_REGISTRY)
rm -f debian/cargo-checksum.json
execute_before_dh_auto_configure:
$(CARGO) prepare-debian $(CARGO_REGISTRY) --link-from-system
rm -f Cargo.lock
touch debian/cargo-checksum.json

1
debian/source/format vendored Normal file
View File

@@ -0,0 +1 @@
3.0 (quilt)