all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Relaxing the restrictions for store item names
@ 2023-08-22  6:49 Eidvilas Markevičius
  2023-08-23 19:04 ` jbranso
                   ` (4 more replies)
  0 siblings, 5 replies; 24+ messages in thread
From: Eidvilas Markevičius @ 2023-08-22  6:49 UTC (permalink / raw)
  To: guix-devel

Hello Guix,

Not long ago, somebody has raised an issue regarding an error that
occurs whenever some unconventional character is used as the name for
a store item [0]. Tobias Geerinckx-Rice pointed out that this
restriction was directly inherited from the Nix source code [1] and
that, as such, it isn't really a bug. Regardless, I believe that the
imposed limitation may be undesirable in some situations. One that I
can think of off the top of my head is packaging a piece of software
with a name that contains non-Latin characters in it (e.g.,
"Naršytuvas" by Raštija [2]). Of course, there are very few examples
of such programs in actual practice, but there's a small chance of
encountering them from time to time, especially if they're oriented
towards non-English speaking users, and personally, I don't feel like
resorting to transliteration is a good solution to this. After all,
it's 2023, why would such a restriction need to be there in the first
place when most filesystems are able to handle unicode characters just
fine?

Another scenario where these artificial restrictions could be a
potential cause of trouble is when we consider a possibility that Guix
might be used for packaging and distributing not only software, but
all kinds of non-executable data such as films, books, music,
databases, historical documents, website archives, etc. [3]. In the
case of website archives: say I wanted to package the contents of the
whole raštija.lt website. When choosing the package name for it,
should I go with "rastija.lt", "rashtija.lt", or "raštija.lt". The
latter would be a clear winner in my mind, since it is the canonical
domain name for that particular site. And for all other types of data
and media packages, using the official/original titles for their names
would, too, be much more preferable over making use of any kind of
transcription or transliteration method, IMO.

Therefore, my proposal is to relax these limitations as much as
possible (or at least somewhat) and to allow some more freedom when it
comes to naming packages and other kinds of items in the store. We
could, of course, still disallow all the main problematic characters,
such as NUL, /, $, ~, space, newline and a few others, but other than
that, I don't see any reason to forbid any of the remaining ones from
being used.

I'd like to hear your opinions on this and get to know whether this
idea is feasible to implement at all or not, and if not – why?

[0] https://issues.guix.gnu.org/64976
[1] https://git.savannah.gnu.org/cgit/guix.git/tree/nix/libstore/store-api.cc#n58
[2] https://raštija.lt/liepa/paslaugos-vartotojams/narsytuvas
[3] https://gitlab.com/guix-media-channels


^ permalink raw reply	[flat|nested] 24+ messages in thread
* Relaxing the restrictions for store item names
@ 2023-08-25  8:37 Nathan Dehnel
  2023-08-25  9:14 ` Eidvilas Markevičius
  0 siblings, 1 reply; 24+ messages in thread
From: Nathan Dehnel @ 2023-08-25  8:37 UTC (permalink / raw)
  To: markeviciuseidvilas, guix-devel

What you could do is implement percent encoding:
https://en.wikipedia.org/wiki/Percent-encoding
-Allows you to store package titles in any language in an encoded form
-Allows the titles to be typed on latin keyboards
-Allows the packages to be accessed through URIs in the future without
causing problems


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2023-09-02 20:03 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-22  6:49 Relaxing the restrictions for store item names Eidvilas Markevičius
2023-08-23 19:04 ` jbranso
2023-08-24  6:56 ` (
2023-08-24  7:16   ` MSavoritias
2023-08-24  7:31     ` Nguyễn Gia Phong via Development of GNU Guix and the GNU System distribution.
2023-08-24  7:35       ` Fannys
2023-08-24  7:41       ` MSavoritias
2023-08-24  8:10         ` Nguyễn Gia Phong via Development of GNU Guix and the GNU System distribution.
2023-08-24  8:18           ` MSavoritias
2023-08-24  8:41             ` Msavoritias
2023-08-24 10:21               ` Julien Lepiller
2023-08-24 10:36                 ` MSavoritias
2023-08-24 19:38                   ` (
2023-08-27 15:27                 ` wolf
2023-08-24 10:33 ` Simon Tournier
2023-08-24 16:30 ` Kaelyn
2023-08-24 18:26   ` Eidvilas Markevičius
2023-09-02 20:02 ` Eidvilas Markevičius
  -- strict thread matches above, loose matches on Subject: below --
2023-08-25  8:37 Nathan Dehnel
2023-08-25  9:14 ` Eidvilas Markevičius
2023-08-25 14:01   ` Eidvilas Markevičius
2023-08-25 16:32     ` Kaelyn
2023-08-25 17:44       ` Eidvilas Markevičius
2023-08-25 18:14       ` Saku Laesvuori

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.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.