You're getting permission denied because GitHub needs to verify you own the RootlessNet organization.
-
Install GitHub CLI (if not already installed):
# On Arch Linux sudo pacman -S github-cli -
Authenticate with GitHub:
gh auth login
- Select: GitHub.com
- Select: HTTPS
- Authenticate with your browser
-
Push the code:
cd /home/aaryan/Projects/RootlessNet git push origin main
-
Create a Personal Access Token:
- Go to: https://github.com/settings/tokens
- Click "Generate new token (classic)"
- Give it a name: "RootlessNet Protocol"
- Select scopes:
repo(full control) - Click "Generate token"
- Copy the token (you won't see it again!)
-
Use the token to push:
cd /home/aaryan/Projects/RootlessNet git remote set-url origin https://YOUR_TOKEN@github.com/RootlessNet/protocol.git git push origin main
-
Generate SSH key:
ssh-keygen -t ed25519 -C "your_email@example.com" # Press Enter to accept default location # Enter a passphrase (or leave empty)
-
Add SSH key to GitHub:
cat ~/.ssh/id_ed25519.pub # Copy the output
- Go to: https://github.com/settings/keys
- Click "New SSH key"
- Paste your public key
- Click "Add SSH key"
-
Test and push:
ssh -T git@github.com cd /home/aaryan/Projects/RootlessNet git remote set-url origin git@github.com:RootlessNet/protocol.git git push origin main
Your code is ready to push! All 31 tests are passing. Once you authenticate, run:
cd /home/aaryan/Projects/RootlessNet
git push origin mainThe protocol implementation will then be live at: https://github.com/RootlessNet/protocol