This is because the flatpak fetches a recent got version of lensfun and explicitly includes recent versions of the lensfun profiles.
I think you just fetch whatever the snap server has, I donât think the snap gets built on device, but Iâm not 100% sure on that.
Can you just try and invoke the lensfun update command from the snap?
Iâll have to do that this evening. Work getting in the way of fun
It still seems like a regression to me. Data was lost in the upgrade. Would like to know if itâs only me or a wider issue.
In that build process if there is updated lensfun data it copies updated data into the user file path DB location. That could only happen if itâs built on device?
I guess it depends on the possiblity of custom install locations. Also not sure how it works in the background!
After going through the thread, I take it you downloaded a snap and installed it, and it gave you the situation originally described. You did not build the snap from scratch⌠??
If the above is the case, you got a lensfun database that was current at the time the snap integrator built the snap. The snapcraft.yaml file you reference is used to build the snap, and is not used by any âinstallâ of the snap on a computer. @paperdigits is more familiar with this IIRC, correct me if Iâm wrongâŚ
While lensfun as a library is quite stable, as a database it is being updated very frequently, 2 hours ago ( [added Voigtlander Color Skopar 20mm F3.5 SLII As0h: #afcf1c) at this writing. The nature of such requires the user to update their local copy of the database as the only sure way to make sure all supported cameras and lenses are available in the software.
In the build process, if the build machine had the lensfun-update-data
command run, then youâd get newer profiles. If not, then you get some pretty old profiles.
Yes I downloaded a snap and installed it. I didnât build anything. (Not sure if the ubuntu software package does any building when install/upgrading a snap)
The issue was a regression in the sense that data from the darktable build of 3.8.1 was lost when upgrading to 4.0.1. That doesnât seem like a case of missing the latest camera data.
I used Darktable without issue in 3.8.1 and only found the issue above after upgrading to 4.0.1.
I can confirm that the lensfun database is not the most recent in the Snap build (4.0.1) of darktable. On my Ubuntu 22.10 machine, my lens was not found in the Snap build, but it was correctly found in the Flatpak 4.0.1 build.
(Lens = Nikon, NIKKOR AF-S 200-500mm f/5.6E ED VR)
Seems like a bug in however the darktable snap was built.
By the way, thanks to all the darktable devs for a great product!
The flatpak build specifically pulls and builds a newer version of the lensfun profiles, then includes them. The snap doesnât, and includes the profiles from the time of release. Its a bit behind.
Has anyone found a simple way to get a snap install to use the updated version of lensfun. I have a regular install of darktable 4.0 that finds my nikon 200-500 for lens correction but the snap version of 4.2 doesnât find it and running the lensfun update isnât updating the snap version?
No, the snap will need to do something similar to the flatpak. The flatpak has very recent lens profiles.
So if I download https://github.com/lensfun/lensfun/blob/master/data/db/mil-nikon.xml where can I put it, so that Darktable finds it?
Snap is on a read-only filesystem âŚ
(The problem is the same on Kubuntu 22_04: no Nikon Zâs)
You canât put it anywhere⌠The snap is sandboxes and read only so you wonât be able.to change it. This is a packaging issue for the snap.
The flatpak has more up to date lens definitions.
Just checked the github repo, the Z 5 was added on Oct 18, 2020.
Distros can be way behind, so its important to run lensfun-update-data to pull the latest database.
Never mind, wrong questionâŚ
This canât be done for the snap package.
This is a packaging issue for the snap.
Is the snap library hard-coded to the snap database? If not, can the database be put in one of the standard locations?
Yes it is hard coded to the location inside the snap. The sandboxed nature of the snap doesnât allow that location to change or to access things outside the sandbox.
Thanks.
So flatpak is the answer.
It is one of several answers, yes.