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

Dates, owners, and permissions of things under /hpkg #59

Open
sogaiu opened this issue May 31, 2020 · 5 comments
Open

Dates, owners, and permissions of things under /hpkg #59

sogaiu opened this issue May 31, 2020 · 5 comments

Comments

@sogaiu
Copy link

sogaiu commented May 31, 2020

I just noticed the following:

drwxrwxr-x   2 hermes_build_user1 hermes_build_user1  4096 May 31 11:15  296a6c507f7ac465f6be97e9c6a4b1c13c6e1d9b-libarchive
dr-xr-xr-x   4 root               root                4096 May 22 00:47  2ae4ff78f20ccc13183ec9cfbd25b46e105224a5-sed

Here I guess the dates reflect the build. That doesn't really bother me much (actually it's convenient), but may be that's not good?

I'm guessing the owner and permission info of the first item is the result of an aborted build. Invoking hermes gc seemed to have gotten rid of all of the ones I noticed.

Typical symlinks to shared objects under /hpkg/<hash>-<name>/lib/ appear to have dates that reflect the build:The symlinks in

-r--r--r-- 1 root root   332992 Jan  1  1970 /hpkg/f196d2b0e050e8d6024485bd2fc75da54ddbb817-ncurses/lib/libpanel_g.a
lrwxrwxrwx 1 root root       13 May 24 09:39 /hpkg/f196d2b0e050e8d6024485bd2fc75da54ddbb817-ncurses/lib/libpanel.so -> libpanel.so.6

May be none of these things are problems, but FWIW.

@andrewchambers
Copy link
Owner

andrewchambers commented May 31, 2020

The aborted builds are as you said.

The symlink date not being cleared seems like something that should be fixed.

We can choose any date we want for the store date, Its currently just set to 0. 1970 is a bit ugly, we could choose another date.

@sogaiu
Copy link
Author

sogaiu commented May 31, 2020

Is date / time info preserved when build artifacts are transferred via send / recv? If date / time info varies between 2 builds of the same package definition then I guess the build artifacs won't look the same?

Or may be I'm misunderstanding something...

@andrewchambers
Copy link
Owner

andrewchambers commented May 31, 2020

Build times are wiped after build completes but before the package is added to the set of installed packages. send/recv sends packages that have been installed, so have times wiped.

It is a possibility for packages that don't specify :content to differ. In practice this doesn't affect much, but is part of the reason why package signing is needed.

@sogaiu
Copy link
Author

sogaiu commented May 31, 2020

I just checked under /hpkg here and there is only one directory that has a date of Jan 1 1970 (it's <hash>-rt). The > 250 remaining items all reflect dates within this month.

The content within these directories appears for the most part to have a date of Jan 1 1970.

I just checked on another machine and there is a similar situation there.

So may be because everything within the directory has the same date / time, it's fine -- the containing directory <hash>-<name> is not sent I guess?

@andrewchambers
Copy link
Owner

No matter how a package was installed, it's date should be wiped by the pkgstore/storify function. Seems like a bug.

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

2 participants