Skip to content

Commit 65301f6

Browse files
committed
packaging: generalize pkg/deb commands for reuse
Prepare for "cargo generate-rpm" by generalizing the profiles and steps performed when building debian packages.
1 parent d8f9b4f commit 65301f6

File tree

2 files changed

+31
-32
lines changed

2 files changed

+31
-32
lines changed

Cargo.toml

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ codegen-units = 1
128128
# This is the main way to strip binaries in the deb package created by
129129
# 'cargo deb'. For other release binaries, we (currently) call 'strip'
130130
# explicitly in the release process.
131-
[profile.deb]
131+
[profile.pkg]
132132
inherits = "release"
133133
debug = false
134134

@@ -140,19 +140,19 @@ assets = [
140140
["LICENSE", "usr/share/doc/garden/", "644"],
141141
["doc/src/changelog.md", "usr/share/doc/garden/CHANGELOG.md", "644"],
142142
["README.md", "usr/share/doc/garden/", "644"],
143-
["pkg/deb/userguide/*", "usr/share/doc/garden/userguide/", "644"],
144-
["pkg/deb/userguide/css/*", "usr/share/doc/garden/userguide/css/", "644"],
145-
["pkg/deb/userguide/examples/*", "usr/share/doc/garden/userguide/examples/", "644"],
146-
["pkg/deb/userguide/examples/command-interpreters/*", "usr/share/doc/garden/userguide/examples/command-interpreters/", "644"],
147-
["pkg/deb/userguide/examples/git-cola/*", "usr/share/doc/garden/userguide/examples/git-cola/", "644"],
148-
["pkg/deb/userguide/examples/node/*", "usr/share/doc/garden/userguide/examples/node/", "644"],
149-
["pkg/deb/userguide/examples/photo-restoration/*", "usr/share/doc/garden/userguide/examples/photo-restoration/", "644"],
150-
["pkg/deb/userguide/examples/python/*", "usr/share/doc/garden/userguide/examples/python/", "644"],
151-
["pkg/deb/userguide/FontAwesome/css/*", "usr/share/doc/garden/userguide/FontAwesome/css/", "644"],
152-
["pkg/deb/userguide/FontAwesome/fonts/*", "usr/share/doc/garden/userguide/FontAwesome/fonts/", "644"],
153-
["pkg/deb/completion/garden.bash", "usr/share/bash-completion/completions/garden", "644"],
154-
["pkg/deb/completion/garden.fish", "usr/share/fish/vendor_completions.d/garden.fish", "644"],
155-
["pkg/deb/completion/_garden", "usr/share/zsh/vendor-completions/", "644"],
143+
["pkg/userguide/*", "usr/share/doc/garden/userguide/", "644"],
144+
["pkg/userguide/css/*", "usr/share/doc/garden/userguide/css/", "644"],
145+
["pkg/userguide/examples/*", "usr/share/doc/garden/userguide/examples/", "644"],
146+
["pkg/userguide/examples/command-interpreters/*", "usr/share/doc/garden/userguide/examples/command-interpreters/", "644"],
147+
["pkg/userguide/examples/git-cola/*", "usr/share/doc/garden/userguide/examples/git-cola/", "644"],
148+
["pkg/userguide/examples/node/*", "usr/share/doc/garden/userguide/examples/node/", "644"],
149+
["pkg/userguide/examples/photo-restoration/*", "usr/share/doc/garden/userguide/examples/photo-restoration/", "644"],
150+
["pkg/userguide/examples/python/*", "usr/share/doc/garden/userguide/examples/python/", "644"],
151+
["pkg/userguide/FontAwesome/css/*", "usr/share/doc/garden/userguide/FontAwesome/css/", "644"],
152+
["pkg/userguide/FontAwesome/fonts/*", "usr/share/doc/garden/userguide/FontAwesome/fonts/", "644"],
153+
["pkg/completion/garden.bash", "usr/share/bash-completion/completions/garden", "644"],
154+
["pkg/completion/garden.fish", "usr/share/fish/vendor_completions.d/garden.fish", "644"],
155+
["pkg/completion/_garden", "usr/share/zsh/vendor-completions/", "644"],
156156
]
157157
extended-description = """\
158158
Garden helps you define development workflows that operate over collections of

garden.yaml

Lines changed: 17 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,7 @@ variables:
1414
docdir: ${prefix}/share/doc/garden
1515
target-core: x86_64-unknown-linux-musl
1616
target-gui: x86_64-unknown-linux-gnu
17-
pkg: ${GARDEN_CONFIG_DIR}/pkg
18-
debdir: ${pkg}/deb
17+
pkgdir: ${GARDEN_CONFIG_DIR}/pkg
1918
fetch: ""
2019
disable-fetch: $ test -n "${fetch}" || printf '%s' --disable-fetch
2120
graph: ""
@@ -73,23 +72,23 @@ commands:
7372
mkdir -p "${DESTDIR}${docdir}"
7473
rsync -r --exclude=.git doc/book/ "${DESTDIR}${docdir}/"
7574
pkg/deb>:
76-
- pkg/deb/build
77-
- pkg/deb/completion
78-
- pkg/deb/doc
79-
- pkg/deb/package
80-
pkg/deb/build: |
81-
cargo build --profile deb --target "${target-core}"
82-
cargo build --profile deb --target "${target-gui}" --package garden-gui
83-
pkg/deb/completion: |
84-
mkdir -p "${debdir}/completion"
85-
"$0" completion bash >"${debdir}/completion/garden.bash"
86-
"$0" completion fish >"${debdir}/completion/garden.fish"
87-
"$0" completion zsh >"${debdir}/completion/_garden"
88-
pkg/deb/doc: mdbook build --dest-dir "${debdir}/userguide" doc
89-
pkg/deb/package: |
75+
- pkg/build
76+
- pkg/completion
77+
- pkg/doc
78+
- pkg/gen/deb
79+
pkg/build: |
80+
cargo build --profile pkg --target "${target-core}"
81+
cargo build --profile pkg --target "${target-gui}" --package garden-gui
82+
pkg/completion: |
83+
mkdir -p "${pkgdir}/completion"
84+
"$0" completion bash >"${pkgdir}/completion/garden.bash"
85+
"$0" completion fish >"${pkgdir}/completion/garden.fish"
86+
"$0" completion zsh >"${pkgdir}/completion/_garden"
87+
pkg/doc: mdbook build --dest-dir "${pkgdir}/userguide" doc
88+
pkg/gen/deb: |
9089
mkdir -p target/debian
91-
cargo deb --profile deb --target "${target-core}" --output target/debian
92-
cargo deb --profile deb --target "${target-gui}" --manifest-path gui/Cargo.toml --output target/debian
90+
cargo deb --profile pkg --target "${target-core}" --output target/debian
91+
cargo deb --profile pkg --target "${target-gui}" --manifest-path gui/Cargo.toml --output target/debian
9392
publish: |
9493
cargo publish --package garden-tools "$@"
9594
cargo publish --package garden-gui "$@"

0 commit comments

Comments
 (0)