Incubation Request: kio-afp

Daniel Markstedt <[email protected]> Sat, 21 Mar 2026 17:49:31 +0000
Newsgroups gmane.comp.kde.devel.general
Message-ID <dD7TSCcON5kaVUQq80ZR5unZSATuidYiAb3v0BddEIzdbrc_-dZeKmLMWUZoHE9XX2rzstVh65YtVkDHZtUkN27HctmFUQMTaS3tKX6AA8E=@mindani.net>
To whom it may concern:

I was directed to file this incubation request from the kind guidance by Méven Car, so here goes:


https://invent.kde.org/dmark/kio-afp/-/issues/1



kio-afp is a KIO worker for the AFP protocol, allowing Dolphin and Konqueror to seamlessly browser remote AFP volumes. AFP is a file sharing / network file system protocol developed by Apple for the very first Macintosh through macOS 26 Tahoe, and subsequently implemented by a range of free and open source (and commercial) server and client applications. It has a dedicated user base thanks to fast file transfer and enumeration speeds compared to rival file sharing protocols, as well as for its deep interoperability / backwards compatibility with the latest macOS as well as 40 year old networked Apple machines.


I started this project in December of 2025, and I consider it usable and stable at this point.
It is a thin wrapper for libafpclient (part of afpfs-ng) so the heavy lifting is done by that library, which is why the KIO worker is only ~1000 lines.
You can see some screenshots of the worker in action at:
https://invent.kde.org/network/kio-zeroconf/-/merge_requests/9


Of historical curiosity, kio-afp was inspired by kioslave_afp created by Alex DeVries in 2008 for KDE3, which never exited alpha stage.


I wrote all of the current code and am the primary maintainer, while my collaborator Andy Lemin is looking into adding thumbnail support now.


Please let me know if you have any questions or concerns.


Sincerely,


Daniel Markstedt
publickey - [email protected] - 0x3C47642E.asc (application/pgp-keys, 3.1 KB)
-----BEGIN PGP PUBLIC KEY BLOCK-----

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
xaikqlKjPg==
=Dygw
-----END PGP PUBLIC KEY BLOCK-----
signature.asc (application/pgp-signature, 949 B)
-----BEGIN PGP SIGNATURE-----
Version: ProtonMail

wsG5BAEBCgBtBYJpvtodCRAjNVkqH/G22kUUAAAAAAAcACBzYWx0QG5vdGF0
aW9ucy5vcGVucGdwanMub3JngSMchn/yAQARPd4bkibvsac5s0x59fjUUVZQ
qV0LkekWIQQ8R2QuR24bF6VrehEjNVkqH/G22gAAYSUQAK1o8aFkQqYwKodg
VMa3MEn9C8EzbKcQWEuvpjEFf/5pnq5CZfiHDpICxBQIK0aytIz2mpGSK53x
M1gS9YxcEZE+8bL0sIL/SF8dkvICl7NIv3tHqCE/78mhArEpeOPTFsZ/8vqP
HKBsCpWuyPzlfWFuxeeehdZfhmcNvJkpAHTMNsmXptV8TI3qAL0OIQMlwctI
wAt9bXlYzP3XzXs2fAZMuE+3jXpRPzXiGglUbFO1tmIn0VEhhNw987jL4aYF
GBDinw6aOYGMExxFap20NguzZJDsUnUVDvYbygNm/m+lBnR/OeNksXb2T2n+
n2MmVUqTcytsj4roLhJen57jaQFPsYBQAiZQVE+Yf7NoGgLcnXXc+V4Wc3Of
clj+NttZkpQFglftUZCAjuhofFtQQoBIzYXekjoOFWFg+NqsU1auxJdElJfj
y9h/NTolhoLtCOO1E75ud/2jOq3c14mbCAM1to4RVbB82r/pAiGxWApJXAnG
sNAHTNVPxkvwTY9TO9WIv7Y2DZlUKSsxwrWj921H4sjqn9dzPJ+J8yZTAY1T
PUwqciaSqVqEwvFON1righA8fE3IAlH63jpSh8w14cXg6GeCLicINaKph5J0
zFh0TR3+iz0UQ2Ct96QDJqAwP3dzRGVBPzneU4Ul9uGkFWzu6XhCDa5Tv9Xn
RySHEVM8
=drCi
-----END PGP SIGNATURE-----