Compare commits

..

7 commits
dev ... master

Author SHA1 Message Date
netbenix
8b5909e2b1 Inital commit 2021-06-21 11:50:50 +02:00
netbenix
5d2c46afd0 Update makefile 2021-05-08 20:11:20 +02:00
netbenix
7c4e266424 Updated .gitignore 2021-05-08 20:08:47 +02:00
netbenix
ccbeb0578a Updated .gitignore 2021-05-08 20:07:59 +02:00
netbenix
88f11da06f Update 0.2.6 2021-05-08 20:06:22 +02:00
netbenix
8b6f6b88e0 Merge branch 'master' of https://github.com/netbenix/netbenixCMD
# Conflicts:
#	.gitignore
#	etc/man.c
#	etc/your-reality.c
#	etc/your-reality.h
#	main.c
#	makefile
2020-11-19 12:33:57 +01:00
netbenix
7e5b44c61c Merge branch 'dev' 2020-11-19 12:32:41 +01:00
15 changed files with 529 additions and 531 deletions

1
.gitignore vendored
View file

@ -16,4 +16,3 @@ man.o
calc.o
math_ext.o
your-reality.o
clear_screen.o

8
.idea/.gitignore generated vendored
View file

@ -1,8 +0,0 @@
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

18
.idea/misc.xml generated
View file

@ -1,18 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ExternalStorageConfigurationManager" enabled="true" />
<component name="MakefileSettings">
<option name="linkedExternalProjectsSettings">
<MakefileProjectSettings>
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="modules">
<set>
<option value="$PROJECT_DIR$" />
</set>
</option>
<option name="version" value="2" />
</MakefileProjectSettings>
</option>
</component>
<component name="MakefileWorkspace" PROJECT_DIR="$PROJECT_DIR$" />
</project>

6
.idea/vcs.xml generated
View file

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

View file

@ -8,7 +8,7 @@ Tested on: *Ubuntu, Debian, Arch*
Used libs for Linux: *gtk+3.0, libmysqlclient*
Version: *0.3.1*
Version: *0.2.6*
## Features:

BIN
clear_screen.o Normal file

Binary file not shown.

View file

@ -1,3 +1,4 @@
<<<<<<< HEAD
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
@ -22,7 +23,6 @@
//Main function to start man is at the bottom
//MAN ENTRIES
//LS
void manEntry_ls(){
printf("\033[0;33m##################\033[0m\n");
@ -36,30 +36,51 @@ void manEntry_ls(){
printf("\t\033[0;36mList files and directorys in the given directory. Sorts entries alphabetically.\033[0m\n\n");
}
//CD
void manEntry_cd(){
printf("\033[0;33m##################\033[0m\n");
printf("\033[0;33m# Manual of \033[0;36m'cd' \033[0;33m#\033[0m\n");
printf("\033[0;33m##################\033[0m\n");
printf("\033[0;33mNAME\033[0m\n");
printf("\t\033[0;36mcd - change directory\033[0m\n\n");
printf("\033[0;33mUSAGE\033[0m\n");
printf("\t\033[0;36mcd \033[0;35m[DIRECTORY]\033[0m\n\n");
printf("\033[0;33mDESCRIPTION\033[0m\n");
printf("\t\033[0;36mChanged the currently selected directory.\033[0m\n\n");
}
//MAN
void manEntry_man(){
printf("\033[0;33m###################\033[0m\n");
printf("\033[0;33m# Manual of \033[0;36m'man' \033[0;33m#\033[0m\n");
printf("\033[0;33m###################\033[0m\n\n");
//MAIN FUNCTION
void showManEntry(char *arg[]){
if(!strcmp(arg[1], "man")){
printf("Coming soon.\n");
} else if(!strcmp(arg[1], "ls")){
manEntry_ls();
} else {
printf("Entry not found.\n");
}
=======
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// Color Codes:
// Reset: \033[0m
// Red: \033[0;31m
// Green: \033[0;32m
// Yellow: \033[0;33m
// Blue: \033[0;34m
// Magenta: \033[0;35m
// Cyan: \033[0;36m
// BoldRed: \033[1;31m
// BoldGreen: \033[1;32m
// BoldYellow: \033[1;33m
// BoldBlue: \033[1;34m
// BoldMagenta: \033[1;35m
// BoldCyan: \033[1;36m
//Main function to start man is at the bottom
//MAN ENTRIES
//LS
void manEntry_ls(){
printf("\033[0;33m##################\033[0m\n");
printf("\033[0;33m# Manual of \033[0;36m'ls' \033[0;33m#\033[0m\n");
printf("\033[0;33m##################\033[0m\n\n");
printf("\033[0;33mNAME\033[0m\n");
printf("\t\033[0;36mman - manual\033[0m\n\n");
printf("\t\033[0;36mls - list directory contents\033[0m\n\n");
printf("\033[0;33mUSAGE\033[0m\n");
printf("\t\033[0;36mman \033[0;35m[COMMAND]\033[0m\n\n");
printf("\t\033[0;36mls \033[0;35m[DIRECTORY]\033[0m\n\n");
printf("\033[0;33mDESCRIPTION\033[0m\n");
printf("\t\033[0;36mShows the manual of given command.\033[0m\n\n");
printf("\t\033[0;36mList files and directorys in the given directory. Sorts entries alphabetically.\033[0m\n\n");
}
@ -67,12 +88,11 @@ void manEntry_man(){
//MAIN FUNCTION
void showManEntry(char *arg[]){
if(!strcmp(arg[1], "man")){
manEntry_man();
printf("Coming soon.\n");
} else if(!strcmp(arg[1], "ls")){
manEntry_ls();
} else if(!strcmp(arg[1], "cd")){
manEntry_cd();
} else {
printf("Entry not found.\n");
}
>>>>>>> f1cf6269f94065bfb8498dd7ef06bfbb61442b80
}

View file

@ -2,8 +2,6 @@
#define _MAN_H_
void manEntry_ls();
void manEntry_cd();
void manEntry_man();
void showManEntry(char *arg[]);
#endif

View file

@ -1,3 +1,4 @@
<<<<<<< HEAD
#include <stdio.h>
#include <unistd.h>
@ -36,3 +37,43 @@ void yourReality(){
p("\033[0m");
printf("\e[?25h");
}
=======
#include <stdio.h>
#include <unistd.h>
#include "your-reality.h"
//Lyrics from "Your Reality" by Dan Salvato
//fs -> flush & sleep
void fs(int milliseconds){
fflush(stdout);
usleep(milliseconds*1000);
}
//p -> printf
void p(char* txt){
printf(txt);
}
void yourReality(){
printf("\e[?25l");
p("Loading ");
for(int i = 0; i < 2; i++){
//\033[XC => X columns right
//\033[XD => X columns left
printf("\033[3D "); printf("\033[3D");
fs(500); printf("."); fs(500); printf("."); fs(500); printf("."); fs(500);
}
printf("\n");
printf("\033[0;33mEvery "); fs(350); printf("day, ");
fs(700);
p("I "); fs(450); p("imagine "); fs(350); p("a "); fs(350); p("future "); fs(350); p("where "); fs(750);
p("i "); fs(300); p("can "); fs(300); p("be "); fs(300); p("with "); fs(300); p("you.");
p("\033[0m");
printf("\e[?25h");
}
>>>>>>> f1cf6269f94065bfb8498dd7ef06bfbb61442b80

View file

@ -1,6 +1,14 @@
<<<<<<< HEAD
#ifndef _YOUR_REALITY_H
#define _YOUR_REALITY_H
void yourReality();
=======
#ifndef _YOUR_REALITY_H
#define _YOUR_REALITY_H
void yourReality();
>>>>>>> f1cf6269f94065bfb8498dd7ef06bfbb61442b80
#endif

View file

@ -1,15 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.38.2 -->
<!-- Generated with glade 3.36.0 -->
<interface>
<requires lib="gtk+" version="3.22"/>
<object class="GtkWindow" id="window">
<property name="width-request">300</property>
<property name="height-request">230</property>
<property name="can-focus">False</property>
<property name="width_request">300</property>
<property name="height_request">230</property>
<property name="can_focus">False</property>
<property name="resizable">False</property>
<property name="window-position">center</property>
<property name="default-width">300</property>
<property name="default-height">230</property>
<property name="window_position">center</property>
<property name="default_width">300</property>
<property name="default_height">230</property>
<property name="icon">../logo.png</property>
<property name="gravity">center</property>
<signal name="focus-in-event" handler="on_window_focus_in_event" swapped="no"/>
@ -17,16 +17,16 @@
<child>
<object class="GtkFixed" id="fixed1">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="can_focus">False</property>
<child>
<object class="GtkButton" id="button1">
<property name="label" translatable="yes">Ok</property>
<property name="width-request">100</property>
<property name="height-request">31</property>
<property name="width_request">100</property>
<property name="height_request">31</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Pink Fluffy Unicorns</property>
<property name="can_focus">True</property>
<property name="receives_default">True</property>
<property name="tooltip_text" translatable="yes">Pink Fluffy Unicorns</property>
<signal name="clicked" handler="on_button1_clicked" swapped="no"/>
</object>
<packing>
@ -36,14 +36,14 @@
</child>
<child>
<object class="GtkLabel" id="label">
<property name="width-request">369</property>
<property name="height-request">20</property>
<property name="width_request">369</property>
<property name="height_request">20</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="can_focus">False</property>
<property name="halign">center</property>
<property name="valign">center</property>
<property name="justify">center</property>
<property name="max-width-chars">50</property>
<property name="max_width_chars">50</property>
<attributes>
<attribute name="font-desc" value="System-ui Bold 10"/>
<attribute name="stretch" value="normal"/>
@ -56,12 +56,12 @@
<child>
<object class="GtkCheckButton" id="check">
<property name="label" translatable="yes">Toggle</property>
<property name="width-request">107</property>
<property name="height-request">24</property>
<property name="width_request">107</property>
<property name="height_request">24</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">False</property>
<property name="draw-indicator">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
<property name="draw_indicator">True</property>
<signal name="toggled" handler="on_gay_check_toggled" swapped="no"/>
</object>
<packing>
@ -71,10 +71,10 @@
</child>
<child>
<object class="GtkSpinner" id="useless_spinner">
<property name="width-request">40</property>
<property name="height-request">40</property>
<property name="width_request">40</property>
<property name="height_request">40</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="can_focus">False</property>
<property name="active">True</property>
</object>
<packing>
@ -84,11 +84,11 @@
</child>
<child>
<object class="GtkLevelBar" id="level">
<property name="width-request">100</property>
<property name="height-request">20</property>
<property name="width_request">100</property>
<property name="height_request">20</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="max-value">100</property>
<property name="can_focus">False</property>
<property name="max_value">100</property>
</object>
<packing>
<property name="x">8</property>
@ -97,5 +97,8 @@
</child>
</object>
</child>
<child type="titlebar">
<placeholder/>
</child>
</object>
</interface>

20
main.c
View file

@ -15,16 +15,14 @@
#include "utils/sql_test.h"
#include "etc/logo.h"
#include "etc/man.h"
#include "etc/math_ext.h"
#include "etc/math.h"
#include "etc/your-reality.h"
#include "utils/logger.h"
#include "utils/sys_info.h"
#include "utils/update_check.h"
#include "utils/calc.h"
#include "utils/clear_screen.h"
#define VERSION "0.3.1"
#define VERSION "0.2.5"
bool VER_CHECK_ON_START = true;
bool DEV_MODE = false;
@ -48,6 +46,7 @@ bool FUN_CONTENT = false;
//Handles the commands
int commandHandler(char *cmd){
char *token = strtok(cmd, " ");
int argc = 1;
char *arg[10];
@ -74,6 +73,7 @@ int commandHandler(char *cmd){
printf("\033[1;34mexit\033[0m : exit the program\n");
return 0;
} else if(!strcmp(arg[0], "version")){
printf("netbenixCMD (Version: \033[1;34m%s\033[0m)\n", VERSION);
printf("Author: \033[1;34m%s\033[0m\n", "netbenix");
printf("Github: \033[1;34mhttps://github.com/netbenix/netbenixCMD\033[0m\n");
@ -90,9 +90,6 @@ int commandHandler(char *cmd){
} else if(!strcmp(arg[0], "man")){
showManEntry(arg);
return 0;
} else if(!strcmp(arg[0], "calc")){
startCalc();
return 0;
} else if(!strcmp(arg[0], "rainbow") && FUN_CONTENT){
while(1){
printf("\033[0;31m#####");
@ -119,7 +116,6 @@ int main(int argc, char *argv[]){
snprintf(buffer, sizeof(buffer), "Starting netbenixCMD (Version: %s)", VERSION);
logger(buffer);
log_Specs(); //Log system specs
clearScreen(); //Clear the screen
showLogo(); //Show the logo
logger("Logo Displayed.");
if(argc > 2){
@ -131,19 +127,19 @@ int main(int argc, char *argv[]){
//Check the startup args
if(argc == 2){
if(!strcmp(argv[1], "--help")){
logger("Showing help.");
logger("Showing Help.");
outputHelp();
exit(0);
} else if (!strcmp(argv[1], "--gtk-test")){
logger("Stating GTK test.");
logger("Stating GTK Test.");
createGTKTestWindow();
exit(0);
} else if (!strcmp(argv[1], "--sys-info")){
logger("Showing system information.");
logger("Showing System Information.");
print_Specs();
exit(0);
} else if (!strcmp(argv[1], "--sql-test")){
logger("Starting SQL test.");
logger("Starting SQL Test.");
testSQLConnection();
exit(0);
} else if (!strcmp(argv[1], "--no-version-check")){

View file

@ -1,8 +1,9 @@
CC= gcc
ARGS= -export-dynamic -ansi -std=gnu99
CFLAGS= $(shell pkg-config --cflags gtk+-3.0) -I/usr/include/mysql
LDLIBS= $(shell pkg-config --libs gtk+-3.0) -L/usr/lib/mysql -lmysqlclient -lm
OBJ= main.o logo.o logger.o help.o sys_info.o gtk_test.o sql_test.o show_dir.o change_dir.o update_check.o man.o your-reality.o math_ext.o calc.o clear_screen.o
LDLIBS= $(shell pkg-config --libs gtk+-3.0) -L/usr/lib/mysql -lmysqlclient
OBJ= main.o logo.o logger.o help.o sys_info.o gtk_test.o sql_test.o show_dir.o change_dir.o update_check.o man.o your-reality.o math_ext.o calc.o
netbenixCMD: $(OBJ)
$(CC) $(CFLAGS) $(ARGS) -o netbenixCMD $(OBJ) $(LDLIBS)
main.o: main.c
@ -27,11 +28,9 @@ update_check.o: utils/update_check.c
$(CC) $(CFLAGS) -c utils/update_check.c
man.o: etc/man.c
$(CC) $(CFLAGS) -c etc/man.c
math_ext.o: etc/math_ext.c
math.o: etc/math_ext.c
$(CC) $(CFLAGS) -c etc/math_ext.c
your-reality.o: etc/your-reality.c
$(CC) $(CFLAGS) -c etc/your-reality.c
calc.o: utils/calc.c
$(CC) $(CFLAGS) -c utils/calc.c
clear_screen.o: utils/clear_screen.c
$(CC) $(CFLAGS) -c utils/clear_screen.c

View file

@ -1,28 +0,0 @@
#include <stdio.h>
#if defined(_WIN32)
#include <windows.h>
#elif defined(__linux__)
#include <sys/ioctl.h>
#include <unistd.h>
#endif
#include "clear_screen.h"
void clearScreen(){
#if defined(_WIN32)
CONSOLE_SCREEN_BUFFER_INFO csbi;
int rows;
GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &csbi);
rows = csbi.srWindow.Bottom - csbi.srWindow.Top + 1;
for(int i = 0; i < rows; i++){
printf("\n");
}
#elif defined(__linux__)
struct winsize w;
ioctl(STDOUT_FILENO, TIOCGWINSZ, &w);
for(int i = 0; i < w.ws_row; i++){
printf("\n");
}
#endif
}

View file

@ -1,6 +0,0 @@
#ifndef _CLEAR_SCREEN_H_
#define _CLEAR_SCREEN_H_
void clearScreen();
#endif