* cpio-mode version 0.08 @ 2018-06-04 18:36 Douglas Lewan 2018-06-05 2:26 ` Tom Tromey 0 siblings, 1 reply; 14+ messages in thread From: Douglas Lewan @ 2018-06-04 18:36 UTC (permalink / raw) To: emacs-devel [-- Attachment #1: Type: text/plain, Size: 297 bytes --] All, cpio-mode version 0.07 has been uploaded to github ( https://github.com/dlewan/cpio-mode). This version includes fontification taken from dired. hpodc == odc except for special files (devices), so I'm skipping it for the moment. -- ,Doug Douglas Lewan (908) 720-7908 Member of the PKRA. [-- Attachment #2: Type: text/html, Size: 609 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-04 18:36 cpio-mode version 0.08 Douglas Lewan @ 2018-06-05 2:26 ` Tom Tromey 2018-06-05 7:07 ` Michael Albinus 0 siblings, 1 reply; 14+ messages in thread From: Tom Tromey @ 2018-06-05 2:26 UTC (permalink / raw) To: Douglas Lewan; +Cc: emacs-devel >>>>> "Douglas" == Douglas Lewan <d.lewan2000@gmail.com> writes: Douglas> cpio-mode version 0.07 has been uploaded to github Douglas> (https://github.com/dlewan/cpio-mode). This version includes Douglas> fontification taken from dired. It would be cool to have a cpio (and other archive type) file name handler, so that dired could just be reused rather than reimplemented. I realize this is possible with Tramp+GVFS now, but a pure elisp implementation would be even better. Tom ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-05 2:26 ` Tom Tromey @ 2018-06-05 7:07 ` Michael Albinus 2018-06-05 9:20 ` Douglas Lewan 0 siblings, 1 reply; 14+ messages in thread From: Michael Albinus @ 2018-06-05 7:07 UTC (permalink / raw) To: Tom Tromey; +Cc: Douglas Lewan, emacs-devel Tom Tromey <tom@tromey.com> writes: Hi Tom, > It would be cool to have a cpio (and other archive type) file name > handler, so that dired could just be reused rather than reimplemented. > I realize this is possible with Tramp+GVFS now, but a pure elisp > implementation would be even better. ... and harder. Tramp uses GVFS only as transition layer, because it offers an API for libarchive(3). Switching to a direct access of the libarchive C API would have advantages: * Not bound to GVFS anymore, available on other platforms therefore. * Not bound to the restrictions GVFS has taken to libarchive, like no support for writing into archives, missing proper file attributes, etc. I have been lazy so far, because Tramp knows already the GVFS API, and it was easy to add this support. But if there are heavy demands for change, I could consider to switch to libarchive. A pure Lisp implementation is wasted work, I believe. Look at the list of file formats libarchive supports. (info "(tramp) Archive file names") > Tom Best regards, Michael. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-05 7:07 ` Michael Albinus @ 2018-06-05 9:20 ` Douglas Lewan 2018-06-05 9:21 ` Fwd: " Douglas Lewan 2018-06-05 9:44 ` Michael Albinus 0 siblings, 2 replies; 14+ messages in thread From: Douglas Lewan @ 2018-06-05 9:20 UTC (permalink / raw) To: Michael Albinus; +Cc: Tom Tromey, emacs-devel [-- Attachment #1: Type: text/plain, Size: 1633 bytes --] On Tue, Jun 5, 2018 at 7:07 AM, Michael Albinus <michael.albinus@gmx.de> wrote: > Tom Tromey <tom@tromey.com> writes: > > Hi Tom, > > > It would be cool to have a cpio (and other archive type) file name > > handler, so that dired could just be reused rather than reimplemented. > > I realize this is possible with Tramp+GVFS now, but a pure elisp > > implementation would be even better. > > ... and harder. Tramp uses GVFS only as transition layer, because it > offers an API for libarchive(3). Switching to a direct access of the > libarchive C API would have advantages: > > * Not bound to GVFS anymore, available on other platforms therefore. > * Not bound to the restrictions GVFS has taken to libarchive, like no > support for writing into archives, missing proper file attributes, etc. > > I have been lazy so far, because Tramp knows already the GVFS API, and > it was easy to add this support. But if there are heavy demands for > change, I could consider to switch to libarchive. > > A pure Lisp implementation is wasted work, I believe. Look at the list > of file formats libarchive supports. (info "(tramp) Archive file names") > > > Tom > > Best regards, Michael. > Indeed. I'd be more than happy to surrender to work to someone who can provide a simpler implementation. I don't happen to know GVFS or libarchive or the question of how to bind lisp to a C library. In the meantime, cpio-mode looks usable now for the archives it supports. What remains is testing and polish. I would very much appreciate testing from anyone who can help with it. Thanks. -- ,Doug Douglas Lewan (908) 720-7908 Member of the PKRA. [-- Attachment #2: Type: text/html, Size: 2624 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Fwd: cpio-mode version 0.08 2018-06-05 9:20 ` Douglas Lewan @ 2018-06-05 9:21 ` Douglas Lewan 2018-06-05 9:44 ` Michael Albinus 1 sibling, 0 replies; 14+ messages in thread From: Douglas Lewan @ 2018-06-05 9:21 UTC (permalink / raw) To: emacs-devel [-- Attachment #1: Type: text/plain, Size: 1633 bytes --] On Tue, Jun 5, 2018 at 7:07 AM, Michael Albinus <michael.albinus@gmx.de> wrote: > Tom Tromey <tom@tromey.com> writes: > > Hi Tom, > > > It would be cool to have a cpio (and other archive type) file name > > handler, so that dired could just be reused rather than reimplemented. > > I realize this is possible with Tramp+GVFS now, but a pure elisp > > implementation would be even better. > > ... and harder. Tramp uses GVFS only as transition layer, because it > offers an API for libarchive(3). Switching to a direct access of the > libarchive C API would have advantages: > > * Not bound to GVFS anymore, available on other platforms therefore. > * Not bound to the restrictions GVFS has taken to libarchive, like no > support for writing into archives, missing proper file attributes, etc. > > I have been lazy so far, because Tramp knows already the GVFS API, and > it was easy to add this support. But if there are heavy demands for > change, I could consider to switch to libarchive. > > A pure Lisp implementation is wasted work, I believe. Look at the list > of file formats libarchive supports. (info "(tramp) Archive file names") > > > Tom > > Best regards, Michael. > Indeed. I'd be more than happy to surrender to work to someone who can provide a simpler implementation. I don't happen to know GVFS or libarchive or the question of how to bind lisp to a C library. In the meantime, cpio-mode looks usable now for the archives it supports. What remains is testing and polish. I would very much appreciate testing from anyone who can help with it. Thanks. -- ,Doug Douglas Lewan (908) 720-7908 Member of the PKRA. [-- Attachment #2: Type: text/html, Size: 2770 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-05 9:20 ` Douglas Lewan 2018-06-05 9:21 ` Fwd: " Douglas Lewan @ 2018-06-05 9:44 ` Michael Albinus 2018-06-05 10:38 ` Douglas Lewan 1 sibling, 1 reply; 14+ messages in thread From: Michael Albinus @ 2018-06-05 9:44 UTC (permalink / raw) To: Douglas Lewan; +Cc: Tom Tromey, emacs-devel Douglas Lewan <d.lewan2000@gmail.com> writes: Hi Doug, > Indeed. I'd be more than happy to surrender to work to someone who can > provide a simpler implementation. I don't happen to know GVFS or > libarchive or the question of how to bind lisp to a C library. Thanks for the offer. At first step, you might just try the tramp-archive solution, and provide feedback about usability (nobody did so far). Just open a file like "/path/to/file.cpio/", and play with it. The point is the trailing slash. You could open even compressed archives, like ".../file.cpio.gz/". For knowing libarchive and binding Lisp to a C library ... all of this I didn't know either when starting to contribute to Emacs. I've learned it by doing, which seems the only way to do it :-) > In the meantime, cpio-mode looks usable now for the archives it > supports. What remains is testing and polish. I would very much > appreciate testing from anyone who can help with it. I have written test/lisp/net/tramp-archive-tests.el for such purposes. Maybe you can steal some ideas or code from there ... And of course, you could ask me whatever you want about. > Thanks. Best regards, Michael. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-05 9:44 ` Michael Albinus @ 2018-06-05 10:38 ` Douglas Lewan 2018-06-05 15:55 ` Douglas Lewan 0 siblings, 1 reply; 14+ messages in thread From: Douglas Lewan @ 2018-06-05 10:38 UTC (permalink / raw) To: Michael Albinus; +Cc: Tom Tromey, emacs-devel [-- Attachment #1: Type: text/plain, Size: 1446 bytes --] Michael, Thanks for the pointers. I'll have a look when I get a few minutes. On Tue, Jun 5, 2018 at 9:44 AM, Michael Albinus <michael.albinus@gmx.de> wrote: > Douglas Lewan <d.lewan2000@gmail.com> writes: > > Hi Doug, > > > Indeed. I'd be more than happy to surrender to work to someone who can > > provide a simpler implementation. I don't happen to know GVFS or > > libarchive or the question of how to bind lisp to a C library. > > Thanks for the offer. At first step, you might just try the > tramp-archive solution, and provide feedback about usability (nobody did > so far). Just open a file like "/path/to/file.cpio/", and play with > it. The point is the trailing slash. You could open even compressed > archives, like ".../file.cpio.gz/". > > For knowing libarchive and binding Lisp to a C library ... all of this I > didn't know either when starting to contribute to Emacs. I've learned it > by doing, which seems the only way to do it :-) > > > In the meantime, cpio-mode looks usable now for the archives it > > supports. What remains is testing and polish. I would very much > > appreciate testing from anyone who can help with it. > > I have written test/lisp/net/tramp-archive-tests.el for such > purposes. Maybe you can steal some ideas or code from there ... > > And of course, you could ask me whatever you want about. > > > Thanks. > > Best regards, Michael. > -- ,Doug Douglas Lewan (908) 720-7908 Member of the PKRA. [-- Attachment #2: Type: text/html, Size: 2209 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-05 10:38 ` Douglas Lewan @ 2018-06-05 15:55 ` Douglas Lewan 2018-06-05 16:10 ` Michael Albinus 0 siblings, 1 reply; 14+ messages in thread From: Douglas Lewan @ 2018-06-05 15:55 UTC (permalink / raw) To: Michael Albinus; +Cc: Tom Tromey, emacs-devel [-- Attachment #1: Type: text/plain, Size: 2135 bytes --] On Tue, Jun 5, 2018 at 10:38 AM, Douglas Lewan <d.lewan2000@gmail.com> wrote: > Michael, > > Thanks for the pointers. I'll have a look when I get a few minutes. > > On Tue, Jun 5, 2018 at 9:44 AM, Michael Albinus <michael.albinus@gmx.de> > wrote: > >> Douglas Lewan <d.lewan2000@gmail.com> writes: >> >> Hi Doug, >> >> > Indeed. I'd be more than happy to surrender to work to someone who can >> > provide a simpler implementation. I don't happen to know GVFS or >> > libarchive or the question of how to bind lisp to a C library. >> >> Thanks for the offer. At first step, you might just try the >> tramp-archive solution, and provide feedback about usability (nobody did >> so far). Just open a file like "/path/to/file.cpio/", and play with >> it. The point is the trailing slash. You could open even compressed >> archives, like ".../file.cpio.gz/". >> >> For knowing libarchive and binding Lisp to a C library ... all of this I >> didn't know either when starting to contribute to Emacs. I've learned it >> by doing, which seems the only way to do it :-) >> >> > In the meantime, cpio-mode looks usable now for the archives it >> > supports. What remains is testing and polish. I would very much >> > appreciate testing from anyone who can help with it. >> >> I have written test/lisp/net/tramp-archive-tests.el for such >> purposes. Maybe you can steal some ideas or code from there ... >> >> And of course, you could ask me whatever you want about. >> >> > Thanks. >> >> Best regards, Michael. >> > > Michael, So far, I've downloaded source for emacs 26.1 and built it (in a somewhat hobbled development environment -- no X development, no image support, without gnutls). I've loaded tramp and url-tramp and opened test files (with names ending in '.cpio). All I get is "File not found and directory is write-protected". I assume I'm missing something. Can you help? Also, a quick look suggests that libarchive may not be universally available. I'm a big fan of portability, if it's possible, so, if that's the case, then I might prefer to avoid it. Any thoughts? -- ,Doug Douglas Lewan (908) 720-7908 Member of the PKRA. [-- Attachment #2: Type: text/html, Size: 3559 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-05 15:55 ` Douglas Lewan @ 2018-06-05 16:10 ` Michael Albinus 2018-06-05 18:57 ` Douglas Lewan 0 siblings, 1 reply; 14+ messages in thread From: Michael Albinus @ 2018-06-05 16:10 UTC (permalink / raw) To: Douglas Lewan; +Cc: Tom Tromey, emacs-devel Douglas Lewan <d.lewan2000@gmail.com> writes: > Michael, Hi Doug, > So far, I've downloaded source for emacs 26.1 and built it > (in a somewhat hobbled development environment -- no X development, > no image support, without gnutls). > I've loaded tramp and url-tramp and opened test files (with names > ending in '.cpio). > All I get is "File not found and directory is write-protected". > > I assume I'm missing something. Can you help? tramp-archive.el is new in Emacs 27 and Tramp 2.4. So you might use latest sources from either Emacs or Tramp repository. > Also, a quick look suggests that libarchive may not be universally > available. I'm a big fan of portability, if it's possible, so, if > that's the case, then I might prefer to avoid it. Any thoughts? Yes, that's a problem. Maybe we could do something like Emacs does for dired. Where applicable, it uses the external "ls" command, otherwise it uses the ls-lisp library. This means, we should use an Elisp implementation (like your cpio code) on systems which have no libarchive(3) support, for the cost of supporting less archive formats. The upper interface would still be a file name handler like tramp-archive provides as of today; all other packages using this wouldn't care the underlying implementation. Best regards, Michael. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-05 16:10 ` Michael Albinus @ 2018-06-05 18:57 ` Douglas Lewan 2018-06-05 19:14 ` Robert Pluim 2018-06-05 19:30 ` Michael Albinus 0 siblings, 2 replies; 14+ messages in thread From: Douglas Lewan @ 2018-06-05 18:57 UTC (permalink / raw) To: Michael Albinus; +Cc: Tom Tromey, emacs-devel [-- Attachment #1: Type: text/plain, Size: 1872 bytes --] On Tue, Jun 5, 2018 at 4:10 PM, Michael Albinus <michael.albinus@gmx.de> wrote: > Douglas Lewan <d.lewan2000@gmail.com> writes: > > > Michael, > > Hi Doug, > > > So far, I've downloaded source for emacs 26.1 and built it > > (in a somewhat hobbled development environment -- no X development, > > no image support, without gnutls). > > I've loaded tramp and url-tramp and opened test files (with names > > ending in '.cpio). > > All I get is "File not found and directory is write-protected". > > > > I assume I'm missing something. Can you help? > > tramp-archive.el is new in Emacs 27 and Tramp 2.4. So you might use > latest sources from either Emacs or Tramp repository. > Forgive me, but I don't know where the latest sources are. People write of them, but don't give explicit references. > > Also, a quick look suggests that libarchive may not be universally > > available. I'm a big fan of portability, if it's possible, so, if > > that's the case, then I might prefer to avoid it. Any thoughts? > > Yes, that's a problem. Maybe we could do something like Emacs does for > dired. Where applicable, it uses the external "ls" command, otherwise it > uses the ls-lisp library. > > This means, we should use an Elisp implementation (like your cpio code) > on systems which have no libarchive(3) support, for the cost of > supporting less archive formats. The upper interface would still be a > file name handler like tramp-archive provides as of today; all other > packages using this wouldn't care the underlying implementation. > Seems reasonable. This would probably be a late addition for my cpio-mode, but I'm more than willing to do it. Does your tramp code allow for editing of archive entries and their attributes? That would be a necessary piece of guaranteeing a consistent user experience. -- ,Doug Douglas Lewan (908) 720-7908 Member of the PKRA. [-- Attachment #2: Type: text/html, Size: 2913 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-05 18:57 ` Douglas Lewan @ 2018-06-05 19:14 ` Robert Pluim 2018-06-05 19:30 ` Michael Albinus 1 sibling, 0 replies; 14+ messages in thread From: Robert Pluim @ 2018-06-05 19:14 UTC (permalink / raw) To: Douglas Lewan; +Cc: Tom Tromey, Michael Albinus, emacs-devel Douglas Lewan <d.lewan2000@gmail.com> writes: > On Tue, Jun 5, 2018 at 4:10 PM, Michael Albinus <michael.albinus@gmx.de> > wrote: > >> Douglas Lewan <d.lewan2000@gmail.com> writes: >> >> > Michael, >> >> Hi Doug, >> >> > So far, I've downloaded source for emacs 26.1 and built it >> > (in a somewhat hobbled development environment -- no X development, >> > no image support, without gnutls). >> > I've loaded tramp and url-tramp and opened test files (with names >> > ending in '.cpio). >> > All I get is "File not found and directory is write-protected". >> > >> > I assume I'm missing something. Can you help? >> >> tramp-archive.el is new in Emacs 27 and Tramp 2.4. So you might use >> latest sources from either Emacs or Tramp repository. >> > > Forgive me, but I don't know where the latest sources are. > People write of them, but don't give explicit references. > git clone https://git.savannah.gnu.org/git/emacs.git will get you the latest emacs sources, which comes with tramp version 2.4.0-pre Robert ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-05 18:57 ` Douglas Lewan 2018-06-05 19:14 ` Robert Pluim @ 2018-06-05 19:30 ` Michael Albinus 2018-06-05 19:45 ` Douglas Lewan 1 sibling, 1 reply; 14+ messages in thread From: Michael Albinus @ 2018-06-05 19:30 UTC (permalink / raw) To: Douglas Lewan; +Cc: Tom Tromey, emacs-devel Douglas Lewan <d.lewan2000@gmail.com> writes: Hi Doug, > tramp-archive.el is new in Emacs 27 and Tramp 2.4. So you might > use latest sources from either Emacs or Tramp repository. > > Forgive me, but I don't know where the latest sources are. > People write of them, but don't give explicit references. Both Emacs and Tramp reside in git repositories. Cloning Emacs from git is described for example at <https://www.emacswiki.org/emacs/EmacsFromGit>. Cloning Tramp from git is described in the Tramp manual, see for example <https://www.gnu.org/software/tramp/#Obtaining-TRAMP>. > Does your tramp code allow for editing of archive entries and their > attributes? That would be a necessary piece of guaranteeing a > consistent user experience. Tramp would allow it. But the GVFS library does not support it (yet), see bug <https://bugzilla.gnome.org/show_bug.cgi?id=589617>. This would be one motivation for me to switch from GVFS to plain libarchive. Best regards, Michael. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: cpio-mode version 0.08 2018-06-05 19:30 ` Michael Albinus @ 2018-06-05 19:45 ` Douglas Lewan 0 siblings, 0 replies; 14+ messages in thread From: Douglas Lewan @ 2018-06-05 19:45 UTC (permalink / raw) To: Michael Albinus; +Cc: Tom Tromey, emacs-devel [-- Attachment #1: Type: text/plain, Size: 1201 bytes --] Thanks very much. On Tue, Jun 5, 2018 at 7:30 PM, Michael Albinus <michael.albinus@gmx.de> wrote: > Douglas Lewan <d.lewan2000@gmail.com> writes: > > Hi Doug, > > > tramp-archive.el is new in Emacs 27 and Tramp 2.4. So you might > > use latest sources from either Emacs or Tramp repository. > > > > Forgive me, but I don't know where the latest sources are. > > People write of them, but don't give explicit references. > > Both Emacs and Tramp reside in git repositories. Cloning Emacs from > git is described for example at <https://www.emacswiki.org/ > emacs/EmacsFromGit>. > > Cloning Tramp from git is described in the Tramp manual, see for example > <https://www.gnu.org/software/tramp/#Obtaining-TRAMP>. > > > Does your tramp code allow for editing of archive entries and their > > attributes? That would be a necessary piece of guaranteeing a > > consistent user experience. > > Tramp would allow it. But the GVFS library does not support it (yet), > see bug <https://bugzilla.gnome.org/show_bug.cgi?id=589617>. This would > be one motivation for me to switch from GVFS to plain libarchive. > > Best regards, Michael. > -- ,Doug Douglas Lewan (908) 720-7908 Member of the PKRA. [-- Attachment #2: Type: text/html, Size: 2242 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* cpio-mode version 0.08 @ 2018-06-09 6:20 Douglas Lewan 0 siblings, 0 replies; 14+ messages in thread From: Douglas Lewan @ 2018-06-09 6:20 UTC (permalink / raw) To: emacs-devel [-- Attachment #1: Type: text/plain, Size: 199 bytes --] Cpio-mode version 0.08 has been published on github ( https://github.com/dlewan/cpio-mode). This version supports binary format archives. -- ,Doug Douglas Lewan (908) 720-7908 Member of the PKRA. [-- Attachment #2: Type: text/html, Size: 477 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2018-06-09 6:20 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-06-04 18:36 cpio-mode version 0.08 Douglas Lewan 2018-06-05 2:26 ` Tom Tromey 2018-06-05 7:07 ` Michael Albinus 2018-06-05 9:20 ` Douglas Lewan 2018-06-05 9:21 ` Fwd: " Douglas Lewan 2018-06-05 9:44 ` Michael Albinus 2018-06-05 10:38 ` Douglas Lewan 2018-06-05 15:55 ` Douglas Lewan 2018-06-05 16:10 ` Michael Albinus 2018-06-05 18:57 ` Douglas Lewan 2018-06-05 19:14 ` Robert Pluim 2018-06-05 19:30 ` Michael Albinus 2018-06-05 19:45 ` Douglas Lewan -- strict thread matches above, loose matches on Subject: below -- 2018-06-09 6:20 Douglas Lewan
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/emacs.git https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.