Comments (11)
Wouldn't it be better if this was the default behaviour? AFAIK this is what pacman does.
In this case, the suboption would make the source not persisted...
from aura.
Note that aura already preserves built packages in the pacman package cache. He wanted this option so that aura could save and then sense already cloned git repos, so that when rebuilding something the cloning wouldn't have to occur again.
from aura.
I, personally, have encountered many situations where I need to re-download files over and over again through builds using aura (specially when building nvidia bumblebee drivers, which has even the same file). I wouldn't complain if it's a suboption instead of the default behavior.
In any case, I would like to do this patch.. Note that I'm starting to handle Haskell and, since this is a low priority request, I find it both educationally challenging and rewarding to help with this task :)
from aura.
If you can figure everything out, then by all means! I'd be happy to have your contribution.
from aura.
It might be a good idea to create a directory for each cloned repo, named by its package name and version number, then store that somewhere in /var, perhaps? Upon the use of the -A
suboption, it'll check for the appropriate folders and then just build out of there, or copy to the cache first and then build.
Normal building occurs within temporary directories within the pacman package cache. It's probably a good idea to be consistent.
from aura.
Well, I just cloned the repo. I've got some questions before start working:
- If I stick to pacman's cache dir, when cleaning cache will this files be deleted? If so, I can put this folder below pacman cache dir and have it auto-cleaned by
-Scc
. - I see this feature as a 'persist package' suboption - not only for git repo but also for any package, am I right?
Anyway, I'm starting to read the code to figure out how to implement it.
from aura.
- Those temp files in the package cache are automatically deleted after building.
If you're going to be manually copying the src folders somewhere, I'd recommend:
/var/cache/aura/source
or something similar. I'm creating new features that will be saving things in/var/cache/aura
so it might be handy for you to use that as well. - Packages built by aura (the .pkg.tar.gz files) are automatically copied to the package cache, but the source files are all deleted. I suppose you could implement the option to save all source files, yeah.
Aura is getting bigger all the time and the code is pretty split up. You'll probably want to check out Aura/AuraLib.hs. There is a section titled THE WORK
which has functions named buildPackages
and build
. Understanding those could be key to the enterprise.
Also note that I'm planning a major break up of AuraLib.hs, because it's a huge beast. I'm going to split it into Aura/General.hs and Aura/Build.hs. This split may or may not occur for version 1.1.
from aura.
@hkupty I had a pretty free day today and got a lot of work done. One of the things I got done was the break up of Aura/AuraLib.hs. It's now three separate libraries, General
Build
and Dependencies
. Where you'll want to be looking now is probably in Build
.
from aura.
I beg you pardon for this huge gap between my last contact and now... Life had been pretty tough and a bit messed up in the last months... I'll probably be able to develop this feature from this weekend on..
Once again, I sorry for leaving you waiting for so long.. I feel pretty bad about it..
from aura.
Don't worry man. I'm not mad or anything, haha. If you have any questions about the code, let me know.
from aura.
It would be useful to have this also for the upcoming 'M' option to build from the ABS, although I was thinking of using the --allsource option to makepkg to generate full source packages. These could then be untarred next time around, though.
from aura.
Related Issues (20)
- "aura: Failure There was some failure." inside Docker container HOT 2
- Fail to install new packages with doas HOT 1
- Parsing `check` from `makepkg.conf`
- download does not continue after network failure HOT 1
- Option parsing issues with `--` delimiter (double dash, two dashes) HOT 2
- Feature Request: makeopts for faster compiling HOT 9
- rust aura -A hyprland grabs from the Standart repo HOT 3
- Cyclic Dependencies with `mangohud`? HOT 1
- Error building a package due to unset variable
- Config template link in documentation leads to 404 error HOT 1
- Aura.conf option for always showing makepkg output HOT 5
- -A: offer multiple install options based on "provides"
- "command not found" when tab-completing aura -D HOT 5
- aura seems not respecting proxy setting of curl? HOT 5
- Force package to be used from a specific repo? HOT 5
- Improve handling of git packages HOT 3
- aura >>= As of makepkg v4.2, building as root is no longer possible. HOT 3
- Aura 4 config parsing HOT 5
- `aura` returns `Permission denied (publickey)` when fetching packages from AUR HOT 2
- Regression? "Failed to 'git pull' the latest updates" HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aura.