diff options
Diffstat (limited to 'src/package_list.c')
| -rw-r--r-- | src/package_list.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/src/package_list.c b/src/package_list.c new file mode 100644 index 0000000..54cc9e6 --- /dev/null +++ b/src/package_list.c @@ -0,0 +1,52 @@ +/* + + pow! - the pow!erful package manager + + Copyright (C) 2026 forever2k38 + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see <https://www.gnu.org/licenses/>. + +*/ + +#include "package_list.h" +#include "paths.h" +#include "log.h" +#include "stdio.h" +#include "stdlib.h" + +int pow_get_package_list(pow_package **pkgs) { + FILE* file = fopen("/etc/pow/world", "r"); + + if (!file) { + pow_log_error("failed to open world file\n"); + + return 1; + } + + char *line = malloc(64); + + if (!line) { + pow_log_error("failed to malloc line while reading world file\n"); + + return 1; + } + + while (fgets(line, 63, file)) { + printf("%s", line); + } + + free(line); + + fclose(file); +} |
