Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installing data into /usr/local/share #19

Closed
nms-scribe opened this issue Oct 18, 2023 · 13 comments
Closed

Installing data into /usr/local/share #19

nms-scribe opened this issue Oct 18, 2023 · 13 comments

Comments

@nms-scribe
Copy link

nms-scribe commented Oct 18, 2023

My project includes some data (mostly sample files) which I would like my aur package to install into /usr/local/share/<appname>. Can cargo-aur be configured to include these files in the tar file in a way that they would be copied into the right place on install?

@nms-scribe nms-scribe changed the title Installing data into /usr/share Installing data into /usr/local/share Oct 18, 2023
@fosskers
Copy link
Owner

fosskers commented Oct 18, 2023

That's a reasonable request. Perhaps something like:

[package.metadata.aur]
files = [
  ["/path/to/original/file", "/absolute/path/to/desired/location"],
  # ... and so on ...
]

Any thoughts? Naturally at some point some complexity threshold is crossed and it becomes faster for everyone to just say "manage the PKGBUILD yourself", but in this case I think this could be implemented with little toil.

@nms-scribe
Copy link
Author

That would be the preferred configuration for me.

@nms-scribe
Copy link
Author

Since I wanted this soon and didn't want to bother you, I (forked your project)[https://github.com/nms-scribe/cargo-aur] to add that functionality. You're welcome to fetch the changes out of that if you haven't started working on your own. I don't know if I did it the way you would have done it.

Thanks for the useful tool.

@t3hmrman
Copy link

Would it make sense to also add some light templating, @fosskers ? I assume stuff like {app_name} and {version} should be usable from those strings, possibly even with package information like release date, etc. tinytemplate or full on askama could be good fits.

Also, if you'd like someone to try and take this on I'd be happy to (after looking at what @nms-scribe has started)

@fosskers
Copy link
Owner

@t3hmrman What sort of templating? Can you provide a sample [package.metadata.aur] that includes some of what you're imagining?

@nms-scribe I will add this feature as soon as I'm able.

@t3hmrman
Copy link

Hey @fosskers, using your example earlier -- I was thinking something like this:

files = [
  ["/path/to/config.example.toml", "/etc/{app_name}/{version}/config.example.toml"],
  # ... and so on ...
]

Maybe it's not necessary (package authors could just maintain every single version and grow the list), but planning for such a feature might be nice.

@fosskers
Copy link
Owner

fosskers commented Oct 24, 2023

Ah I see what you mean. Actually... if you wanted to be really clever, you could put PKBUILD bash-based placeholders in the target string yourself! Like /etc/$pkgname/$pkgver/.... cargo aur would just copy the target string as-is, and you'd get the best of both worlds I think.

@t3hmrman
Copy link

Ahh thanks! this makes sense -- so this would basically already be supported. thanks for making me aware of that!

@fosskers
Copy link
Owner

so this would basically already be supported

As soon as I implement the original feature itself, yeah.

@fosskers
Copy link
Owner

Update: I have this scheduled to work on in mid-December.

@fosskers
Copy link
Owner

fosskers commented Mar 5, 2024

@nms-scribe Can you take a look at #24 and see if it's comparable to what you implemented?

@nms-scribe
Copy link
Author

I'm not in a place where I can test it right now. Reviewing the code and docs, it looks fine.

There are some differences in implementation (for example, I hard-coded the $pkgbuild variable, and added a file-copy that I realize is probably not necessary), but I can change my project to work with the differences.

@fosskers
Copy link
Owner

fosskers commented Mar 7, 2024

Released as 1.7.0.

@fosskers fosskers closed this as completed Mar 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants