This is the first step of converting output to standard functions such as printf, and
eventually allowing compiliation with the -pedantic flag as is done on the libalpm
side.
Signed-off-by: Dan McGee <dan@archlinux.org>
Some more major code reorginization here. The download progress callback
function has been renamed and moved to callback.c, which is the former
trans.c with the download and log callbacks added. In addition, this allows
util.c to be cleaned up as fill_progress can now be static in callback.c.
We've also cut two more source files out.
Signed-off-by: Dan McGee <dan@archlinux.org>
* Cleaned up more of the header #includes, and got rid of a lot of stuff
that was due to trying to make it compile on BSD/Darwin/CYGWIN. We can
add it later but lets keep it simple for now and do it in seperate files
if possible later.
* Removed a lot of #define MACROS. Some were not even used, and others were
only used a few times.
Signed-off-by: Dan McGee <dan@archlinux.org>
Enable an -Ss operation to work without a target list. This allows all package information
to be printed (as opposed to individual -Sl operations on repositories).
Signed-off-by: Dan McGee <dan@archlinux.org>
Unification and cleanup of the add.c and remove.c code. It looks remarkably
similar, so this may be a candidate for functionalization at a later time.
Signed-off-by: Dan McGee <dan@archlinux.org>
* Remove libintl.h from most files, as we only need to include it once in
util.h where _() is defined.
* Remove other unnecessary header inclusions.
* Remove a macro that was only used once and replaced it with actual code.
Signed-off-by: Dan McGee <dan@archlinux.org>
Move pacman_upgrade into add.c, at least for now. It really doesn't need
its own file. For the long term, we may want to move this whole file
back to upgrade.c if we deprecate the add operation.
Signed-off-by: Dan McGee <dan@archlinux.org>
Having a seperate header file for add, remove, query, etc. seemed overkill.
Merge them all into a common pacman.h and fix the necessary #includes.
Signed-off-by: Dan McGee <dan@archlinux.org>
In order to get more reliable message statistics, I updated all of the
po files by first doing a make *.pot-update followed by a make. I am
holding off on committing the pot files as this causes issues with make
constantly wanting to rebuild them.
Signed-off-by: Dan McGee <dan@archlinux.org>
* Add a localize function to do what was done before in main wrt i18n
initialization.
* Added Doxygen comments to all functions in pacman.c.
Signed-off-by: Dan McGee <dan@archlinux.org>
Several important paths, file locations, and extensions were #define-d in the
source code instead of being configurable. This moves all of these to
the configure script where they can be picked upon running ./configure. We
may later want to make some of these even more visible and move them to
pacman.conf.
Signed-off-by: Dan McGee <dan@archlinux.org>
* Unify the main usage instructions to look a bit more like the rest
with a usage and options line.
* Fix some of the spacing from the de-gettexting done yesterday.
Signed-off-by: Dan McGee <dan@archlinux.org>
* Move all .cvsignore files to .gitignore for switch in VCS. In addition,
delete ones that were unnecessary because they only contained Makefile
and Makefile.am.
Signed-off-by: Dan McGee <dan@archlinux.org>
work of fixing these in the translation files, and I removed a few fuzzys
while doing so. If any more patches for translations come, try to do it
against these files.
* Ran msgmerge on all po files from new pot files, but did not check in the
updated pot files as that just causes problems.
* Updated Italian translation
Giovanni Scafora <linuxmania@gmail.com>
* Updated Russian translation, added libalpm partial translation
Владимир Байраковский <4rayven@gmail.com>
* Updated Hungarian translation
Nagy Gabor <ngaba@petra.hos.u-szeged.hu>
* Updated French translation
solsTiCe d'Hiver <solstice.dhiver@laposte.net>
Thanks again guys!
* More significant error messages when -Qo fails
* Potential fix for reported error that pacman indicates corrupt packages
when space is full on the cache dir
Giovanni Scafora <linuxmania@gmail.com>
* Many minor issues mentioned by Scott Horowitz <stonecrest@gmail.com>.
- extra 'done' text in --noprogressbar output
- missing flags in the pacman.8 manpage
- unclear text in --noconfirm help description
issues, this should fix it. Progress bars now go from displaying, to showing
percent only, to not displaying at all. Changed unsigned -> signed to
prevent wraparound errors in integer comparison.
duplicated.
* Updated the util Makefile.am to link with the proper libalpm.la.
* Fixed bitmasking issues in be_files.c and db.h.
* Rankmirrors updates from James Rosten (with some cleaning up of my own).
KeyboardInterrupts are now handled gracefully.
(Because we are in a string freeze, I did not add "to the transaction" to
the original string but kept it in your translation)
Nagy Gabor <ngaba@petra.hos.u-szeged.hu>
Giovanni Scafora <linuxmania@gmail.com>
* long -> float conversion for package size output (which still may be the
wrong size, this needs to be looked at)
- Check EACCES in can_remove_file, to verify - we're only checking for a
read-only FS here... if write permissions fail, we can still remove it
- Switched the message when creating DB directories from an error to a debug
message
* Fix the dep tests once and for all (it wasn't working for provides=()
packages)
Giovanni Scafora <linuxmania@gmail.com>
* Changed default SRCDEST in makepkg.conf. Two reasons:
1) consistency with PKGDEST in /home/packages
2) building packages as root is NOT recommended, so no reason to ever
encourage this use by caching source in a dir with root permissions
Yes, we may all do this differently and build our packages in other
directories. But that is why they are variables and can be set anyway.
* Some header cleanup on the pacman side of things - we had alpm.h instead
alpm_list.h in a few headers.
* removed an extra slash in path-building snprintf in server.c.
reordering and adding ones that were forgotten (noticed when trying to
compile after reordering).
* Updated the HACKING file to include information on #include usage.
* print -> vprint in "making dir" function in pactest.
Translators and developers should count this as the string freeze unless
something REALLY essential comes up. Send in patches to these translations
when you get a chance (and patches are appreciated, as they are much easier
to deal with).
occasions where some alpm stuff could be used without initializing the
library (vercmp is one). TODO make these functions (handle accessors)
better by returning "library not initialized" instead of failing.
* Removed NoUpgrade lines from pacman.conf - we need to test this!
* Re-corrected the lib targets for src/util/*
* make dist seems to have updated the po files
it. Eventually we'll make progress.
* Rewrote the _alpm_splitdep function to behave more like all our other
function calls. Use heap instead of stack allocation for the depend struct,
so now it needs to be freed by the caller.
* Moved entirely to alpm_pkg_get_* accessors, to read data on demand
* Mostly removed the INFRQ_ parameters from outside the be_files backend (making
the backend more extensible in the long run)
* packages created from _alpm_db_scan now have the db and origin set (making
accessors actually work for these packages)
* removed _alpm_db_ensure_pkgcache
* totally revamped the _alpm_checkconflicts function, making it cleaner and
easier to read (and thus fix in the long run) - maintainable code ftw
NOTE: feel free to rename the functions... I couldn't think of anything better
* removed an extra loop in sync.c:find_replacements - no sense in looping over
an entire DB while strcmp'ing the name, when we have get_pkgfromcache
Other:
* package struct "license" -> "licenses"
* Created _alpm_sync_find (duplicate code in some places, find_pkginsync
* Minor const correctness changes along the way
* fixed a couple extra '/' pathing issues (non-issues really)
* removed a duplicate pkg_cmp function
be used in place of -Y. Also, -D was rather silly, as it does mostly what -S
does.
* Cleaned up pacman_deptest - removed the goofy faketarget stuff (NEEDS testing
still)
* libalpm function renames
* Updated all of the language files, as the POT file was updated. NOTE FOR
TRANSLATORS, try to base your next contribution off of these, notice how
some msgids and messages have been wrapped to the next line- it makes it
easier to read anyway.
* More Makefile.am/configure.ac updates. 'make dist' and 'make distclean' now
work properly, with only one caveat- the automatic testing in distclean
doesn't do so hot as it is compiled with a default configure, which includes
the fakeroot-proof code (which does not cooperate with pactest).
* Added a Makefile.am for the pactest directory.
from one package to another seemlessly (knock on wood). This is implemented
through the use of two skip lists in the trans struct- skip_add and
skip_remove, which replace the former trans->skiplist.
* Removed an unnecessary function parameter, added a necessary one.
* If a package has no backup files, print '(none)' under the heading so it is
more obvious.
* Updated my TODO list.
- the code should be clearer, more organized, commented, and have worthwhile
variable names now
- proactive backup=()s now work. That is, adding a file to a backup array
does what it should on the upgrade to that package, no longer forcing you to
wait a full upgrade cycle for it to take effect
* ldconfig was being run twice on an upgrade operation - fixed
* fixed another pm_fprintf/printf output corruption with the progress bars
* refactored some duplicate code for adjusting 'requiredby' lists
* Added config.rpath to .cvsignore