Skip to main content

Getting Samsung Dex Configured to Work with Azure DevOps Repos


Recently, I upgraded my phone to the Samsung Galaxy Note 10+... I'm a big fan of big phones (a perk to being a big guy). I've always been intrigued with the idea of using one device for everything. Well, with the Samsung Dex application that comes built into these next gen phones, it might be possible...? 

As a guy that spends a lot of time working on ARM Templates and PowerShell scripts for Azure management, I was curious to see if I could get my phone, using Dex, connected to my Azure DevOps environment and start working with repos.... Well, to my surprise, I was able to, and without much pain. So, in this post, I'll run through how I got my Dex environment setup and working with Azure DevOps Repos.

Getting Started
With Samsung Dex open, go to the Google Play store and install Termux (https://play.google.com/store/apps/details?id=com.termux&hl=en_US)

Once that's installed, open it!

Next, we need to gift Termux with permissions to access the phone's local storage. This can be done by executing the command "termux-setup-storage" and clicking the "Allow" button

This will setup a "storage" folder under the termux home directory

Next, let's install some updates with "apt update && apt upgrade"
After that completes, run "apt install git" to install the git cli

Well, with Git installed, we can start pulling code. Personally, I prefer to use Azure DevOps for my code repository when I'm just working on things I'd prefer to keep private. If I ever come up with anything good, I would share it out on Github. But when I'm just messing around and I want a remote place to store my code, AzDO is the place I go. I'll likely cover how to connect this Dex environment to Github at a later date…. At any rate, here's how I was able to access my Azure DevOps repositories.

Azure DevOps Setup
In Azure DevOps, navigate to the User icon > Alternative Credentials

Under the Alternative Credentials section, enter an alternative user name and password

With this in play, navigate to the repository you want to clone and copy the clone URL. Back in Termux Enter the following:

$git clone
***Note; to paste in Termux use Ctrl-Alt-V

BEFORE you hit enter, move your cursor to the front of the URL, right after the https:// and add the user name you just set as the "secondary" account. The full command will look something like this:

As you can see in the pic below, your prompted for the account password, and the repo is successfully cloned. I'm also able to show the remote repo using the "git remote -v" command…



So, to wrap things up for this post, using Samsung Dex, we've set up the Termux terminal application, installed git, and got it connected to an Azure DevOps repo. In the future, I'll explore how to set this up with SSH credentials, which I think will need to be the method used for Github. However, my experience with doing that is a bit limited… So that setup may take a while.

Next time around, we'll explore some code editor applications and give a few reviews around which ones I think would be useful.

Comments

Popular posts from this blog

Using Python for GPG/PGP File Encryption - Part 1

So, this will be the start of a series that will build a python script for GPG/PGP file encryption. In this post, we'll look at installing gnupg for python and using python to setup the keystore, create a private key, exporting the associated public key, and importing a public key. Now everything done here can be done with simple gnupg commands, but learning how to do this with python will help in understanding the script we'll be building to complete file encryption. I will be covering non-python gnupg commands in a future post. Additionally, the folks at the python-gnupg site over at pythonhosted.org have done a really great job at documenting everything (link to their site at the bottom). The stuff I'll be going over will be more of a start-to-finish for anyone that may get lost in the muck of doing stuff with python. Full Disclosure #1: Any key identifier throughout the series of posts is FICTITIOUS and DOES NOT represent any real key, either associated with myself or...

Windows Server 2008: Log on as batch job

From time to time, I have to set up some scheduled tasks that required a dedicated account to run. And when doing so, I'll usually forget that the dedicated account usually isn't given any more permissions than what it needs to complete the task at hand. So, after setting up the task, Windows will usually yell at me and say "The account needs batch job rights". So here's how to grant batch job permissions on your server. Go to your start menu, and start searching for Local Security Policy In the left pane of the MMC that opens up, expand Local Policies, and highlight User Rights Assignment. Now, in the left right pane, locate "Log on as a batch job" and double click it. In the properties window that opens up, add the user or group that needs this permission. I find that if you have multiple service accounts running different tasks on the same server, it's easier to just add a group verses the individual a...

Using Python for GPG/PGP File Encryption - Part 2

Previously we looked at creating keys, importing public and private keys and the overall setup of gnupg with python. This time around, we're going to take a look at file encryption. Overall the file encryption process is fairly general/easy. But it lacks in the area of scaleablilty, ie to start, you'll only be encrypting one file at a time, which can be done outside of Python with ease. The idea of going over everything in Python, is that you can setup a script to encrypt multiple files in a folder (look for that in Part 3). Assumptions; you have python, and python-gnupg installed, and a public key from someone you want to encrypt and send files to imported to your keystore home (see Part 1 for more information here. Let's get started with Python file encryption. Start off by getting into your python shell, and enter the following: >>> import os >>> import gnupg >>> gpg_home = "/path/to/keyfile/.gnupg" >>> gpg = gnupg....