Monday, January 22, 2018

How to Install a Local .deb File in Ubuntu (Like a Pro)

So, you've downloaded a .deb file and you're wondering: "What next?"

Let’s break it down.

When you install software using apt, Ubuntu performs two main actions:

  1. Resolves dependencies from the online repositories.

  2. Uses dpkg under the hood to install the actual packages.

However, when you're working with a local .deb file, the process changes slightly. Here's how you can install it properly depending on your setup.


Option 1: Install Using dpkg and Fix Dependencies

bash

sudo dpkg -i /path/to/package.deb sudo apt-get install -f
  • dpkg -i: Installs the .deb file

  • apt-get install -f: Attempts to fix any missing dependencies

This approach is manual but gives you control over the install and resolution process.


Option 2: Install Directly with apt (Recommended for Ubuntu 16.04+)

bash

sudo apt install ./package-name.deb

You can also provide the full path if the file isn't in the current directory:

bash

sudo apt install /home/sangram/Downloads/xyz.deb

Why this method is preferred:

  • Automatically resolves and installs dependencies.

  • Cleaner and more robust for modern Ubuntu versions.


Option 3: Use gdebi for a GUI-Based Install

Install the gdebi tool first:

bash

sudo apt install gdebi

Then:

  1. Right-click your .deb file.

  2. Choose “Open with GDebi Package Installer.”

GDebi Advantages:

  • Graphical interface.

  • Automatically checks and resolves dependencies.

  • Ideal for users who prefer not to use the terminal.


Extra Tip: Manual Installation for Older Systems

On some older systems where apt install doesn’t support local files, you can move the .deb file manually:

bash

sudo mv yourfile.deb /var/cache/apt/archives/

Then:

bash

cd /var/cache/apt/archives/ sudo apt-get install yourfile.deb

This mimics how apt handles package files internally.


A Word About Dependencies

All of these methods rely on the APT package index, defined in the following configuration files:

  • /etc/apt/sources.list

  • /etc/apt/sources.list.d/

If your system is unable to resolve dependencies, the installation will fail. To avoid issues, always make sure your repository list is up to date:

bash

sudo apt update

Source

Originally inspired by a helpful StackExchange post

Tuesday, November 14, 2017

Creating a Python Virtual Environment – Step by Step

Hello Techkie,

It’s been a while since my last post. I got caught up with some personal and technical hurdles — but I’m back on track now, ready to share more useful content.

Today, I’ll walk you through how to create and manage a Python virtual environment, a crucial tool for isolating dependencies in your Python projects.


Why Use a Virtual Environment?

A virtual environment allows you to:

  • Keep your project’s dependencies separate from system-wide packages

  • Avoid conflicts between multiple Python projects

  • Easily manage and reproduce environments for development or deployment


Step 1: Install virtualenv

First, ensure you have pip installed. Then run:

bash

sudo pip install virtualenv

If you're using Python 3+ and want to be explicit:

bash

sudo pip3 install virtualenv

Step 2: Create a Virtual Environment

Run the following command to create a virtual environment:

bash

virtualenv -p /usr/bin/python3.5 myenv
  • Replace /usr/bin/python3.5 with the Python interpreter of your choice.

  • Replace myenv with your desired environment name.


Step 3: Activate the Virtual Environment

To activate the environment, run:

bash

source myenv/bin/activate

Once activated, your terminal prompt will change to show the active environment. You can now install packages using pip, and they’ll be scoped to this environment.


Bonus: Deactivating the Environment

To deactivate the environment and return to the global Python setup:

bash

deactivate

Summary

Using virtual environments is a best practice in Python development. It’s quick to set up, easy to use, and essential for managing multiple projects with different dependencies.

Let me know if you’d like a follow-up post on using venv (the built-in alternative) or managing environments with pipenv or Poetry.

Wednesday, October 26, 2016

How to Create a Text File for Multiple Software Installations on Linux

Hello everyone,

Today, I'll show you a simple way to automate the installation of multiple software packages on a newly installed Linux system — by using a text file and a shell script.

If you've just installed a Linux distribution, especially Fedora or Ubuntu-based, you might find it time-consuming to install all your essential tools one by one. Let's solve that with a batch installation script.


Step 1: Create a .txt or .sh File

