{"id":30260269,"url":"https://github.com/laluka/skillarch","last_synced_at":"2025-08-15T19:04:27.398Z","repository":{"id":281357717,"uuid":"942039598","full_name":"laluka/skillarch","owner":"laluka","description":"SkillArch","archived":false,"fork":false,"pushed_at":"2025-08-07T16:00:21.000Z","size":25240,"stargazers_count":31,"open_issues_count":2,"forks_count":21,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-08-07T16:27:16.111Z","etag":null,"topics":["arch","distro","efficient","exploit","fast","hardening","i3","offensive","os","pentest","security","skill"],"latest_commit_sha":null,"homepage":"https://linktr.ee/TheLaluka","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/laluka.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-03-03T13:27:37.000Z","updated_at":"2025-08-07T16:00:24.000Z","dependencies_parsed_at":"2025-03-08T15:19:18.943Z","dependency_job_id":"f543e325-4301-4775-a998-f5dbdafeed8e","html_url":"https://github.com/laluka/skillarch","commit_stats":null,"previous_names":["laluka/skillarch"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/laluka/skillarch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laluka%2Fskillarch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laluka%2Fskillarch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laluka%2Fskillarch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laluka%2Fskillarch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/laluka","download_url":"https://codeload.github.com/laluka/skillarch/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laluka%2Fskillarch/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270617818,"owners_count":24617121,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-15T02:00:12.559Z","response_time":110,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arch","distro","efficient","exploit","fast","hardening","i3","offensive","os","pentest","security","skill"],"created_at":"2025-08-15T19:01:31.260Z","updated_at":"2025-08-15T19:04:27.383Z","avatar_url":"https://github.com/laluka.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SkillArch - [![Security Checks \u0026 Docker Builds](https://github.com/laluka/skillarch/actions/workflows/cicd.yml/badge.svg)](https://github.com/laluka/skillarch/actions/workflows/cicd.yml)\n\n\u003cimg src='assets/logo-round-cold.png' width='250'\u003e\u003cimg src='assets/logo-round-hot.png' width='250'\u003e\n\n\u003e The lite/full install takes 10/15 minutes 🕑️\\\n\u003e And here is a gentle rice 😇\n\n\u003cimg src='assets/rice-01.png' width='800'\u003e\n\n---\n\n## How To Install\n\n### SIMPLE / NO-CUSTOMIZE / NO-BACKUP\n\n\u003e Please watch this 5mn intro video to onboard yourself! 🙏\n\n[![](https://img.youtube.com/vi/HB1hxJgGoDo/0.jpg)](https://youtu.be/HB1hxJgGoDo)\n\n- First, download the `Desktop Edition` at https://cachyos.org/download/\n- Install it, pick the `Gnome` flavor\n- Then open `Console` and install SkillArch 🥂\n\n```bash\ngit clone https://github.com/laluka/skillarch\nsudo mv skillarch /opt/skillarch \u0026\u0026 cd /opt/skillarch\nmake install # Then reboot \u0026\u0026 pick i3 at login\n\n# Update by running this command (will pull changes \u0026 apply them):\nska-update-simple\n```\n\n###  ADVANCED / FULL-CUSTOMIZE / FULL-BACKUP\n\n\u003e Please watch this 10mn intro video to onboard yourself! 🙏\n\n[![](https://img.youtube.com/vi/Wq6CmJJnTJk/0.jpg)](https://youtu.be/Wq6CmJJnTJk)\n\n1. [Fork this repo](https://github.com/laluka/skillarch/fork)\n1. Install `your` SkillArch with the [usual install process](#simple--no-customize--no-backup)\n1. Add the upstream source: `git remote add upstream https://github.com/laluka/skillarch.git`\n1. When you'll want to `add a tweak` or  `update your setup` 🫶\n\n```bash\n# Update by running this command (simply follow the process):\nska-update-advanced\n\n# \"The process\" is mostly like below:\n# SAVE your changes on your repo\ngit add foo ; git commit -m i-added-foo ; git push\n# Then, from a CLEAN git state\nska \u0026\u0026 git status\n# PULL \u0026 CHECKOUT upstream changes\ngit fetch upstream \u0026\u0026 git checkout main\n# MERGE upstream changes\ngit merge upstream/main\n# SAVE your new current state\ngit push origin main\n# Check \u0026 Compare your current drift from upstream\ngit diff upstream/main\n# Reapply with latest changes\nska-update-simple\n```\n\n\u003e ⚠️ Remember to NEVER add secrets in your dotfiles 🙏\\\n\u003e ⚠️ Your fork is also PUBLIC, use `source ~/.myaliases` instead!\\\n\u003e ⚠️ I know git is hard, but it's so powerful it's worth it, trust me.\n\n---\n\n## Documentation\n\n### Get Help\n\n```bash\nmake help\n# Welcome to SkillArch! 🌹\n# Usage: make [target]\n# Targets:\n#   help                Show this help message\n#   install             Install SkillArch\n#   install-base        Install base packages\n#   install-cli-tools   Install system packages\n#   install-shell       Install shell packages\n#   install-docker      Install docker\n#   install-gui         Install gui, i3, polybar, kitty, rofi, picom\n#   install-gui-tools   Install system packages\n#   install-offensive   Install offensive tools\n#   install-wordlists   Install wordlists\n#   install-hardening   Install hardening tools\n#   update              Update SkillArch\n#   docker-build        Build lite docker image locally\n#   docker-build-full   Build full docker image locally\n#   docker-run          Run lite docker image locally\n#   docker-run-full     Run full docker image locally\n#   clean               Clean up system and remove unnecessary files\n```\n\n\u003e Or join the SkillArch Discord server 🍀\\\n\u003e ➡️ https://discord.com/invite/tH8wEpNKWS ⬅️\\\n\u003e Yes, I help in the SkillArch channel, not in DMs! 😇\n\n### Ska Helpers, i3 bindings, aliases, tools\n\n| Alias | Description |\n|-------|-------------|\n| `ska-help-aliases` | Fuzzy-find aliases |\n| `ska-help-bindings` | Fuzzy-find i3 bindings |\n| `ska-help-packages` | Fuzzy-find installed packages |\n| `ska-sudo-unlock` | Unlock current user after 3 sudo fails |\n| `ska-update-simple` | Update SkillArch repo \u0026 starts install |\n| `ska-update-advanced` | Helper to Pull Upstream \u0026 merge |\n\n### MISC Gotchas\n\n- If `make install` or `ska-update-simple` loop on a y/n question, fix your pacman config first! 😉\n- The main config is azerty (shhh I know), here is a reference to [tweak your config back to qwerty](https://github.com/CachyOS/cachyos-i3wm-settings/blob/develop/etc/skel/.config/i3/config)\n- Kitty visual/rectangle select is done with `ctrl+alt+click/drag`, you're welcome!\n- The docker `latest` is actually the `lite` image with everything CLI related\n- The docker `full` image contains GUI stuff and wordlists\n- Why `sleep` in `Makefile`? Building TOO fast was triggering github limit-rate\n- No [CachyOs on ARM](https://discuss.cachyos.org/t/arm-future-for-cachyos/727), therefore no SkillArch on ARM.\n- Extensions are installed for VsCode. Cursor packaging is weird, so while it's open: `ctrl+shift+p` \u003e `Import VsCode Extensions`\n- Chrome extensions are not installed by default. Have a look to [/config/chrome-extensions.lst](/config/chrome-extensions.lst)\n\n### VM \u0026 VirtualBox Stuff\n\n\u003e I've had tons of issues with VirtualBox laterly, and things worked PERFECTLY on Gnome Boxes (from `qemu-full` and `gnome-extra`), I strongly suggest using it instead, see the install guide above.\n\n- The `ska-vbox-install-guestutils` alias will auto-install `virtualbox-guest-utils`\n- In `VirtualBox`, when i3 starts it will run `VBoxClient-all` for clipboard \u0026 goodies\n- Transparency `CAN` work with `picom` but:\n  - It requires to enable `enable hardware virtualization`\n  - It is basically `very slow` even with a good GPU\n  - I advise to `not` use it, but do your things, PR opens!\n  - Currently it's only started in i3 while not running in an hypervisor\n  - In `~/config/i3/config` : `killall -q picom ; grep -qF hypervisor /proc/cpuinfo || picom`\n\n### Multiple Monitor\n\n1. Open arandr \u0026 set your screen layout: Drag \u0026 Drop\n1. Set your Primary screen: Right Click \u003e Check `Primary`\n1. Save your layout: Layout \u003e Save As \u003e `arandr-main-layout.sh`\n1. Auto apply layout at login time:\n\n```bash\necho \"$HOME/.screenlayout/arandr-main-layout.sh \u0026\" \u003e ~/.xprofile\nchmod +x ~/.xprofile\n# Logout, Login, should work first try!\n```\n\n- If for some reasons, multiple polybar appear, it's because no primary monitor is assigned\n - Check it's actually true: `polybar  --list-monitors` # Should have one primary label\n - Fix it by openin `arandr` + right click to set `primary` on your main screen.\n - Reload i3 with `mod+Shift+r`, then make it permanent, aka goto doc `Multiple Monitor`\n\n### Docker Usage\n\nhttps://hub.docker.com/r/thelaluka/skillarch\n\n```bash\n# lite image: CLI only\nmake docker-run\n# full image: GUI stuff with X11 socket mounted!\nmake docker-run-full\n```\n\n### Main i3 bindings \u0026 aliases\n\n- For aliases checkout [config/aliases](/config/aliases)\n\n```bash\n# Help\nbindsym $mod+h exec kitty --title \"Help: SkillArch Bindings\" zsh -ic \"ska-help-bindings\"\nbindsym $mod+Shift+h exec kitty --title \"Help: SkillArch Aliases\" zsh -ic \"ska-help-aliases\"\nbindsym $mod+Control+h exec kitty --title \"Help: SkillArch packages\" zsh -ic \"ska-help-packages\"\n\n# Sound \u0026 Light\nbindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% \u0026\u0026 $refresh_i3status\nbindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% \u0026\u0026 $refresh_i3status\nbindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle \u0026\u0026 $refresh_i3status\nbindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle \u0026\u0026 $refresh_i3status\nbindsym XF86MonBrightnessUp exec --no-startup-id brightnessctl set +20%   # \u0026\u0026 notify-send --icon=/dev/null --expire-time=500 \"Brightness +20%\"\nbindsym XF86MonBrightnessDown exec --no-startup-id brightnessctl set 20%- # \u0026\u0026 notify-send --icon=/dev/null --expire-time=500 \"Brightness -20%\"\nbindsym $mod+m exec pactl set-source-mute @DEFAULT_SOURCE@ toggle\n\n# Term \u0026 Apps\nbindsym $mod+Return exec /usr/bin/kitty\nbindsym $mod+Shift+Return exec /usr/bin/google-chrome-stable\nbindsym $mod+Shift+Q kill\nbindsym $mod+space exec --no-startup-id rofi -show drun\nbindsym $mod+Shift+space exec --no-startup-id rofi -show run\nbindsym $mod+Control+space exec --no-startup-id rofi -show window\n\n# Power \u0026 Lock\nbindsym $mod+Escape exec rofi -show power-menu -modi power-menu:rofi-power-menu\nbindsym $mod+l exec i3lock-fancy -f Bitstream-Vera-Serif -t 'Welcome back to SkillArch'\n\n# Window \u0026 Workspace\nbindsym $mod+Left focus left\nbindsym $mod+Down focus down\nbindsym $mod+Up focus up\nbindsym $mod+Right focus right\nbindsym $mod+Shift+Left move left\nbindsym $mod+Shift+Down move down\nbindsym $mod+Shift+Up move up\nbindsym $mod+Shift+Right move right\nbindsym $mod+h split h\nbindsym $mod+v split v\nbindsym $mod+f fullscreen toggle\nbindsym $mod+BackSpace split toggle\nbindsym $mod+s layout stacking\nbindsym $mod+z layout tabbed\nbindsym $mod+BackSpace layout toggle split\nbindsym $mod+Shift+f floating toggle\nbindsym $mod+Shift+BackSpace focus mode_toggle\nbindsym $mod+q focus parent\nbindsym $mod+ampersand workspace number $ws1\nbindsym $mod+eacute workspace number $ws2\nbindsym $mod+quotedbl workspace number $ws3\nbindsym $mod+apostrophe workspace number $ws4\nbindsym $mod+parenleft workspace number $ws5\nbindsym $mod+minus workspace number $ws6\nbindsym $mod+egrave workspace number $ws7\nbindsym $mod+underscore workspace number $ws8\nbindsym $mod+ccedilla workspace number $ws9\nbindsym $mod+agrave workspace number $ws10\nbindsym $mod+Shift+1 move container to workspace number $ws1\nbindsym $mod+Shift+eacute move container to workspace number $ws2\nbindsym $mod+Shift+3 move container to workspace number $ws3\nbindsym $mod+Shift+4 move container to workspace number $ws4\nbindsym $mod+Shift+5 move container to workspace number $ws5\nbindsym $mod+Shift+6 move container to workspace number $ws6\nbindsym $mod+Shift+egrave move container to workspace number $ws7\nbindsym $mod+Shift+8 move container to workspace number $ws8\nbindsym $mod+Shift+ccedilla move container to workspace number $ws9\nbindsym $mod+Shift+agrave move container to workspace number $ws10\nbindsym $mod+Shift+c reload\nbindsym $mod+Shift+r restart\n\n# Resize \u0026 Scratchpad\nbindsym $mod+Shift+e exec \"i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'\"\nbindsym Left resize shrink width 10 px or 10 ppt\nbindsym Down resize grow height 10 px or 10 ppt\nbindsym Up resize shrink height 10 px or 10 ppt\nbindsym Right resize grow width 10 px or 10 ppt\nbindsym Return mode \"default\"\nbindsym Escape mode \"default\"\nbindsym $mod+r mode \"default\"\nbindsym $mod+r mode \"resize\"\nbindsym $mod+shift+a move to scratchpad\nbindsym $mod+a scratchpad show\n\n# Custom Apps \u0026 Settings\nbindsym $mod+p exec flameshot gui\nbindsym $mod+Shift+p exec flameshot full -p ~/Pictures/\nbindsym $mod+s exec pavucontrol\nbindsym $mod+shift+s exec XDG_CURRENT_DESKTOP=GNOME gnome-control-center\nbindsym $mod+e exec emote\nbindsym $mod+b exec blueman-manager\nbindsym $mod+w exec XDG_CURRENT_DESKTOP=GNOME gnome-control-center wifi\nbindsym $mod+n exec nautilus\nbindsym $mod+v exec vlc\nbindsym $mod+c exec code\nbindsym $mod+k exec cursor\n```\n\n### Installed Packages, Plugins, Tools\n\n- For an exhaustive view inspect [/Makefile](/Makefile)\n\n```bash\n# Pacman Packages\narandr asciinema base-devel bat bettercap bison blueman bottom brightnessctl burpsuite bzip2 ca-certificates cheese cloc cmake code code-marketplace curl discord dmenu docker docker-compose dos2unix dragon-drop-git dunst emote exa expect fastfetch feh ffmpeg filezilla flameshot foremost fq fx gdb ghex ghidra git git-delta gitleaks glow gnupg google-chrome gparted gron guvcview hashcat htmlq htop hwinfo i3-gaps i3blocks i3lock i3lock-fancy-git i3status icu inotify-tools iproute2 jless jq kdenlive kitty kompare lazygit libedit libffi libjpeg-turbo libpcap libpng libreoffice-fresh libxml2 libzip llvm lsof ltrace make meld metasploit mise mlocate mplayer ncurses neovim net-tools ngrep nm-connection-editor nmap nomachine obs-studio-browser okular opensnitch openssh openssl parallel perl-image-exiftool php-gd picom pkgconf polybar postgresql-libs python-virtualenv qbittorrent re2c readline ripgrep rlwrap rofi signal-desktop socat sqlite sshpass superfile sysstat tmate tmux tor torbrowser-launcher traceroute trash-cli tree unzip vbindiff veracrypt vim viu vlc-luajit websocat wget wireshark-qt xclip xsv xz yay zip zsh zsh-autosuggestions zsh-completions zsh-history-substring-search zsh-syntax-highlighting zsh-theme-powerlevel10k cronie audacity xorg-xhost gnu-netcat archlinux-keyring jdk21-openjdk polkit-gnome\n\n# Yay packages\nffuf gau pdtm-bin waybackurls cursor-bin fswebcam i3-battery-popup-git python-pipx rofi-power-menu fabric-ai-bin\n\n# Mise tools\nusage pdm rust terraform golang python nodejs\n\n# Mise golang tools\nsw33tLie/sns glitchedgitz/cook x90skysn3k/brutespray sensepost/gowitness\n\n# Pdtm tools\naix alterx asnmap cdncheck chaos-client cloudlist cvemap dnsx httpx interactsh-client interactsh-server katana mapcidr naabu notify nuclei proxify shuffledns simplehttpserver subfinder tldfinder tlsx tunnelx uncover urlfinder\n\n# Pipx tools\nargcomplete bypass-url-parser dirsearch exegol pre-commit sqlmap wafw00f yt-dlp semgrep\n\n# OMZ plugins\ncolored-man-pages docker extract fzf mise npm terraform tmux zsh-autosuggestions zsh-completions zsh-syntax-highlighting ssh-agent\n\n# VsCode Extensions\nbibhasdn.unique-lines\neriklynd.json-tools\nmechatroner.rainbow-csv\nmitchdenny.ecdc\nms-azuretools.vscode-docker\nms-python.debugpy\nms-python.python\nms-python.vscode-pylance\nms-vscode-remote.remote-containers\nms-vscode-remote.remote-ssh\nms-vscode-remote.remote-ssh-edit\nms-vscode.remote-explorer\nms-vsliveshare.vsliveshare\npomdtr.excalidraw-editor\ntrailofbits.weaudit\nyzane.markdown-pdf\nzobo.php-intellisense\n\n# Cloned Tools\nhttps://github.com/LazyVim/starter\nhttps://github.com/jpillora/chisel\nhttps://github.com/ambionics/phpggc\nhttps://github.com/CBHue/PyFuscation\nhttps://github.com/christophetd/CloudFlair\nhttps://github.com/minos-org/minos-static\nhttps://github.com/offensive-security/exploit-database\nhttps://gitlab.com/exploit-database/exploitdb\nhttps://github.com/laluka/pty4all\nhttps://github.com/laluka/pypotomux\nhttps://github.com/hugsy/gef\n\n# Clones Wordlists\nhttps://github.com/brannondorsey/naive-hashcat/releases/download/data/rockyou.txt\nhttps://github.com/swisskyrepo/PayloadsAllTheThings\nhttps://github.com/projectdiscovery/fuzzing-templates\nhttps://github.com/1N3/BruteX\nhttps://github.com/1N3/IntruderPayloads\nhttps://github.com/berzerk0/Probable-Wordlists\nhttps://github.com/cujanovic/Open-Redirect-Payloads\nhttps://github.com/danielmiessler/SecLists\nhttps://github.com/ignis-sec/Pwdb-Public\nhttps://github.com/Karanxa/Bug-Bounty-Wordlists\nhttps://github.com/tarraschk/richelieu\nhttps://github.com/p0dalirius/webapp-wordlists\n```\n\n### Security\n\n- `opensnitch` is here to help you block outgoing packets and connections\n- `ufw` is here to help you block incoming packets and requests\n- Be careful though, [docker iptables shenanigans bypass ufw rules](https://richincapie.medium.com/docker-ufw-and-iptables-a-security-flaw-you-need-to-solve-now-40c85587b563)\n\n---\n\n## Main Changes Since [Lalubuntu](https://github.com/laluka/lalubuntu)\n\n| What | Lalubuntu | SkillArch |\n|------|-----------|-----------|\n| OS | Ubuntu | Arch |\n| Install time | 60mn | 20mn |\n| Terminal | Gnome | Kitty |\n| i3 config | regolith | homemade |\n| Install tool | ansible | Makefile |\n| Img builds | packer | docker |\n| Images | base,offensive,gui | lite,full |\n| Quality of Life | decent | wow! |\n\n---\n\n## Kudos\n\n\u003e Let's be honest, I put stuff together, but the heavy lifting is done by these true gods 😉\n\n- https://github.com/bernsteining/beep-beep\n- https://github.com/CachyOS/cachyos-desktop\n- https://github.com/davatorium/rofi\n- https://github.com/Hyde-project/hyde\n- https://github.com/jluttine/rofi-power-menu\n- https://github.com/newmanls/rofi-themes-collection\n- https://github.com/orhun/config\n- https://github.com/regolith-linux/regolith-desktop\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flaluka%2Fskillarch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flaluka%2Fskillarch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flaluka%2Fskillarch/lists"}