* guix graph build phases
@ 2022-11-22 21:32 jgart
2022-11-22 21:34 ` jgart
2022-11-22 22:12 ` Julien Lepiller
0 siblings, 2 replies; 9+ messages in thread
From: jgart @ 2022-11-22 21:32 UTC (permalink / raw)
To: Guix Devel
hi,
`guix graph --phases` shows the order of phases for a particular package
and any custom phases that were introduced, deleted, replaced, etc. with
graphviz
wdyt
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: guix graph build phases
2022-11-22 21:32 guix graph build phases jgart
@ 2022-11-22 21:34 ` jgart
2022-11-22 22:12 ` Julien Lepiller
1 sibling, 0 replies; 9+ messages in thread
From: jgart @ 2022-11-22 21:34 UTC (permalink / raw)
To: Guix Devel
On Tue, 22 Nov 2022 15:32:54 -0600 jgart <jgart@dismail.de> wrote:
> wdyt
or maybe it should be:
guix build gnome-recipes --graph-phases
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: guix graph build phases
2022-11-22 21:32 guix graph build phases jgart
2022-11-22 21:34 ` jgart
@ 2022-11-22 22:12 ` Julien Lepiller
2022-11-22 22:43 ` jgart
2022-12-05 16:10 ` jgart
1 sibling, 2 replies; 9+ messages in thread
From: Julien Lepiller @ 2022-11-22 22:12 UTC (permalink / raw)
To: jgart, Guix Devel
[-- Attachment #1: Type: text/plain, Size: 406 bytes --]
The graph will always be flat, since it's a list, so graphviz would be a bit overkill :). Being able to list phases could still be cool :)
Le 22 novembre 2022 22:32:54 GMT+01:00, jgart <jgart@dismail.de> a écrit :
>hi,
>
>`guix graph --phases` shows the order of phases for a particular package
>and any custom phases that were introduced, deleted, replaced, etc. with
>graphviz
>
>wdyt
>
>
[-- Attachment #2: Type: text/html, Size: 674 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: guix graph build phases
2022-11-22 22:12 ` Julien Lepiller
@ 2022-11-22 22:43 ` jgart
2022-11-23 6:12 ` Julien Lepiller
2022-12-05 16:10 ` jgart
1 sibling, 1 reply; 9+ messages in thread
From: jgart @ 2022-11-22 22:43 UTC (permalink / raw)
To: Julien Lepiller; +Cc: Guix Devel
On Tue, 22 Nov 2022 23:12:16 +0100 Julien Lepiller <julien@lepiller.eu> wrote:
> The graph will always be flat, since it's a list, so graphviz would be a bit overkill :). Being able to list phases could still be cool :)
How about with the plantuml that have packaged?
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: guix graph build phases
2022-11-22 22:43 ` jgart
@ 2022-11-23 6:12 ` Julien Lepiller
2022-11-23 7:09 ` jgart
0 siblings, 1 reply; 9+ messages in thread
From: Julien Lepiller @ 2022-11-23 6:12 UTC (permalink / raw)
To: jgart; +Cc: Guix Devel
[-- Attachment #1: Type: text/plain, Size: 449 bytes --]
I don't get why you want a picture. Could you share an example of what it would look like?
Le 22 novembre 2022 23:43:19 GMT+01:00, jgart <jgart@dismail.de> a écrit :
>On Tue, 22 Nov 2022 23:12:16 +0100 Julien Lepiller <julien@lepiller.eu> wrote:
>> The graph will always be flat, since it's a list, so graphviz would be a bit overkill :). Being able to list phases could still be cool :)
>
>How about with the plantuml that have packaged?
[-- Attachment #2: Type: text/html, Size: 847 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: guix graph build phases
2022-11-23 6:12 ` Julien Lepiller
@ 2022-11-23 7:09 ` jgart
2022-11-23 7:11 ` jgart
2022-11-23 7:29 ` jgart
0 siblings, 2 replies; 9+ messages in thread
From: jgart @ 2022-11-23 7:09 UTC (permalink / raw)
To: Julien Lepiller; +Cc: Guix Devel
On Wed, 23 Nov 2022 07:12:55 +0100 Julien Lepiller <julien@lepiller.eu> wrote:
> I don't get why you want a picture. Could you share an example of what it would look like?
I was just thinking of something like a flowchart for the build phases.
For example, python-build-system's phases as a flowchart in mermaidjs:
%% python-build-system phases
flowchart TB
unpack -->
ensure-no-mtimes-pre-1980 -->
enable-bytecode-determinism -->
ensure-no-cythonized-files -->
build -->
install -->
add-install-to-pythonpath -->
add-install-to-path -->
wrap -->
check -->
sanity-check -->
rename-pth-file -->
strip
Here's the rendered mermaid flowchart:
https://kroki.io/mermaid/svg/eNptjz0OwjAMhfeeIgujJdhgYeAMXMBNjGKRP8WuqnJ6SloRCeHt2Z_t9w4HUxb1OcE4cXAgiyhFUzwKyfAIebYeq5r7bTBrTamgfRqAq2makkyVIGWIypEEyqpOl_Pxg-wEjoFgXJRsdgSOlGrkxBL_nbHNDL_IwYMDSWeavy45iWII3z_oHOw90AxbqILq-8ovsg_bbK5YOmk9bSmbEkysC3ybG1PXZJGgqG9OO62VyxteU2aW
The above diagram can easily be rewritten in plantuml and plantuml supports ascii diagrams also but ymmv:
https://www.planttext.com/api/plantuml/svg/RL0x2iCm3DrrYbn0q6vj0YK7wUBOAX6nPMChbFJqTPmiXMxl8_6UD1OrMTVW0PJLKvSsdQFWjB9tMBQY5Bgd0BGvW7wLPEmoG4zIrame4ODoe8AfiklzTccUcJpXj2dPw0WTAUN0mYNyRDeMnXzo-69FfPejk4DyLCnIKxq_cN4EJmKrub4q6Pt_U8VwpYQTotOckvou667Ti4cLvjes42QTMubzG3EdORyv9e2HnDK7VG40
@startuml
title python-build-system \n
start
:unpack;
:ensure-no-mtimes-pre-1980;
:enable-bytecode-determinism;
:ensure-no-cythonized-files;
:build -->;
:install -->;
:add-install-to-pythonpath;
:add-install-to-path;
:wrap -->;
:check -->;
:sanity-check;
:rename-pth-file;
:strip;
stop
@enduml
Where you thinking of capturing different information about the phases?
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: guix graph build phases
2022-11-23 7:09 ` jgart
@ 2022-11-23 7:11 ` jgart
2022-11-23 7:29 ` jgart
1 sibling, 0 replies; 9+ messages in thread
From: jgart @ 2022-11-23 7:11 UTC (permalink / raw)
To: Julien Lepiller; +Cc: Guix Devel
On Wed, 23 Nov 2022 01:09:43 -0600 jgart <jgart@dismail.de> wrote:
oops ignore the typos here:
> :build -->;
> :install -->;
> :add-install-to-pythonpath;
> :add-install-to-path;
> :wrap -->;
> :check -->;
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: guix graph build phases
2022-11-23 7:09 ` jgart
2022-11-23 7:11 ` jgart
@ 2022-11-23 7:29 ` jgart
1 sibling, 0 replies; 9+ messages in thread
From: jgart @ 2022-11-23 7:29 UTC (permalink / raw)
To: Julien Lepiller; +Cc: Guix Devel
On Wed, 23 Nov 2022 01:09:43 -0600 jgart <jgart@dismail.de> wrote:
> On Wed, 23 Nov 2022 07:12:55 +0100 Julien Lepiller <julien@lepiller.eu> wrote:
> %% python-build-system phases
> flowchart TB
> unpack -->
> ensure-no-mtimes-pre-1980 -->
> enable-bytecode-determinism -->
> ensure-no-cythonized-files -->
> build -->
> install -->
> add-install-to-pythonpath -->
> add-install-to-path -->
> wrap -->
> check -->
> sanity-check -->
> rename-pth-file -->
> strip
>
The above is the unmodified python-build-system phases but our idea here
is to generate them for each package and to account for changes made by
the modify-phases macro?
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: guix graph build phases
2022-11-22 22:12 ` Julien Lepiller
2022-11-22 22:43 ` jgart
@ 2022-12-05 16:10 ` jgart
1 sibling, 0 replies; 9+ messages in thread
From: jgart @ 2022-12-05 16:10 UTC (permalink / raw)
To: Julien Lepiller; +Cc: Guix Devel
On Tue, 22 Nov 2022 23:12:16 +0100 Julien Lepiller <julien@lepiller.eu> wrote:
> The graph will always be flat, since it's a list, so graphviz would be a bit overkill :). Being able to list phases could still be cool :)
Thinking more about this now I realize that just having a way to list the phases would be great and probably not difficult to implement.
On another note,
What do you think if it would be possible to add documentation to custom phases?
I realize that the name of the phases acts as a short documentation but
what if we could write a short description documenting why the phase
is needed?
Then, when we list the phases we could also list the documentation for that phase.
overkill? bloat?
all best,
jgart
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2022-12-05 16:11 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-22 21:32 guix graph build phases jgart
2022-11-22 21:34 ` jgart
2022-11-22 22:12 ` Julien Lepiller
2022-11-22 22:43 ` jgart
2022-11-23 6:12 ` Julien Lepiller
2022-11-23 7:09 ` jgart
2022-11-23 7:11 ` jgart
2022-11-23 7:29 ` jgart
2022-12-05 16:10 ` jgart
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).