aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/conf.h3
-rw-r--r--include/install.h12
-rw-r--r--include/metadata.h8
-rw-r--r--include/purge.h7
-rw-r--r--include/spm.h1
-rw-r--r--include/user_input.h1
6 files changed, 23 insertions, 9 deletions
diff --git a/include/conf.h b/include/conf.h
index 99d550d..fa27b16 100644
--- a/include/conf.h
+++ b/include/conf.h
@@ -20,7 +20,10 @@ typedef struct {
char *datadir;
char *mandir;
char *sysconfdir;
+ char *tmpdir;
char *localstatedir;
+ char *dbdir; // $localstate/db
+ char *dbrecdir; // $localstate/db/records
} SPM_Hierarchy;
typedef struct {
diff --git a/include/install.h b/include/install.h
index 94a49df..1b1aa42 100644
--- a/include/install.h
+++ b/include/install.h
@@ -1,12 +1,10 @@
#ifndef SPM_INSTALL_H
#define SPM_INSTALL_H
-int metadata_remove(const char *_path);
-void install_show_package(ManifestPackage *package);
-int install(SPM_Hierarchy *fs, const char *tmpdir, const char *_package);
-int install_package_record(SPM_Hierarchy *fs, char *tmpdir, char *package_name);
-int is_installed(SPM_Hierarchy *fs, char *package_name);
-int do_install(SPM_Hierarchy *fs, ManifestList *mf, StrList *packages);
-
+void spm_install_show_package(ManifestPackage *package);
+int spm_install(SPM_Hierarchy *fs, const char *tmpdir, const char *_package);
+int spm_install_package_record(SPM_Hierarchy *fs, char *tmpdir, char *package_name);
+int spm_check_installed(SPM_Hierarchy *fs, char *package_name);
+int spm_do_install(SPM_Hierarchy *fs, ManifestList *mf, StrList *packages);
#endif //SPM_INSTALL_H
diff --git a/include/metadata.h b/include/metadata.h
index bb864f6..d91c1f1 100644
--- a/include/metadata.h
+++ b/include/metadata.h
@@ -1,12 +1,16 @@
#ifndef SPM_METADATA_H
#define SPM_METADATA_H
+#include "conf.h"
#define SPM_METADATA_VERIFY 0 << 1
#define SPM_METADATA_NO_VERIFY 1 << 1
typedef int (ReaderFn)(size_t line, char **);
-char **metadata_filelist_read(const char *filename);
-char **metadata_read(const char *filename, int no_verify);
+char **spm_metadata_read(const char *filename, int no_verify);
+int spm_metadata_remove(const char *_path);
+
+// TODO: Can this somehow get hooked into spm_metadata_read()?
+ConfigItem **spm_descriptor_read(const char *filename);
#endif //SPM_METADATA_H
diff --git a/include/purge.h b/include/purge.h
new file mode 100644
index 0000000..0debd4b
--- /dev/null
+++ b/include/purge.h
@@ -0,0 +1,7 @@
+#ifndef SPM_REMOVE_H
+#define SPM_REMOVE_H
+
+int spm_purge(SPM_Hierarchy *fs, const char *_package_name);
+int spm_do_purge(SPM_Hierarchy *fs, StrList *packages);
+
+#endif //SPM_REMOVE_H
diff --git a/include/spm.h b/include/spm.h
index 690d1f9..a0fc16e 100644
--- a/include/spm.h
+++ b/include/spm.h
@@ -50,6 +50,7 @@
#include "mirrors.h"
#include "user_input.h"
#include "install.h"
+#include "purge.h"
#define SYSERROR stderr, "%s:%s:%d: %s\n", basename(__FILE__), __FUNCTION__, __LINE__, strerror(errno)
diff --git a/include/user_input.h b/include/user_input.h
index 4e051ed..61d56ee 100644
--- a/include/user_input.h
+++ b/include/user_input.h
@@ -2,6 +2,7 @@
#define SPM_USER_INPUT_H
int spm_user_yesno(int answer, int empty_input_is_yes);
+int spm_prompt_user(const char *msg, int empty_input_is_yes);
void spm_user_yesno_test();
#endif //SPM_USER_INPUT_H