Unpacking Software Livestream

Join our monthly Unpacking Software livestream to hear about the latest news, chat and opinion on packaging, software deployment and lifecycle management!

Learn More

Chocolatey Product Spotlight

Join the Chocolatey Team on our regular monthly stream where we put a spotlight on the most recent Chocolatey product releases. You'll have a chance to have your questions answered in a live Ask Me Anything format.

Learn More

Chocolatey Coding Livestream

Join us for the Chocolatey Coding Livestream, where members of our team dive into the heart of open source development by coding live on various Chocolatey projects. Tune in to witness real-time coding, ask questions, and gain insights into the world of package management. Don't miss this opportunity to engage with our team and contribute to the future of Chocolatey!

Learn More

Calling All Chocolatiers! Whipping Up Windows Automation with Chocolatey Central Management

Webinar from
Wednesday, 17 January 2024

We are delighted to announce the release of Chocolatey Central Management v0.12.0, featuring seamless Deployment Plan creation, time-saving duplications, insightful Group Details, an upgraded Dashboard, bug fixes, user interface polishing, and refined documentation. As an added bonus we'll have members of our Solutions Engineering team on-hand to dive into some interesting ways you can leverage the new features available!

Watch On-Demand
Chocolatey Community Coffee Break

Join the Chocolatey Team as we discuss all things Community, what we do, how you can get involved and answer your Chocolatey questions.

Watch The Replays
Chocolatey and Intune Overview

Webinar Replay from
Wednesday, 30 March 2022

At Chocolatey Software we strive for simple, and teaching others. Let us teach you just how simple it could be to keep your 3rd party applications updated across your devices, all with Intune!

Watch On-Demand
Chocolatey For Business. In Azure. In One Click.

Livestream from
Thursday, 9 June 2022

Join James and Josh to show you how you can get the Chocolatey For Business recommended infrastructure and workflow, created, in Azure, in around 20 minutes.

Watch On-Demand
The Future of Chocolatey CLI

Livestream from
Thursday, 04 August 2022

Join Paul and Gary to hear more about the plans for the Chocolatey CLI in the not so distant future. We'll talk about some cool new features, long term asks from Customers and Community and how you can get involved!

Watch On-Demand
Hacktoberfest Tuesdays 2022

Livestreams from
October 2022

For Hacktoberfest, Chocolatey ran a livestream every Tuesday! Re-watch Cory, James, Gary, and Rain as they share knowledge on how to contribute to open-source projects such as Chocolatey CLI.

Watch On-Demand



Downloads of v 3.4:


Last Update:

16 Jan 2019

Package Maintainer(s):

Software Author(s):

  • Telyn Z.F.
  • Phil Manavopoulos
  • James Carter
  • Bryan Wagg
  • Matthew Bloch


bytemark hosting cloud virtual-machines

Bytemark Client

  • 1
  • 2
  • 3

3.4 | Updated: 16 Jan 2019



Downloads of v 3.4:



Software Author(s):

  • Telyn Z.F.
  • Phil Manavopoulos
  • James Carter
  • Bryan Wagg
  • Matthew Bloch

Bytemark Client 3.4

  • 1
  • 2
  • 3

Some Checks Have Failed or Are Not Yet Complete

Not All Tests Have Passed

Validation Testing Passed

Verification Testing Passed


Scan Testing Resulted in Flagged:

This package was submitted (and approved) prior to automated virus scanning integration into the package moderation processs.

We recommend clicking the "Details" link to make your own decision on installing this package.

Learn More

Deployment Method: Individual Install, Upgrade, & Uninstall

To install Bytemark Client, run the following command from the command line or from PowerShell:


To upgrade Bytemark Client, run the following command from the command line or from PowerShell:


To uninstall Bytemark Client, run the following command from the command line or from PowerShell:


Deployment Method:


This applies to both open source and commercial editions of Chocolatey.

1. Enter Your Internal Repository Url

