Skip to the content.

Journey

Setup

Installing WSL and Setting up Ubuntu

  1. To install Ubuntu 24.04 for WSL (Windows Subsystem for Linux):
    • Open PowerShell as an administrator and type:
      wsl --install -d Ubuntu-24.04
      
    • After the installation, set Ubuntu 24.04 as the default WSL distribution:
      wsl --set-default Ubuntu-24.04
      

Cloning Repositories and Installing Necessary Tools

  1. Cloning the portfolio repository:
    • In your home directory:
      cd
      mkdir nighthawk
      cd nighthawk
      git clone https://github.com/nighthawkcoders/portfolio_2025.git
      
  2. Running setup scripts:
    • Navigate to the script directory and activate the Ubuntu setup script:
      cd nighthawk/portfolio_2025/scripts
      ./activate_ubuntu.sh
      

Configuring GitHub Login

  1. Setting up GitHub credentials:
    • Set your GitHub email:
      git config --global user.email "youremail@gmail.com"
      
    • Set your GitHub username:
      git config --global user.name "yourGHID"
      
    • Verify the configuration:
      git config --global --list
      

Setting Up Your Project Repository

  1. Cloning the student project repository:
    • In the nighthawk directory:
      git clone https://github.com/Mom5MoreMins/aranya_student_2025.git
      cd aranya_student_2025
      
  2. Preparing the project for development:
    • Create and activate a virtual environment:
      scripts/venv.sh
      source venv/bin/activate
      
    • Install necessary Python packages:
      pip install -r requirements.txt
      
    • List installed Jupyter kernels to ensure Python3 is available:
      jupyter kernelspec list
      
    • Install necessary Ruby gems:
      bundle install
      
    • Open the project in VS Code:
      code .
      
  3. Local Server Setup:
    • After configuring the make and _config.yml files, use the make command to run a local server:
      make 
      

Important Commands

Linux Command Line Basics

Important Commands

Linux Command Line Basics

Bash Scripting and Editing Files

Git Commands

Package Management with apt and sudo

Takeaways and Concepts Learned

Throughout this process, I learned how to effectively use the Linux command line for managing files, navigating directories, and setting permissions. I also became familiar with Git for version control, basic Bash scripting, and setting up and maintaining virtual environments for Python development.

Some struggles I encountered included understanding file permissions initially. The numeric system for setting permissions took some time to fully grasp. Additionally, I faced minor issues with missing dependencies when setting up the project environment, but I was able to troubleshoot those by reading error messages and installing the necessary packages.

Overall, this setup process provided me with a solid foundation in using command-line tools and version control, as well as in managing development environments.