FNC is an Extremely lightweight C++ remake of GNU Cat

Related tags

Miscellaneous fnc
Overview

FNC is not CAT

FNC is an barebones recreation of GNU CAT in C++ that removes unecessary options, which could be useful if you need to shave down a system to the kilobytes.

Prequisites

You need these packages to install this software

coreutils

Installation

You can install FNC with make

git clone https://github.com/InfinityFloof/fnc.git
make
sudo make install

Usage

fnc <file1> <file2> <file3...
Issues
  • Replace C implementation

    Replace C implementation

    Should fix #7

    Changes :

    No need to use getline, it allocs - Bad :(
    Uses a statically allocated buffer in the stack
    Refactor of the usage to kinda match the original cat one
    The size of the buffer can be changed as pleased
    Some type change to fix warnings gcc might give with -Wall and -Wextra
    
    opened by huntears 0
  • C implementation leaks a lot

    C implementation leaks a lot

    https://github.com/InfinityFloof/fnc/blob/b7357a3c938dce678c4ec15e8a745aa817f00b7e/fnc.c#L27

    getline returns an allocated string, and here you are not freeing it. You should just use read with a statically allocated buffer in this case.

    opened by huntears 0
  • implementation for x86_64 linux under 10kb

    implementation for x86_64 linux under 10kb

    1. Made a new implementation for fnc using x86_64 assembly that uses under 10kb of disk space
    2. Added the linux64 target in the makefile to assemble the new implementation as it is platform specific.
    opened by Mathewnd 0
  • close files + smaller executable

    close files + smaller executable

    • fix: close file after we printed it
    • add some compilers flags to make the executable smaller
      • previously: 17 824b
      • with -Os: 17 600
      • with -s: 14 600
      • with -fno-rtti -fno-exceptions: 14 498
    opened by Supercip971 0
Adafruit GFX compatible arduino library for using cat thermal printers with the ESP32

CatGFX This library offers a Adafruit GFX "driver" for ESP32 and the cheap cat (or rabbit?) BLE thermal printers like this one: For usage information

Claus Näveke 2 Jul 15, 2022
Rat is a very simplified cat clone that includes only stdio library

rat - simplified cat clone. Rat is a very simplified cat clone that includes only stdio library. It's currently much slower than cat because it doesnt

r[0x30]tthin 1 Nov 8, 2021
A port of uMario (a widescreen remake of SMB NES) to the Playstation vita.

uMario PSVita Port A port of uMario (a widescreen remake of SMB NES) to the Playstation vita. Gameplay video: https://youtu.be/QZDfrHlEhj4 uMario: htt

WeegeeDEV 18 Jul 5, 2022
ImmunityCheat Loader remake

ImmunityCheat-Loader-remake This is one of the first ever "projects" i made with ImGui so iam sorry if its not that good c: this is not the real immun

JustMiraii 11 Jul 11, 2022
RemixDB: A read- and write-optimized concurrent KV store. Fast point and range queries. Extremely low write-amplification.

REMIX and RemixDB The REMIX data structure was introduced in paper "REMIX: Efficient Range Query for LSM-trees", FAST'21. This repository maintains a

Xingbo Wu 75 Jul 22, 2022
dwm is an extremely fast, small, and dynamic window manager for X.

dwm - dynamic window manager dwm is an extremely fast, small, and dynamic window manager for X. My Patches This is in the order that I patched everyth

Christian Chiarulli 30 Jun 27, 2022
Extremely minimal raw Wayland greeter for greetd.

greetd-mini-wl-greeter An extremely simple raw Wayland greeter for greetd, inspired by lightdm-mini-greeter. Usage Follow the same steps as for e.g. g

Philip Jones 16 Jun 27, 2022
Small Extremely Powerful Header Only C++ Lexical Analyzer/String Parser Library

lexpp Small Extremely Powerful Header Only C++ Lexical Analyzer/String Parser Library Lexpp is made with simplicity and size in mind. The entire libra

Jaysmito Mukherjee 49 Jun 21, 2022
Simple emulator for the extremely popular Chip-8 Virtual Machine.

C8_Emulator [System Structure Reference] #@@@@@@@@@@@. @@@@@@@@@@@@@@@@,

Digvijay Singh Shekhawat 1 Nov 6, 2021
An extremely basic Python script to split word-based data into high and low byte files.

An extremely basic Python script to split word-based data into high and low byte files. This is for use in programming 16 bit computer ROMs.

null 1 Dec 26, 2021
A FLOSS implementation of the ground breaking MacBook camera system for GNU/Linux

GNU/Notch Tired of your friends making fun of your dinosaur laptop? Can't afford anything but Free Software? Fret not for this simple X11 based progra

null 3 Jun 1, 2022
emily - GNU/Linux applications and scripts launcher.

emily emily - GNU/Linux applications and scripts launcher. For What? Firstly emily has been maden as a replacement for i3-dmenu, because i don't like

null 1 May 13, 2022
An ATSC 3.0 Transmitter for GNU Radio

# Copyright 2021 Ron Economos # # This file is part of gr-atsc3 # # gr-atsc3 is free software; you can redistribute it and/or modify # it under the te

Ron Economos 12 Aug 2, 2022
Simple Fetch Software for GNU/Linux

ponyfetch Simple Fetch Software for GNU/Linux Current Version: 1.2 Whats new in 1.2? You can now change the ASCII art and the labels used in ponyfetch

FlutterHeart the Alicorn 3 Nov 22, 2021
GNU project for mm32 chip

编译环境安装(以下是ubuntu上的示例) git 下载项目工程 git clone https://github.com/YanMinge/mm32_project_demo 下载最新的 gcc开发环境 sudo apt-get install sudo apt-get install gcc-a

Mark Yan 2 Mar 31, 2022
GNU-EFI fork without the bs.

reduced-gnu-efi =============== reduced-gnu-efi is a fork of GNU-EFI that strips out all code save for the relocation assembly stubs and the EFI head

Limine 11 Jul 12, 2022
Volatile ELF payloads generator with Metasploit integrations for testing GNU/Linux ecosystems against low-level threats

Revenant Intro This tool combines SCC runtime, rofi, Msfvenom, Ngrok and a dynamic template processor, offering an easy to use interface for compiling

Red Code Labs 54 Aug 10, 2022
Tiny implementation of the GNU/Linux CGroupFS (sans resource controllers) as a PUFFS or FUSE filesystem for BSD platforms

CGrpFS CGrpFS is a tiny implementation of the GNU/Linux CGroup filesystem for BSD platforms. It takes the form of a either a PUFFS or FUSE filesystem,

null 11 Jan 10, 2022
Implements a complete GNU/Linux program

Linux-app Implements a complete GNU/Linux program The example program is part of a system for monitoring a running GNU/Linux system. It includes these

Spoorthi Naik 1 Jun 19, 2022