diff options
author | Timo Teras <timo.teras@iki.fi> | 2008-04-17 14:09:13 +0000 |
---|---|---|
committer | Timo Teras <timo.teras@iki.fi> | 2008-04-17 14:09:13 +0000 |
commit | d6c74352427367a334d37469962bbcf1b9ae364c (patch) | |
tree | 81ebcf6fc8abf08baea3f0015bc2f7a08768fb1f /src/del.c | |
parent | 45d2c702fc8a47bc3f5ab4698de2bf1e377301c4 (diff) | |
download | apk-tools-d6c74352427367a334d37469962bbcf1b9ae364c.tar.gz apk-tools-d6c74352427367a334d37469962bbcf1b9ae364c.tar.bz2 apk-tools-d6c74352427367a334d37469962bbcf1b9ae364c.tar.xz apk-tools-d6c74352427367a334d37469962bbcf1b9ae364c.zip |
Initial commit of some stuff written so far. Still in state of flux. Expect
breakage and major changes.
Diffstat (limited to 'src/del.c')
-rw-r--r-- | src/del.c | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/del.c b/src/del.c new file mode 100644 index 0000000..c4d7539 --- /dev/null +++ b/src/del.c @@ -0,0 +1,53 @@ +/* del.c - Alpine Package Keeper (APK) + * + * Copyright (C) 2005-2008 Natanael Copa <n@tanael.org> + * Copyright (C) 2008 Timo Teräs <timo.teras@iki.fi> + * All rights reserved. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 as published + * by the Free Software Foundation. See http://www.gnu.org/ for details. + */ + +#include <stdio.h> +#include "apk_applet.h" +#include "apk_database.h" + +static int del_main(int argc, char **argv) +{ + struct apk_database db; + int i, j; + + apk_db_init(&db, "/home/fabled/tmproot/"); + apk_db_read_config(&db); + + if (db.world == NULL) + goto out; + + for (i = 0; i < argc; i++) { + for (j = 0; j < db.world->num; j++) { + if (strcmp(db.world->item[j].name->name, + argv[i]) == 0) { + db.world->item[j] = + db.world->item[db.world->num-1]; + db.world = + apk_dependency_array_resize(db.world, db.world->num-1); + } + } + } + + apk_db_recalculate_and_commit(&db); +out: + apk_db_free(&db); + + return 0; +} + +static struct apk_applet apk_del = { + .name = "del", + .usage = "apkname...", + .main = del_main, +}; + +APK_DEFINE_APPLET(apk_del); + |