I work with meld. I want to fix bug in meld. meld is written in Python, so I open which meld, follow imports, edit the code. Now there are two ways things can go:
My edits went good, the patch works, and I need to send it upstream, but there is no original source to diff
My edits gone bad, the system is broken, and I need to revert, but there is no original source to revert to
In both cases I want to compare modified package files to original version, and in the first case - create a pull request by copying changes over the appropriate branch/commit, and in the second case add git history so that I can continue hacking in incremental ways. In the worst case I want to just overwrite the code.
The problem is that installed files in Linux system are no longer contained in single project directory, and they could also be modified compared to originals, so there should be a way to map these files back to their sources and update them dynamically using package info and additional information known to JavaScript developers as source maps. The goal is to enable symmetrical transformation between live code that is installed on the system and its source, so that modifications to installed scripts can be reflected to source and modifications in source could be reflected in live system (after checking consistency of all other files).
This should be a fun task to do - mapping sources through builds and packaging tools to their outcome, and there are initiatives, such as https://reproducible-builds.org/ that are already covered some miles. Tools like SCons can help with fast prototyping, but more tools should be developed to visualize dependency and debug these connections.
I work with
meld
. I want to fix bug inmeld
.meld
is written in Python, so I openwhich meld
, follow imports, edit the code. Now there are two ways things can go:In both cases I want to compare modified package files to original version, and in the first case - create a pull request by copying changes over the appropriate branch/commit, and in the second case add
git
history so that I can continue hacking in incremental ways. In the worst case I want to just overwrite the code.The problem is that installed files in Linux system are no longer contained in single project directory, and they could also be modified compared to originals, so there should be a way to map these files back to their sources and update them dynamically using package info and additional information known to JavaScript developers as source maps. The goal is to enable symmetrical transformation between live code that is installed on the system and its source, so that modifications to installed scripts can be reflected to source and modifications in source could be reflected in live system (after checking consistency of all other files).
This should be a fun task to do - mapping sources through builds and packaging tools to their outcome, and there are initiatives, such as https://reproducible-builds.org/ that are already covered some miles. Tools like SCons can help with fast prototyping, but more tools should be developed to visualize dependency and debug these connections.