(this should look similar to https://community.chocolatey.org/api/v2/)

2. Setup Your Environment

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

2. Get the package into your environment

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://community.chocolatey.org/api/v2/. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Copy Your Script

choco upgrade bytemark -y --source="'INTERNAL REPO URL'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:

choco upgrade bytemark -y --source="'INTERNAL REPO URL'" 

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0

Exit $exitCode

- name: Install bytemark
    name: bytemark
    version: '3.4'
    state: present

See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.

chocolatey_package 'bytemark' do
  action    :install
  source   'INTERNAL REPO URL'
  version  '3.4'

See docs at https://docs.chef.io/resource_chocolatey_package.html.

cChocoPackageInstaller bytemark
    Name     = "bytemark"
    Version  = "3.4"
    Source   = "INTERNAL REPO URL"

Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.

package { 'bytemark':
  ensure   => '3.4',
  provider => 'chocolatey',
  source   => 'INTERNAL REPO URL',

Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.

4. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

Package Approved

This package was approved as a trusted package on 15 Jul 2020.


Bytemark Client is a command-line client for interacting
with Bytemark's self-service hosting.

md5: BDDBD6599467BBE26AAB9423487E4808 | sha1: 12F259B26FCB020D319C10172067D0FF149623B1 | sha256: F4022309EB7C90FEEA28458F81B964B7C3ABED254B45DB08C3DFA5C1BAFFF307 | sha512: BDB4643D5A18418FEE418A03AEF72A10B41E6471FE10FF08CAE3825BCC087B0A4520643BF1D71381AB989EC20F8F3EDA6D5EF2BEC47883442E84BA6C09561AF4
The MIT License (MIT)

Copyright (c) 2016-2017 Bytemark Hosting

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

The following is a sha256 hash of the contents of bytemark.exe. It should be
possible to run sha256sum -c VERIFICATION.txt to check the hash.
Though it will complain about these top lines not being valid checksums.
sha256sum can be installed on windows using cygwin, or you could use any other
sha256 utility to hash the file.

f4022309eb7c90feea28458f81b964b7c3abed254b45db08c3dfa5c1bafff307  bytemark.exe

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Add to Builder Version Downloads Last Updated Status
Bytemark Client 3.2 338 Friday, May 18, 2018 Approved
Bytemark Client 3.1 756 Wednesday, May 9, 2018 Approved
Bytemark Client 3.0 468 Friday, April 13, 2018 Approved
Bytemark Client 2.5.1 413 Wednesday, September 20, 2017 Approved
Bytemark Client 2.4 375 Wednesday, June 28, 2017 Approved
Bytemark Client 2.3 386 Friday, June 16, 2017 Approved
Bytemark Client 2.2.1 399 Monday, March 20, 2017 Approved
Bytemark Client 2.2 396 Thursday, March 16, 2017 Approved
Bytemark Client 2.1 404 Thursday, December 29, 2016 Approved
Bytemark Client 2.0.1 385 Thursday, December 22, 2016 Approved
Bytemark Client 2.0 455 Wednesday, November 16, 2016 Approved
Bytemark Client 1.0 407 Wednesday, July 13, 2016 Approved
Bytemark Client 340 Wednesday, May 25, 2016 Approved
Bytemark Client 0.6.0 381 Friday, April 8, 2016 Approved
Bytemark Client 0.5.0 371 Thursday, March 10, 2016 Approved
Bytemark Client 0.4.268 400 Thursday, March 3, 2016 Approved

3.4 (2018-11-06)

New Features:

  • Discs can be moved between servers using the update disc command and the
    new --new-server flag
  • Grant command can now grant privileges to users using api keys
  • API keys can be used for authentication (with access restricted to
    Bytemark Cloud Server's APIs)
  • API keys can be managed with the add api key, delete api key, show api keys, and grant privilege (with --api-key flag) and revoke privilege commands.

?Admin changes:

  • add vm default has been added, allowing staff to create
    publicly-accessible server configurations for use in tutorials, 1-click
    installs, etc.

3.3 (2018-08-21)

New Admin Features:

  • show dependant servers command for viewing servers on a head, tail or
    storage pool at a given time
  • show dependant discs command for viewing discs on a head, tail or
    storage pool at a given time


  • The --recursive flag is no longer required to delete non-empty groups.
  • migrate server now outputs the VM's hostname correctly when the
    migration has been started.
  • The .tar.gz files available on repo.bytemark.co.uk are now gzipped and not
    merely pretending to be.

3.2 (2018-05-14)


  • show servers now takes a group instead of an account by default.
    --account <account> can be specified to list all servers on an account.
  • profiles and scripting have been updated to match the 3.0+ updates.


  • update config --account <account> no longer fails if a billing account
    cannot be found for the named account (but a Bytemark Cloud account can)
  • --output-format is no longer clobbered by --table-fields
  • --output-format=list now produces a list with no lines between columns,
    nor between the header and the body of the list

3.1 (2018-05-08)

?Admin changes:

  • approve server, reject server, reify disc, reap servers commands
    have all been removed
  • ApproveVMs, RejectVMs, ReifyDisc, ReapVMs methods have all been removed
    from Client interface and bytemarkClient struct.


  • Authentication with a token as a user other than $USER (or the value in
    your config-dir) no longer fails with a messages about being an unexpected
  • add ip command no longer makes requests to incorrect URL, causing failure

3.0 (2018-04-10)

New Features:

  • assent command has been added to mark an account as having assented to
    new terms of business.
  • restart server (previously restart) and start server (previously
    start) can now start a server up in the rescue netboot appliance with
    the --netboot flag, or into any appliance with the --appliance <name>

New Admin Features:

  • impersonation support using --impersonate global flag. (see bytemark help)
  • create migration command for creating a MigrationJob. See
    the help for this command - it's really very good.
  • show migrations command for inspecting MigrationJobs
  • show migration command for inspecting a single MigrationJob
  • update migration command for altering MigrationJob-style migrations
  • set iops limit command for limiting a disc or server's IOPS
  • update billing-definition command
  • show disc by id command


  • Numerous commands have been renamed / altered:
    • config renamed to show config
    • config set & config unset have been merged into update config (see
      help update config)
    • create backup renamed to backup discs
    • create discs renamed to add discs
    • create group renamed to add group
    • create server renamed to add server
    • grant and revoke renamed to grant privilege and revoke privilege
    • list accounts renamed to show accounts
    • list backups renamed to show backups
    • list discs renamed to show discs
    • list groups renamed to show groups
    • list keys renamed to show keys
    • list servers renamed to show servers
    • overview renamed to show overview
    • resize disc renamed to update disc (see help update disc)
    • set cdrom, set cores, set hwprofile, set memory, lock hwprofile, unlock hwprofile and move have all been merged
      into update server (see help update server)
    • show disc can now take a disc ID with no server specified.
    • signup has been removed
    • hwprofiles renamed to show hwprofiles
    • images renamed to show images
    • storage renamed to show storage
    • zones renamed to show zones
  • Numerous admin commands have been renamed / altered:
    • cancel migration disc and cancel migration server merged into
      cancel migration (see help cancel migration)
    • create user renamed to add user
    • create ip range renamed to add ip range
    • create vlan-group renamed to add vlan group
    • show stopped eligible vms renamed to show waiting servers
    • show recent vms renamed to show recent servers
    • show migrating vms renamed to show migrating servers
  • add server (previously create server) now outputs the group and
    account in the pre-flight check
  • debug now outputs the response from the server to stdout
  • restart server (previously restart) now cleanly shuts down the server
    before restarting it.
  • show config (previously config) now supports --json and --table.
  • more commands support --json, --table, --output-format and
    --table-fields (basically everything in show supports theme)
  • RPM repository at https://repo.bytemark.co.uk/bytemark-client/rpm is now
  • RPM repo file at
    https://repo.bytemark.co.uk/bytemark-client/rpm/bytemark-client.repo now
    has gpgkey parameter to allow automatic download of the GPG public key
    from secure.bytemark.co.uk.
  • Various bits of help text have been improved
  • supplying --json or --table to show keys (prev. list keys) no longer causes
    a crash
  • show account and show overview (previously overview) no longer
    fail when the account has no billing details.
  • parsing --account flag no longer crashes in some circumstances

2.5.1 (2017-09-20)

Added tools/LICENSE.txt and tools/VERIFICATION.txt to the Chocolatey
package. This update only affects windows, and is necessary because
Chocolatey's automated validation now requires them, and bytemark-client 2.5
was not published as a result

2.5 (2017-09-18)


  • Fix SIGSEGV when launching a browser (bytemark console --panel)
  • Remove duplicate notice that a browser is going to be launched
  • A backup schedule is now added to a server's first disc by default, set
    --backup-schedules to 'none' to disable it.
    Admin-only changes:
  • Improve output for show migrating_discs, show head, show heads
  • Add MigrationProgress, MigrationEta and MigrationSpeed fields on discs

2.4 (2017-06-27)

New features

  • Support for backups via the create backup, delete backup, schedule backups, unschedule backups, show disc and list backups commands.
  • Support for longer session validities than the old default of 5 minutes.
    Use the --session-validity global flag & config variable to set your
    session validity. Otherwise, it will default to the new default of 30

2.3 (2017-06-14)

New features

  • Logging in with 2-factor authentication is now supported, but setting up
    2-factor auth is not yet ready.
  • Added a new table output format using --table and --table-fields to
    most commands which support --json output. --table and --json are
    now aliases for the global flag --output-format <json | table> - which
    can also be specified using config set output-format. The default
    output format for most commands is 'human' - which behaves the same as
    previous versions, but is 'table' for admin-only commands.
    Table output is not intended to be machine readable and the list of
    fields displayed by default for any given command may change between
    releases of bytemark-client. Use the 'json' --output-format or the
    list commands for any scripting.
    Specify --table-fields help to see the available fields for a command
    There is an additional output-format called 'debug' which outputs the
    object as go code.
  • Added the commands command, which displays a list of all the commands
    available in bytemark-client.
  • show server will now accept a server's ID instead of a name.
  • images, zones, storage and hwprofiles commands can now be output
    as JSON or tables using the --output-format, --json, or --table

Changes / Fixes

  • specifying --yubikey will now prompt you to login again if your current
    auth token was not created using a yubikey
  • some commands were not correctly setting a default account, forcing the
    end user to specify their server in server.group.account form, or their
    group in group.account form. This has now been fixed and should be
    consistent across all commands.
  • the --group global flag / config var was being ignored. Now it gets
  • 401 Unauthorized errors are now handled gracefully. These errors occur
    when your authentication token is invalid or unset, whereas 403
    Forbidden errors occur when your token is valid but you do not have
    permission to access something.
  • Brain accounts without a matching billing account now show their VMs
    under show account / list servers.
  • resize disk now works again

New admin commands

  • approve server
  • cancel migration disc
  • cancel migration server
  • create ip_range
  • create user
  • create vlan_group
  • delete vlan
  • empty head
  • empty storage_pool
  • empty tail
  • reap vm
  • regrade disc
  • reify discs
  • reject server
  • update head
  • update migration
  • update storage_pool
  • update tail

Admin-only changes

  • show ip_range now accepts CIDR representation as well as ID
  • account name defaulting behaviour on Bytemark internal/staging brains
    is now better
  • show head[s] now correctly display whether the heads are online

2.2.1 (2017-03-20)


  • many commands required fully-specified groups or servers when they
    should've been more permissive and used defaulting.

2.2 (2017-03-16)

New features

  • Added admin-only commands accessible by adding the --admin global flag
  • Added list of admin-only commands to 'bytemark help admin'
  • Added grant & revoke commands for dealing with privileges
  • Added show privileges command
  • Added --version flag - just prints the version and exits


  • An error that shouldn't ever be seen (NilAuthError) has been made more
  • Debug output (written to debug.log) now has a header containing useful info
    (client version, exact invocation)
  • Almost all arguments are now specifiable as flags
  • Signup form now maxes out at 120 characters wide
  • overview command now has a limit on how many servers per group it will
  • reimage and create server now check that the image requested exists
  • global flags now appear in the bytemark help output
  • improved detection of default account for 'show account' and 'overview'
  • prevent users from uploading private keys in 'add key'
  • add key now supports key filename being passed as an argument


  • show account now detects default accounts decently again. This bug should
    be well and truly squashed now
  • Fixed formatting on the USAGE section of help formatting
  • Certain error messages from the API are now dealt with better
  • HTTP 500 (Internal Server Errors) are handled much better now
  • Some error messages that were output twice are now only output once

2.1 (2016-12-29)

New features

  • bytemark set cdrom has been added to set the URL of an ISO for a server.
  • bytemark config set now validates values - account name typos should be
    a thing of the past :-)


  • RPM packages are now signed
  • man page has been made nicer.
  • man page is the same on macOS as Linux now.
  • Disc labels are now generated as 'disc-N', where N is the index of the
    disc or one larger than the largest other disc with a 'disc-N' label,
    whichever is larger. This matches the panel's behaviour.
  • The --no-discs flag on create server has been removed due to the endpoint
    no longer supporting it.
  • The list of images in bytemark images and bytemark storage grades are
    now sorted.


  • bytemark delete key now accepts the --user flag instead of producing an
  • bytemark show user now works instead of erroring.
  • -v | --version now shows the current version instead of producing an error
  • RPM package now contains the man page, instead of 2 copies of the client
  • Users no longer get asked to file a bug report when they enter invalid
    login details

2.0.1 (2016-12-20)


  • Registering a card (such as during signup) now sends a token to SPP.

2.0 (2016-11-11)

New features

  • --admin flag to enable admin-mode, which adds more commands to the
    client . Admin commands can only be used by cluster admins.
  • admin command: show heads. this is only an initial version and will
    change over time.


  • Input errors (not enough arguments, too many arguments, incorrect flags)
    now output only one error and don't show the help for that command,
    instead suggesting you look at the help for that command.
  • add key now errors when no key is entered.
  • Improve algorithm for figuring out which account is default, and make
    list commands use the same algorithm as other commands.
  • Reordered address fields in the signup form
  • Stabilised the order of the IP address list on each server
  • Improved output when the brain returns an HTTP 400 (Bad Request)


  • Numerous small code fixes
  • Update panel URL to panel.bytemark.co.uk
  • Fix address for bytemark-internal panel
  • Recursive group delete now outputs correctly
  • Confirmation prompts in reimage and create server commands now appears
    on own line
  • --ip flag on create server now works
  • Numerous typo fixes
  • Remove some unintended debug output
  • Fix create server erroring out every time (despite success)
  • --auth-endpoint now works.
  • in show and overview, servers with no discs now display correctly

1.1 (2016-09-20)

Prevent the following from being output to the log file during account

  • card reference
  • user password
    Also prevent card references from being output to the log file whenever
    account information is downloaded, and root passwords for servers being
    output to the log file during reimaging and server creation.
    Passwords during the authentication step have never been logged.
    Temporarily this means that less debugging information is available.
    A better, more precise fix for this secrets-leaking will be available in
    either version 2.0 or 2.1.
    No new features or other changes in this release.

1.0 (2016-07-11)

New features

  • overview command - shows an overview of what accounts the user can access
  • move command - rename a server and/or move it between groups


  • show account, show group and show server now have different, prettier
  • prompt for confirmation on all commands that could increase cost or delete
    data (delete disc, delete group --recursive, delete server, set memory and
    set cores)
  • help text is now better in many places
  • 'undelete server' has been renamed to 'restore server'
  • Add --ssh-args to console command, so that you can specify a different key
    to use, etc.


  • show server: Correct IPv4 addresses are shown
  • create server: firstboot script no longer ignored
  • reimage/create server: fix bug with authorized-keys-file

0.7.1 (2016-05-20)

  • No changes; this is a repackage of 0.7.0's code with a new build pipeline

0.7.0 (2016-05-09)

New features

  • New commands: signup, add ip
  • Add a man page (all platforms except Windows)


  • Tweak the header-line of servers in the show command
  • Help command now shows subcommands (e.g. bytemark help show shows the
    help for show and indicates that show server and show account, etc.
  • xdg-utils no longer a dependency, is a suggested instead. (debian package
  • Better help text for the config command
  • Add confirmation step to reimage command.
  • show account shows more (billing) details about the account


  • Fix crash when zero arguments given
  • Fix finding a default account
  • Fix list servers when no account specified
  • Add unit tests for lib.User and fix a terrible bug
  • Ensure that create server doesn't allow memory to be 0.
  • Nicer output when xdg-open can't be run.

0.6.0 (2016-04-08)

New features:

  • deleted servers are shown when using list servers
  • --json flag added to create server


  • Much better help text for all commands
  • --force and --silent flags have been removed
  • Mention of non-existent delete account command has been removed

0.5.0 (2016-03-10)

New features: None!


  • MIT licensed (hooray)
  • Build number no longer part of version number.


  • Hook up VNC and serial commands
  • console connection instructions improved for v6-only clusters
  • Entering a nonexistent flag no longer produces weird output
  • Accounts with no owner/tech contact no longer cause crashes
  • Shutdown now keeps the VM off once run.

0.4.268 (2016-02-17)

  • Switch to native package format & versioning

0.4.254-1 (2016-02-16)

  • Fix issues with the change log

0.4.253-1 (2016-02-16)

New features

  • show account now shows owner & tech contact details
  • last debug.log is kept as debug.log.1


  • create vm, show vm, list vms now use 'server' in place of 'vm'


  • config set now checks whether the var you're setting is real.
  • power commands output correct help info
  • power commands check for too many arguments
  • create server now takes arguments after the name, bringing it in line
    with the help.

0.3.0-1 (2016-02-09)

  • First attempt at packaging bytemark-client for debian properly

This package has no dependencies.

Discussion for the Bytemark Client Package

Ground Rules:

  • This discussion is only about Bytemark Client and the Bytemark Client package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Bytemark Client, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus