-
Notifications
You must be signed in to change notification settings - Fork 4
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
Will pacote
be an exact reimplementation of Sun's package management system?
#12
Comments
Pardon for the delay, I'm somewhat busy on the main part of Copacabana.
I mean, almost. We want to have something that follows what is specified on Sun's specification, but without rendezvousing with errors made in the past and also implementing new features that would be nice to have --- such, for example, outputting JSON in
Of course we can add a target for this in the makefile, if it's simple to implement.
I appreciate that, really. 🥲 |
This is an excellent decision. I think we could take some inspiration from the manpages of Unix 10th edition, Plan9's/Inferno's and OpenBSD's. OpenBSD's always have a section called "STANDARDS", which specifies to which standards the implementation/program adheres and where it deviates from them. Plan9's always have a "SOURCE" section, indicating where one can see the source code of the program, it usually lists where the program sits in the Inferno manpages more often than not contain a section called "FILES" where they list what files the program accesses and for which purposes, that includes device nodes, file types (since its plan9 and everything is a file or a file system [a file too]), it also indicates if the file is volatile or not. Just really insightful stuff. Unix's 10th edition manual has a concise "BUGS" section, sometime also included in Plan9's manpages, they usually cover "BUGS" that won't be fixed due to them being very, very edge-cases, and when fixing those bugs probably adds new ones due to adding a lot more complexity to the program. I think that's also great to have in a manpage, sincerity from the devs. |
I think these would relate more to manual pages, I'm talking about developer documentation, or the so-called "tabulas". |
Yes, however, its just that having it is nice, even if your system can be thicker, why waste +0.2megs for each ELF file header+Go metadata that goes along with them? Access times are faster if you aren't reading different files all the time, and your PC can cache things nicely this way. |
Ahh, yes... Forgot the issue is in the |
Didn't knew that, neat. Yes, we can do that. |
I think the "tabulas" of each project can be on the respective repositories, the Silicon-Tabula repository will only collect the subrepos and have a recipe to build them as a site. |
In other words, no problem to talk about documentation here. |
Unrelated, but I think the repo names should be descriptive of what they contain when you're working in an "organization" and not signed in like a user. I think that makes it easier for people to modify the distro, re-compile it, etc. |
I thought the description should address this. |
I think the WWW repos could be divided into: |
That also means that the WWW repo could have the WWW-docs and WWW-extend repos as submodules, instead of manually having to go through each, compile/export to HTML and then reunite it all back again. |
That's a great plan --- principally for |
Yes, exactly, I think it would help with development, you won't have people opening issues all the time about programs that don't work because with the "bug database" we could give clear instructions on what to patch and where, or why the issue happens and how to workaround it, etc. Think this would make it easier both for you and for anyone trying out the distro (once we get to an alpha release state) Also, what do you mean with: "can I apply later?", I didn't get that... |
Back here again. |
Lines 66 to 67 in 485683c
If I got it right from the documentation, assigning a new path to a filename and/or a path on the package means that
Source: the specification from February 2000 Eh... Maybe |
Yes, assigning a new path to a filename or path in the package means that pkgadd will create these objects at the new path during installation. But it doesn't mean that they will be copied, the prototype file, as it says, can specify files that aren't shipped within the package itself, for example, if your program creates some files in /usr/share, they have to be specified in the prototype for them to be removed, that's why the prototype file specifies files which may not be contained within the package file. |
Thanks for the explanation. I thought it copied because of the example given, which proposes that an empty file can be created with |
We can take some of Sun's code as reference and have a notion of how pkgproto is meant to operate, besides the documentation: The only problem is that this code "smells like naphthalene", like we use to say here in Brazil, and is far less modular than pacote's code, but I think we can confirm some ideas with it. |
I think this may be a better reference, there's also the manpage there. |
I mean, funnily enough, there's an undocumented option on Solaris 8 implementation. |
Hi, I'm interested in helping out with
pacote
. Does it have to be an exact match of Sun's package management suite/system? I'm planning to write one anyways for my toy/very-w.i.p distro (Andes). And I'm also gonna be rewritingbigdl
(probably).I was thinking, that, if its all crafted in Go, we could use https://github.com/u-root/gobusybox to save space, and have the package manager be a single binary, that is then symlinked to installf, pkgadd, and so on.
Anyways, I really really want to contribute, because I'm excited for this project. I've been pursuing the Unix feel but the comfort of Linux for way too long, and never have I seen a serious project doing exactly that. Alpine is great, but they're not striving for that, and the docs and community are not really approachable. I think what you're doing is amazing, and want to help out any way possible to get to a usable version as soon as possible.
The text was updated successfully, but these errors were encountered: