instagram logo new pngAt long, long last you can upload photos to Instagram using its mobile website.

Announced yesterday, the Facebook-owned company is allowing folks to upload photos to Instagram from a mobile web browser to serve the needs of patchy connected, low-end and bandwidth-sensitive mobile users.

It’s the first time that the photo sharing service has let users share images to photo sharing service without having to use the official Instagram Android, iOS and Windows 10 apps.

Naturally this “Instagram Lite” doesn’t offer a fully complete experience and many Instagram features — DMs, Stories, ability to apply filters — are absent. To use those you’ll need to dig your phone out of your pocket.

But even with the limitations the new mobile-friendly approach is a big step-up over what’s been accessible until now.

The “drawback” here is that the upload feature (indeed the entire web-app UI) only appears when visiting the Instagram website in a mobile web-browser.

But, like all web developments, you’re not limited to using it solely on mobile. Just switch the user-agent string of your favourite desktop web-browser and you can upload photos to Instagram from your Ubuntu PC (or any other PC or OS).

So, if you’ve been longing to upload photos to Instagram from Ubuntu, here’s how.

Upload Photos to Instagram from an Ubuntu PC

To upload photos to Instagram you’ll need an Instagram account. To get an Instagram account you need to sign-up from one of its official mobile apps. There’s (currently) no workaround for this.

Instagram’s API does not allow third-party app developers to create apps that let users upload images to the service (but this hasn’t stopped developers from working around the limitation, with reverse engineered protocols offered by apps like Instagraph for Ubuntu and Flume for macOS) nor does it allow new user accounts to be created.

Once you have a working, verified Instagram account you’re good to go. Open the Instagram website in a new tab in Google Chrome (or another web browser) and login.

instagram website in chromium

You’ll notice that things… Well, you’ll notice that you do not see an upload option! This is intended; the upload feature is only shown when visiting the site from a mobile web-browser (even some tablet users won’t see the upload option).

To upload photos we need to change the user agent string of the browser. There are different ways to do this depending on the browser you use. Chrome extensions and Firefox Add-ons are available and make this very easy, but some of these get unfettered access to your browsing data — hmm…

You can temporarily change user agent to a mobile-friendly without using any add-ons in Google Chrome using the user agent options in the Tools > Developer Options > Console > Network Restrictions pane.

Once a mobile user agent is affected just resize the window a little to see a toolbar appear at the top of the window with options (L-R) to: view your Home stream; explore users, hashtags, and popular images; upload a photo; view recent activity; and access or edit your own profile.

This is where I tend to resize the window to get a more mobile-like experience.

To upload a photo from your Ubuntu PC to Instagram click the camera icon. This will open the default file browser, Nautilus, on Ubuntu automatically.

Select a suitable image from your local files and click ‘Open’. After a brief pause a preview of the image will appear.

You’ll notice that there no photo filters or advanced editing options available (as of writing) on the Instagram mobile site. If you pick an image that’s too large you can’t scale, zoom, pan or crop an image — so tough luck!

A rotate option is present, as is toggle to display the image appears in a square 1:1 ratio or full height.

When done tap ‘next’ to add a caption and some hashtags and go ahead and post the image.

That’s it!

You can use Chrome’s “Add to Desktop” feature to “app-ify” Instagram and have it run in its own window. I’m yet to find a way to force an applied version to use a distinct user-agent though, so if you hit upon a way that doesn’t involve the use of an extension |(some of which have icky permissions) do let me know!