AppImage / AppImage/AppImageKit

appimage-extract(-and-run) don't preserve file timestamps

Ouverte
#1,151 6 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Aucune donnée de langage
Étoiles
9.4k
Forks
588
Métriques de merge des PR
Métriques de PR en attente

Description

I wanted to fix this issue myself, seemed easy enough. Probably in `runtime.c` where this line is:

```c
chmod(prefixed_path_to_extract, st.st_mode);
```

Don't just apply permissions but also timestamps. However, since AppImageKit doesn't seem to be able to be compiled on modern systems, I can't add this myself.

As for why:

Not restoring timestamps breaks code that checks cache validity through timestamps. For example in one of my applications that I ship as an AppImage, I bundle LibVLC and its plugins into the AppImage. Before the creation of the image, I generate the `usr/lib/vlc/plugins/plugins.dat` file. This speeds up VLC plugin loading. However, if the timestamps of the plugins changes, which happens when running the AppImage with `--appimage-extract-and-run`, LibVLC prints countless error messages about every plugin. One example:

> main libvlc error: stale plugins cache: modified /tmp/appimage_extracted_1e2e0dbe8053a3543648ca6c3c5a71fb/usr/lib/vlc/plugins/packetizer/libpacketizer_h264_plugin.so

As a result, the cache isn't used at all. This is not the end of the world, since it's a soft error, but still it would be nice if timestamps were preserved when extracting.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.