jtojnar has quit [Read error: Connection reset by peer]
jtojnar__ has joined #nixos-chat
jtojnar__ is now known as jtojnar
ma27 has quit [Ping timeout: 256 seconds]
sphalerite has quit [Quit: WeeChat 2.0]
sphalerite has joined #nixos-chat
lopsided98 has quit [Ping timeout: 255 seconds]
elvishjerricco has quit []
elvishjerricco has joined #nixos-chat
ma27 has joined #nixos-chat
Lisanna has quit [Remote host closed the connection]
jtojnar has quit [Quit: jtojnar]
jtojnar has joined #nixos-chat
drakonis has joined #nixos-chat
Lisanna has joined #nixos-chat
obadz- has joined #nixos-chat
obadz has quit [Ping timeout: 265 seconds]
obadz- is now known as obadz
<drakonis>
reorganize nixpkgs, yay or nay, i see DEs under applications instead of under linux specific things
<drakonis>
how much effort would it take to implement an package tagging system?
<drakonis>
debian has a tag system that happens to be especially through
<drakonis>
thorough
<samueldr>
tagging yay, re-organizaing, hard...
<drakonis>
yes i'm aware
<drakonis>
tagging seems really useful for filtering
<samueldr>
as for re-organization, it could (imho) be done in an arbitrary $PLATFOM/$P/$PA/$PACKAGE_NAME, while messy, there's no need to overthink the structure
<samueldr>
platform being something like all, linux, darwin
<samueldr>
$P/$PA being the first then first two letters, though this could be elided to one level
<samueldr>
since I don't think there's *that* many packages where listing is an issue
<samueldr>
the goal mainly being to remove the categories from the FS
<drakonis>
then use tags for filtering
<drakonis>
which would eliminate the need for the current tree organization
<samueldr>
tags were (briefly) talked about on the nixos-homepage issue tracker since it would be useful to filter libraries out of the default packages listing
<ekleog>
samueldr: your $P/$PA makes me thinks, do you know if there are any plans to make nix-store not store everything in /nix/store/some_hash but instead in /nix/store/so/some/some_hash, like eg. git objects or opensmtpd queue? a 183k-file directory isn't very efficient to readdir…
<drakonis>
would be useful to tag package providers
<samueldr>
I think then, there's still the issue of things like python or haskell packages, should they be a $PLATFORM ?
<drakonis>
yes
<drakonis>
^^^^
<drakonis>
so you can tag whether a package will come from conda or pypi
<drakonis>
so at some point nix will drive other package managers
<samueldr>
ekleog: interesting idea, even makes sense wrt readdir issues in /nix/store
<ekleog>
hmm, can't find any open issue, will open up one
<drakonis>
the current nixpkgs structure is all over the place lol
<drakonis>
there's virtualization applications and virtualization tools
<samueldr>
pretty sure it's actively being ignored :)
<samueldr>
from past IRC conversations, the current policy is to place it "where other similar packages are"
<samueldr>
though, maybe "actively ignored" gives ill intentions where there is none
<drakonis>
do keep it in mind that adding tags and restructuring how nixpkgs is, would change the submission workflow
<drakonis>
it'd be an extreme makeover
<ekleog>
the point is “extreme”, like, there are 680 waiting PRs, that'd break them all
<ekleog>
and it's rare for the number of waiting PRs to go far under 500
<samueldr>
maybe less than expected
<drakonis>
was 800+ not a few days ago
<samueldr>
I'd expect the directory structure to be a breaking change
<samueldr>
but the tagging *could* be handled in a graceful way
<ekleog>
hmm, if all packages move…? ISTR git was able to handle moves, but github isn't
<samueldr>
e.g. untagged is fine, and easily queryable
<drakonis>
assemble the new tree off the tagged packages
<ekleog>
oh indeed tagging could be gradually rolled out
<samueldr>
so it looks like two orthogonal and idenpendent proposals
<drakonis>
they also go together
<drakonis>
restructuring can be done after tagging
<samueldr>
(I meant for the implentation)
<samueldr>
depends on whether the structure is arbitrary and irrelevant of tags
<samueldr>
if it's per-platform, per-package-name, it could be done without even knowing about the tags
<drakonis>
once it is done, all structuring becomes arbitrary
<drakonis>
because you have a search system
<drakonis>
it becomes possible to do even more extreme things like exchanging the userland tools for another set
<samueldr>
ekleog: curious, time sh -c 'ls > /dev/null' for your nix store
<drakonis>
tag packages as "this is a prog lang package manager"
<samueldr>
printing to the console is slow
<samueldr>
drakonis: your tagging ideas may be more advanced than what I had in mind :)
<drakonis>
ha, its a pie in the sky situation
<drakonis>
what do you have in mind?
<drakonis>
i'm going off what debian does with tags
<samueldr>
really dumb tags, without much weight, like e.g. ["application" "library" "desktop environment"] maybe
<drakonis>
ah right
<samueldr>
but that's because I haven't put any thoughts in yet
lopsided98 has joined #nixos-chat
<ekleog>
samueldr: oh indeed that was the slowness source, I assumed it was about right because when I tab-complete in the store with zsh that's about a few seconds slow
<drakonis>
that'd be a shallow tag system
<samueldr>
my thoughts being that anything more involved than *nothing* is a good starting point :)
<drakonis>
of course
<ekleog>
samueldr: (fixed the message with 1.5s for zsh completion, which I actually measured with my phone as stopwatch this time :°)
<drakonis>
there's a thing i haven't wrapped my head around
<drakonis>
nix doesn't drive any package managers, does it?
<drakonis>
i can't just say "hey can you download x package from pypi and install"?
<drakonis>
it has to be in the python36packages list for that to work
<drakonis>
yright?
<samueldr>
AFAIK the biggest issue is that those package managers are (mostly) not idempotent
<samueldr>
so trickery™ must be used
<drakonis>
linux trickery
<drakonis>
build in a container :V
* samueldr
may be missing something obvious
<drakonis>
i mean
<samueldr>
if `npm install SOMETHING` ran two times under the same environment doesn't give the same exact output (don't know for npm) containers wouldn't change that?
<drakonis>
ah i see
<samueldr>
I know for sure that there is an issue with maven (I still haven't tackled) when used with a specific kind of dependency
<drakonis>
well, npm suffers from a web of dependencies
<samueldr>
I probably should have said `$LANGUAGE_PACKAGE_MANAGER install $SOMETHING` :)
<drakonis>
ha
<drakonis>
right
<drakonis>
let me reboot real quick
drakonis has quit [Read error: Connection reset by peer]
Ahmedkh has joined #nixos-chat
Ahmedkh has left #nixos-chat [#nixos-chat]
Ahmedkh has joined #nixos-chat
Ahmedkh has left #nixos-chat [#nixos-chat]
drakonis has joined #nixos-chat
<drakonis>
here we go again
drakonis has quit [Remote host closed the connection]