Skip to content

ilil2/Epiconf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

226 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

EpiConf

EpiConf is a complete configuration pack designed for EPITA students.
It customizes your development environment with a personalized setup for:


πŸ“¦ Installation

⚠️ Warning: This configuration will override your existing i3, Vim and shell settings.
Make sure to back up your current configuration before installing.

Run this in your shell:

curl -L epiconf.getfdn.com | sh -s

During setup, you will be asked to create a password.
This password is not your system password – it is only used to secure your .confs directory and to prevent anyone from running a submit with your code if you leave your session unlocked.
Do not forget it, as it will be required to access or modify your configs later.

πŸ” Security note: Never forget to i3lock!

You can also open this documentation anytime with :

epiconf

You can update the config with :

update-conf

And if you want to delete Epiconf and get back to the default config of epita :

reset-conf

reset the config also remove Epiconf settings and startup script.


Epiconf Settings

You can change the main settings of the config in .confs/epiconf/config.ini

General

  • MOD β†’ Keycaps for I3 (Mod4 = Win, Mod1 = Alt)
  • EPICONF_ASCII β†’ Write EPICONF in the top of shell
  • INACTIVITY_TIME β†’ Time before auto i3lock (in second)

Wallpaper

  • WALLPAPER_TIME β†’ Time before change wallpaper (in second)

Game

  • GAMES β†’ Activate games commands (lunar, osu)

Music

  • MUSIC_LOADER β†’ Install Spotify and Deezer
  • MUSIC β†’ Main music app (spotify, deezer)

Polybar Left

  • xworkspaces β†’ Show active and used workspaces

Polybar Right

  • afssize β†’ Show the afs size
  • memory β†’ Show the RAM utilisation
  • cpu β†’ Show the CPU utilisation
  • date β†’ Show the date and hour

πŸ–₯️ i3 Configuration

Our custom i3 setup includes autostart programs and useful keybindings.

Automatic startup

  • Opens a terminal and Firefox on login
  • Changes wallpaper every 5 minutes
  • Automatically start the scripts located in .confs/epiconf/start_script/

πŸ–ΌοΈ You can change the wallapaper in .confs/config/wallpapers/.

βš™οΈ All startup scripts must be Bash files with execution permissions already set.

Shortcuts

  • Win + i β†’ Lock screen (i3lock)
  • Ctrl + Shift + L β†’ Matrix i3lock
  • Alt + Tab β†’ Switch workspace

✍️ Vim Configuration

We have enhanced Vim with useful plugins and shortcuts.

Plugins

Shortcuts

  • Ctrl + x β†’ Save and exit
  • Ctrl + q β†’ Quit without saving
  • Ctrl + s β†’ Save
  • Ctrl + z β†’ Undo
  • Ctrl + y β†’ Redo
  • Ctrl + c β†’ Copy (in visual mode)
  • Ctrl + v β†’ Paste (in visual mode)
  • Ctrl + t β†’ Toggle file tree
  • Ctrl + f β†’ Clang-format file
  • Type { ( [ " ' β†’ Auto-pair brackets/quotes
  • Snippets:
    • @for β†’ for syntax
    • @jfor β†’ for syntax with j
    • @kfor β†’ for syntax with k
    • @while β†’ while syntax
    • @if β†’ if syntax
    • @elif β†’ else if syntax
    • @else β†’ else syntax
    • @marg β†’ main function
    • @main β†’ main with no arguments
    • @std β†’ classics includes
    • @pd β†’ printf syntax
    • @struct β†’ struct syntax
    • @dbp β†’ main with printf

Gdb

A new gdb config:

  • Automatic tab
  • Automatic C-x C-o

New commands:

  • epiconf β†’ Show epiconf commands

πŸ› οΈ The Taskbar

A new top taskbar displays:

  • Current workspace
  • Clock
  • AFS storage usage
  • RAM usage
  • CPU usage

🎨 User Interface

  • Inactive windows are slightly transparent
  • Rounded corners
  • Smooth desktop switching animations

🐚 Command Prompt

New features :

  • Cursor become a bar
  • Add auto completion

Our shell prompt is inspired by Kali Linux and shows:

  • Username
  • Current directory
  • Git branch & changes

Extra commands

  • gtg β†’ Create .gitignore
  • ath β†’ Create AUTHORS file
  • rdm β†’ Create basic README
  • mkarchi β†’ Run all the above at once
  • lunar β†’ Play Minecraft
  • osu β†’ Play OSU
  • nix-clear β†’ Remove orphaned libraries
  • bluetooth β†’ Start Bluetooth manager
  • cdclone β†’ Clone a git repository and go inside
  • add β†’ Do git add and git status (ex: add *)
  • push β†’ Do git commit -m and git push (ex: push "Init")
  • cf β†’ Do a clang-format -i command
  • cfe β†’ Do a cp the .clang-format file in the repository and do a clang-format-epita
  • carchi β†’ Create a directory, a .c and a .h
  • lc β†’ Make a gcover
  • config β†’ Show the config file

Access to .confs is password protected for extra security.


πŸ“· Screenshots

User Interface Example 2

πŸ“œ License

MIT License – free to use and modify.

About

My Epita Confs

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors