!BrOouUOucaGdxbaRca:nixos.org

NixOS Portuguese

376 Members
Sala de Conversação sobre o ecossistema Nix em português. Ponteada com o grupo do Telegram: https://t.me/nixosbrasil/ Link Matrix: https://matrix.to/#/!BrOouUOucaGdxbaRca:nixos.org19 Servers

Load older messages


SenderMessageTime
11 Dec 2022
@anderson_torres:matrix.orgAnderson Torres
In reply to @telegram_155706732:t2bot.io
Entao da pra fazer o esquema de variável de ambiente pra passar onde tá o XML e usa o nix pra gerar o XML
O problema é saber se isso é feito na hora de compilar ou na hora de usar.
00:33:51
@baduhai:matrix.org@baduhai:matrix.orgÉ na hora de usar00:34:05
@anderson_torres:matrix.orgAnderson TorresEntão é sussa - quer dizer, cê pode fazer um do zero se quisesse, né? 00:34:48
@anderson_torres:matrix.orgAnderson Torres* Então é sussa - quer dizer, cê poderia fazer um do zero se quisesse, né? 00:34:58
@baduhai:matrix.org@baduhai:matrix.orgÉ, tbm achei meio louco quando tava escrevendo o derivation00:35:20
@anderson_torres:matrix.orgAnderson TorresEntão dá para fazer assim: cria um wrapper que junte o teu programa mais os cores, e nesse wrapper inclui esse arquivo devidamente modificado.00:36:39
@anderson_torres:matrix.orgAnderson TorresDependendo do caso, dá para fazer o próprio Nix gerar esse arquivo. Mas na pior hipótese simplesmente usa um esquema de template.00:37:26
@baduhai:matrix.org@baduhai:matrix.org
In reply to @baduhai:matrix.org
Acho q o substituteInPlace tbm possa me ajudar, mas pelo o q eu entendi, como o retroarch é uma dependência opcional, o substituteInPlace só vai ser executado se o retroarch for instalado como dependência, fazendo com q se eu instalar o retroarch depois do emulationstation-de, o substituteInPlace nunca tenha executado, e os cores não serão encontrados
Mas os cores são opcionais, ai eu vou ter a mesma situação q eu expliquei aqui
00:37:39
@anderson_torres:matrix.orgAnderson TorresSim, os cores são opcionais. O wrapper vai ter um argumento para os cores então.00:38:17
@baduhai:matrix.org@baduhai:matrix.orgMas e se eu instalar o retroarch depois de já ter o emulationstation-de instalado, o wrapper nunca vai ter wrappado00:39:14
@baduhai:matrix.org@baduhai:matrix.orgVai ter uma situação onde mesmo eu tendo a dependência instalada, ela não vai ser reconhecida00:39:49
@anderson_torres:matrix.orgAnderson TorresIsso é irrelevante. Não precisa ter "venda casada" no Nixpkgs.00:40:04
@baduhai:matrix.org@baduhai:matrix.orgNão entendi00:40:41
@anderson_torres:matrix.orgAnderson TorresMeia-noite eu te conto :) Sério, vou ver outra coisa aqui ligeiro, depois eu volto. Mas enquanto isso dá uma lida no código do mpv wrapper que linkei acima.00:41:48
@baduhai:matrix.org@baduhai:matrix.orgKkk, blz00:42:09
@anderson_torres:matrix.orgAnderson TorresEnfim, a ideia é a se01:04:45
@anderson_torres:matrix.orgAnderson Torres * Enfim, a ideia é a seguinte:01:05:28
@anderson_torres:matrix.orgAnderson Torres

O symlinkJoin mescla todos os paths que recebe em um só diretório, como se você tivesse movido todos para um mesmo lugar.

Se você tem A e B assim:

/nix/store/A/bin/a1
/nix/store/A/etc/e1
/nix/store/A/etc/e2

/nix/store/B/bin/b1
/nix/store/B/bin/b2
/nix/store/B/etc/h1

No fim o symlinkJoin vai criar algo como

/nix/store/C/bin/a1
/nix/store/C/bin/b1
/nix/store/C/bin/b2
/nix/store/C/etc/e1
/nix/store/C/etc/e2
/nix/store/C/etc/h1

01:10:33
@anderson_torres:matrix.orgAnderson Torres *

O symlinkJoin mescla todos os paths que recebe em um só diretório, como se você tivesse movido todos para um mesmo lugar.

Se você tem A e B assim:

/nix/store/A/bin/a1
/nix/store/A/etc/e1
/nix/store/A/etc/e2

/nix/store/B/bin/b1
/nix/store/B/bin/b2
/nix/store/B/etc/h1

No fim o symlinkJoin vai criar algo como

/nix/store/C/bin/a1
/nix/store/C/bin/b1
/nix/store/C/bin/b2
/nix/store/C/etc/e1
/nix/store/C/etc/e2
/nix/store/C/etc/h1
01:10:54
@anderson_torres:matrix.orgAnderson Torres Além disso, ele tem um postBuild que te permite ajustar vários detalhes posteriores. 01:12:30
@anderson_torres:matrix.orgAnderson Torres *

O symlinkJoin mescla todos os paths que recebe em um só diretório, como se você tivesse movido todos para um mesmo lugar.

Se você tem A e B assim:

/nix/store/A/bin/a1
/nix/store/A/etc/e1
/nix/store/A/etc/e2

/nix/store/B/bin/b1
/nix/store/B/bin/b2
/nix/store/B/etc/h1

No fim o symlinkJoin vai criar algo como

/nix/store/C/bin/a1
/nix/store/C/bin/b1
/nix/store/C/bin/b2
/nix/store/C/etc/e1
/nix/store/C/etc/e2
/nix/store/C/etc/h1

Com isso, do ponto de vista de C, parece que você fez uma mescla de vários programas que, nas CNTP, estão em diretórios separados.

01:14:56
@anderson_torres:matrix.orgAnderson Torres

A ideia que eu tenho, então, é fazer um symlinkJoin com o es-de e com os cores (como são opcionais, então precisa ter um parâmetro para eles, óbvio).

Com isso, você pode editar aquele XML, de forma que ele passe a apontar para o diretório onde estão todos os cores neste novo symlinkJoin.

01:15:48
@anderson_torres:matrix.orgAnderson TorresE, já que o XML pode ser escrito do zero e ele é lido pelo programa já instalado, como se fosse um configfile, nem precisa de patch.01:16:57
@baduhai:matrix.org@baduhai:matrix.orgEntendi. Acho q isso vai um poco alem das minha competencias com o Nix, mas é bom q eu aprendo, vou ver o q eu consigo fazer amanhã01:19:19
@telegram_155706732:t2bot.ioLucas EduardoSymlink join não junta a nível de arquivo11:54:18
@telegram_155706732:t2bot.ioLucas EduardoMelhor usar o buildEnv11:54:24
@anderson_torres:matrix.orgAnderson TorresPra quê? Para dobrar o tamanho do store?13:45:43
@telegram_155706732:t2bot.ioLucas EduardobuildEnv só cria symlink14:40:22
@telegram_2114934741:t2bot.ioVinícius Müller joined the room.16:27:54
@telegram_2114934741:t2bot.ioVinícius Müllermuito boa essa bridge pro matrix, parabens aos envolvidos16:27:53

Show newer messages


Back to Room ListRoom Version: 9