statulr / aurc Goto Github PK
View Code? Open in Web Editor NEWFast Arch Linux Package Manger
Home Page: https://aurc.run
License: GNU General Public License v3.0
Fast Arch Linux Package Manger
Home Page: https://aurc.run
License: GNU General Public License v3.0
Here: https://github.com/statulr/aurc/blob/main/src/aurc_aur.c#L53 if the package name is something like this: &&funny_stuff
this can be very easily be used for code execution.
This could be fixed in two ways:
system
[a-Z0-9_-]+
Hi I'm from @cloudzydev's stream.
One recommendation i can make you are using both camel case and snake case at the same time
interchangebly. Since you're writing for UNIX.
I suggest: Types are PascalCase Enums are UPPER_SNAKE
Variables are snake_case Functions are snake_case Also you use the Windows Format
for brackets not unix or gnu.
You can use formatters in Neovim:
Clang Format Options
Here is some example I made:
#pragma once
#include <stdheaders.h>
#include "yourheaders.h"
#define SOME_MACRO 5
const int SOME_CONST = 2;
enum {
ENUM_T1,
ENUM_T2,
} ENUM_TYPES;
// example code
struct MyType {
int inner_field;
union {
/* */
};
};
// Use namespaces on functions to prevent collision
void ns_printf(const char* fmt, void** args);
extern char* some_variable;
void ns_printf(const char* fmt, void** args)
{
while (true) {
if (false) {
}
}
}
Implement libalpm for package handling and libarchive for un-archiving things instead of going to the command-line
Once LibALPM is integrated to take care of AUR Package Installing, then it should be done, what is needed is when a user runs the install command instead of going to the shell, it will use the libalpm library to take care of it, and for unarchiving during installation it will use libarchive instead.
https://man.archlinux.org/man/libalpm_list.3.en
https://duckduckgo.com/?q=libalpm
[-] Implement LibALPM into the aurc_aur.c installaur function
[-] Implement libarchive into aurc_aur.c, and aur_pac.c for all archive related actions
Using fakeroot can be very beneficial so that when building, if a package is malicious, it cannot destroy your system.
str
functionsstrn
counterparts where you're required to specify a maximum sizeEDITOR
to be some bash commands that it wants to run and you then run modifyRepo
const <type> <name>
rather than macrosif (cond) {
// main logic
} else {
// error handling
}
if (!cond) {
// error handling
return
}
// main logic
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.