Open any text editor and create a file named example.txt (or better, example.sh if you're writing a shell script).

Paste the following commands into the file:

bash

# Update system sudo dnf -y update echo "================================================================" echo " Update Successfully Installed " echo "================================================================" # Install Google Chrome wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm sudo dnf -y install ./google-chrome-stable_current_x86_64.rpm echo "================================================================" echo " Chrome Successfully Installed " echo "================================================================" # Install Vim sudo dnf -y install vim echo "================================================================" echo " Vim Successfully Installed " echo "================================================================" # Install VLC Media Player sudo dnf -y install vlc echo "================================================================" echo " VLC Player Successfully Installed " echo "================================================================" # Install Skype sudo dnf -y install skype echo "================================================================" echo " Skype Successfully Installed " echo "================================================================" # Install Atom Editor (if available in repo or via RPM) sudo dnf -y install atom echo "================================================================" echo " Atom Successfully Installed " echo "================================================================" # Install Aptitude (for Debian-based systems only) # You can skip this if you're on Fedora sudo apt-get -y install aptitude echo "================================================================" echo " Aptitude Successfully Installed " echo "================================================================"

⚠️ Note: The commands above are primarily for Fedora (dnf). If you're on Ubuntu or Debian-based systems, replace dnf with apt.


Step 2: Save the File

Save the file as example.sh (recommended since it's a shell script, not just plain text).


Step 3: Make the Script Executable

Now, open your terminal and run the following command to make the script executable:

bash

chmod 744 example.sh

This sets the file permissions so that:

  • You (the file owner) can read, write, and execute the script.

  • Others can only read it.


Step 4: Run the Script

Execute the script by running:

bash

./example.sh

This will start installing all the listed software, one by one, automatically.


Final Notes

  • Make sure your internet connection is active.

  • You may need to enter your password when prompted by sudo.

  • You can always add or remove software commands to suit your preferences.


Summary

Using a script file for software installation saves time and ensures consistency every time you set up a new system.

Let me know if you'd like a follow-up post on writing cross-platform install scripts for both Ubuntu and Fedora systems.

Wednesday, January 27, 2016

My First Python Meetup Experience – Python 3, Pune 23 Jan 2016




Firstly, I would like to extend a sincere thank you to the organizers of the "Python 3 - 101" Meetup in Pune for arranging such a well-executed and engaging event.

This was my first time attending a Python meetup, and also my first blog post about a community event. As someone who is new to Python, this experience was both exciting and inspiring.


What Made It Special

  • The atmosphere was welcoming, and the learning environment was encouraging.

  • I had the opportunity to connect with fellow learners and experienced developers.

  • The hands-on approach and supportive community gave me a strong motivation to continue exploring Python.


A Note of Thanks to Kushal Das

Our mentor for the session, Kushal Das, led the event with clarity and enthusiasm. He introduced us to beginner-friendly exercises such as:

  • FizzBuzz

  • GetPass and secure input handling

While I couldn’t fully grasp all the concepts right away — being a beginner — the way the topics were presented helped me build a foundational understanding and a strong desire to learn more.

Thank you, Kushal Sir, for your guidance and for making the learning journey approachable for newcomers like me.


Appreciation for Red Hat

I would also like to thank Red Hat for providing the venue and supporting the local Python and open-source community.


Looking Ahead

This meetup has significantly boosted my interest in Python. I’m excited to continue learning, practicing, and contributing as I grow.

Thank you again to all the organizers, mentors, and participants for making this such a valuable experience.

Tuesday, May 20, 2014

What is an IP Address? Understanding IP Classes and Ranges

 What is an IP Address?

An IP (Internet Protocol) address is a unique identifier assigned to every device on a network. Just like a home address ensures mail reaches the right destination, an IP address ensures that data reaches the correct computer on a network.

Most modern networks, including the Internet, use the TCP/IP protocol. In this protocol, the IP address:

  • Identifies the host or device

  • Provides a way to locate that device on the network.

Example: 69.72.169.241 is a valid IP address.

Functions of an IP Address

An IP address serves two main purposes:

  • Host or network interface identification

  • Location addressing


IP Address Classes

There are five classes of IP addresses:

  • Class A

  • Class B

  • Class C

  • Class D

  • Class E

Only Class A, B, and C are commonly used for host addressing.


 


 Automatically Assigned IPs in Home Networks

When you set up a home router or local network, certain IPs are automatically assigned.



If you’ve ever configured your Wi-Fi router, you’ve probably typed 192.168.1.1 into your browser to access the admin panel.

Thursday, February 14, 2013

22 Best College Project Ideas for Computer Science & IT Students


Whether you're preparing for your final-year submission, internship, or just looking to build your portfolio — choosing the right college project can set you apart.

Here’s a list of 22 creative, practical, and impactful project ideas that will not only impress your professors but also enhance your resume.

Let’s dive in 


1. Online Shopping System

Build a fully functional e-commerce platform with features like cart, user registration, product reviews, and payment gateway integration (use Razorpay/Stripe sandbox).

Tech Stack Suggestion: HTML, CSS, JS, Django/Flask or MERN


2. School Management System

An all-in-one dashboard to manage teachers, students, attendance, exams, fees, and reports.

Challenge: Integrate role-based access and SMS/email notifications.


3. NGO Website & Donation Portal

Build a modern donation portal for a non-profit. Include features like donation tracking, volunteer onboarding, and success stories.

Add-on: Payment integration + blog section.


4. E-Commerce Site with Admin Panel

Unlike a basic shop, create an admin interface for stock, discounts, orders, and user management.

Advanced: Add a product recommendation engine.


5. Coaching Class Management Software

Manage course schedules, student performance, class attendance, and teacher dashboards.

Useful For: Tuition classes, EdTech startups.


6. Inventory & Stock Management System

Track incoming/outgoing stock, generate low-inventory alerts, and monthly reports.

Great For: Retail, pharmacy, or warehouse simulation.


7. Medical Store Billing & Inventory System

Keep a record of prescriptions, stock, expiry, and invoices.

Try: Barcode scanning + GST calculation.


8. Payroll & Salary Management System

Auto-calculate salary, leave deductions, and generate payslips. Include tax calculations.

Tools: Django + SQLite or MySQL + PDF report generator


9. Tours & Travel Booking Website

Let users book packages, view itineraries, and submit queries.

Feature Idea: Dynamic pricing for peak season.


10. Book Publication House Management

Track manuscripts, authors, print status, and distribution. Great for showing real-world understanding of publishing workflows.


11. Online Music Store (Download + Stream)

Create a website to browse, download or stream music legally. Include genre filters and playlists.

Optional: Use APIs like Spotify for inspiration.


12. Computer & Gadget Store Management

Manage hardware inventory, customer orders, sales reports, and support requests.

Challenge: Add warranty/return tracking module.


13. Job Portal Website

Let job seekers create profiles and employers post jobs. Add filtering by experience, location, or salary.

Smart Add-on: Resume parsing or AI-based job suggestions.


14. Library Management System

Manage books, borrowers, late return fines, and book requests.

Add: QR code-based book scanning system.


15. Online Banking Simulation

Simulate account creation, fund transfers, statements, and balance checks.

Security Features: OTP, session timeout, and encryption.


16. Product Distributor System

Track orders from manufacturers to retailers. Manage credit, stock returns, and delivery tracking.


17. College/University Website with CMS

Dynamic college website with course listings, admission portal, events, and CMS for admin updates.


18. Dispensary / Clinic Management System

Store patient history, prescriptions, staff schedules, and appointment booking.

Health Angle: HIPAA compliance practices.


19. Student Attendance Management System

Track student attendance, auto-generate monthly reports, and visualize analytics.

Add-on: Facial recognition-based attendance (OpenCV).


20. Courier & Package Tracking System

Allow users to track shipments, estimate delivery times, and log complaints.

Advanced: Integrate with GPS APIs for real-time tracking.


21. E-Bazaar for Local Sellers

Create a platform where small vendors can sell their goods online — think hyperlocal Amazon.

Twist: Cash on delivery + location-based filtering.


22. Student Information & Academic Portal

One-stop portal for students to manage academic records, results, fees, and communication with teachers.


Final Thoughts

These projects range from real-world business tools to fun simulation platforms — all of them are:

  • Practical

  • Resume-friendly

  • Easy to demo to evaluators

Bonus Tip: Don’t just build — document your code, host it on GitHub, and deploy your project (on Render, Vercel, or Netlify) to showcase live.