Skip to content

Commit e479b95

Browse files
committed
patch: organize docs
1 parent 926ff2b commit e479b95

File tree

6 files changed

+45
-163
lines changed

6 files changed

+45
-163
lines changed

README.md

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,10 @@ confidence.
5353
2. Update and install:
5454

5555
```sh
56-
sudo apt-get update
56+
sudo apt-get update #you can use apt instead of apt-get as well
5757
sudo apt-get install balena-etcher-electron
5858
```
59+
>Note: after v1.7.9 the package name changed to `balena-etcher` (no electron at the end)
5960
6061
##### Uninstall
6162

@@ -87,6 +88,7 @@ apt-get update
8788
```sh
8889
sudo dnf install -y balena-etcher-electron
8990
```
91+
>Note: after v1.7.9 the package name changed to `balena-etcher` (no electron at the end)
9092
9193
###### Uninstall
9294

@@ -110,6 +112,7 @@ rm /etc/yum.repos.d/balena-etcher-source.repo
110112
```sh
111113
sudo yum install -y balena-etcher-electron
112114
```
115+
>Note: after v1.7.9 the package name changed to `balena-etcher` (no electron at the end)
113116
114117
###### Uninstall
115118

@@ -134,6 +137,7 @@ rm /etc/yum.repos.d/balena-etcher-source.repo
134137
sudo zypper up
135138
sudo zypper install balena-etcher-electron
136139
```
140+
>Note: after v1.7.9 the package name changed to `balena-etcher` (no electron at the end)
137141
138142
##### Uninstall
139143

@@ -169,6 +173,19 @@ yay -S balena-etcher
169173
```sh
170174
yay -R balena-etcher
171175
```
176+
#### WinGet (Windows)
177+
178+
This package is updated by [gh-action](https://github.com/vedantmgoyal2009/winget-releaser), and is kept up to date automatically.
179+
180+
```sh
181+
winget install balenaEtcher #or Balena.Etcher
182+
```
183+
184+
##### Uninstall
185+
186+
```sh
187+
winget uninstall balenaEtcher
188+
```
172189

173190
#### Chocolatey (Windows)
174191

FAQ.md renamed to docs/FAQ.md

File renamed without changes.

docs/MAINTAINERS.md

Lines changed: 13 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,14 @@ Releasing
88

99
### Release Types
1010

11-
- **snapshot** (default): A continues snapshot of current master, made by the CI services
12-
- **production**: Full releases
11+
- **draft**: A continues snapshot of current master, made by the CI services
12+
- **pre-release** (default): A continues snapshot of current master, made by the CI services
13+
- **release**: Full releases
14+
15+
Draft release is created from each PR, tagged with the branch name.
16+
All merged PR will generate a new tag/version as a *pre-release*.
17+
Mark the pre-release as final when it is necessary, then distribute the packages in alternative channels as necessary.
1318

14-
### Flight Plan
1519

1620
#### Preparation
1721

@@ -33,9 +37,8 @@ Releasing
3337
- [Update the website](https://github.com/balena-io/etcher-homepage)
3438
- Wait 2-3 hours for analytics (Sentry, Amplitude) to trickle in and check for elevated error rates, or regressions
3539
- If regressions arise; pull the release, and release a patched version, else:
36-
- [Upload deb & rpm packages to Bintray](#uploading-packages-to-bintray)
37-
- [Upload build artifacts to Amazon S3](#uploading-binaries-to-amazon-s3)
38-
- Post changelog with `#release-notes` tag on Flowdock
40+
- [Upload deb & rpm packages to Cloudfront](#uploading-packages-to-cloudfront)
41+
- Post changelog with `#release-notes` tag on internal chat
3942
- If this release packs noteworthy major changes:
4043
- Write a blog post about it, and / or
4144
- Write about it to the Etcher mailing list
@@ -57,46 +60,16 @@ export ANALYTICS_AMPLITUDE_TOKEN="xxxxxx"
5760

5861
**NOTE:** Make sure to adjust the path as necessary (here the Etcher repository has been cloned to `/home/$USER/code/etcher`)
5962

60-
```bash
61-
./scripts/build/docker/run-command.sh -r x64 -s . -c "make distclean"
62-
```
63-
6463
##### Generating artifacts
6564

66-
```bash
67-
# x64
68-
69-
# Build Debian packages
70-
./scripts/build/docker/run-command.sh -r x64 -s . -c "make electron-develop && make RELEASE_TYPE=production electron-installer-debian"
71-
# Build RPM packages
72-
./scripts/build/docker/run-command.sh -r x64 -s . -c "make electron-develop && make RELEASE_TYPE=production electron-installer-redhat"
73-
# Build AppImages
74-
./scripts/build/docker/run-command.sh -r x64 -s . -c "make electron-develop && make RELEASE_TYPE=production electron-installer-appimage"
75-
76-
# x86
77-
78-
# Build Debian packages
79-
./scripts/build/docker/run-command.sh -r x86 -s . -c "make electron-develop && make RELEASE_TYPE=production electron-installer-debian"
80-
# Build RPM packages
81-
./scripts/build/docker/run-command.sh -r x86 -s . -c "make electron-develop && make RELEASE_TYPE=production electron-installer-redhat"
82-
# Build AppImages
83-
./scripts/build/docker/run-command.sh -r x86 -s . -c "make electron-develop && make RELEASE_TYPE=production electron-installer-appimage"
84-
```
65+
The artifacts are generated by the CI and published as draft-release or pre-release.
66+
`electron-builder` is used to create the packaged application.
8567

8668
#### Mac OS
8769

8870
**ATTENTION:** For production releases you'll need the code-signing key,
8971
and set `CSC_NAME` to generate signed binaries on Mac OS.
9072

91-
```bash
92-
make electron-develop
93-
94-
# Build the zip
95-
make RELEASE_TYPE=production electron-installer-app-zip
96-
# Build the dmg
97-
make RELEASE_TYPE=production electron-installer-dmg
98-
```
99-
10073
#### Windows
10174

10275
**ATTENTION:** For production releases you'll need the code-signing key,
@@ -105,38 +78,10 @@ and set `CSC_LINK`, and `CSC_KEY_PASSWORD` to generate signed binaries on Window
10578
**NOTE:**
10679
- Keep in mind to also generate artifacts for x86, with `TARGET_ARCH=x86`.
10780

108-
```bash
109-
make electron-develop
110-
111-
# Build the Portable version
112-
make RELEASE_TYPE=production electron-installer-portable
113-
# Build the Installer
114-
make RELEASE_TYPE=production electron-installer-nsis
115-
```
11681

117-
### Uploading packages to Bintray
82+
### Uploading packages to Cloudfront
11883

119-
```bash
120-
export BINTRAY_USER="username@account"
121-
export BINTRAY_API_KEY="youruserapikey"
122-
```
123-
124-
```bash
125-
./scripts/publish/bintray.sh -c "etcher" -t "production" -v "1.2.1" -o "etcher" -p "debian" -y "debian" -r "x64" -f "dist/etcher-electron_1.2.1_amd64.deb"
126-
./scripts/publish/bintray.sh -c "etcher" -t "production" -v "1.2.1" -o "etcher" -p "debian" -y "debian" -r "x86" -f "dist/etcher-electron_1.2.1_i386.deb"
127-
./scripts/publish/bintray.sh -c "etcher" -t "production" -v "1.2.1" -o "etcher" -p "redhat" -y "redhat" -r "x64" -f "dist/etcher-electron-1.2.1.x86_64.rpm"
128-
./scripts/publish/bintray.sh -c "etcher" -t "production" -v "1.2.1" -o "etcher" -p "redhat" -y "redhat" -r "x86" -f "dist/etcher-electron-1.2.1.i686.rpm"
129-
```
130-
131-
### Uploading binaries to Amazon S3
132-
133-
```bash
134-
export S3_KEY="..."
135-
```
136-
137-
```bash
138-
./scripts/publish/aws-s3.sh -b "balena-production-downloads" -v "1.2.1" -p "etcher" -f "dist/<filename>"
139-
```
84+
Log in to cloudfront and upload the `rpm` and `deb` files.
14085

14186
### Dealing with a Problematic Release
14287

docs/PUBLISHING.md

Lines changed: 9 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -7,44 +7,9 @@ systems.
77
Release Types
88
-------------
99

10-
Etcher supports **production** and **snapshot** release types. Each is
11-
published to a different S3 bucket, and production release types are code
12-
signed, while snapshot release types aren't and include a short git commit-hash
13-
as a build number. For example, `1.0.0-beta.19` is a production release type,
14-
while `1.0.0-beta.19+531ab82` is a snapshot release type.
15-
16-
In terms of comparison: `1.0.0-beta.19` (production) < `1.0.0-beta.19+531ab82`
17-
(snapshot) < `1.0.0-rc.1` (production) < `1.0.0-rc.1+7fde24a` (snapshot) <
18-
`1.0.0` (production) < `1.0.0+2201e5f` (snapshot). Keep in mind that if you're
19-
running a production release type, you'll only be prompted to update to
20-
production release types, and if you're running a snapshot release type, you'll
21-
only be prompted to update to other snapshot release types.
22-
23-
The build system creates (and publishes) snapshot release types by default, but
24-
you can build a specific release type by setting the `RELEASE_TYPE` make
25-
variable. For example:
26-
27-
```sh
28-
make <target> RELEASE_TYPE=snapshot
29-
make <target> RELEASE_TYPE=production
30-
```
31-
32-
We can control the version range a specific Etcher version will consider when
33-
showing the update notification dialog by tweaking the `updates.semverRange`
34-
property of `package.json`.
35-
36-
Update Channels
37-
---------------
38-
39-
Etcher has a setting to include the unstable update channel. If this option is
40-
set, Etcher will consider both stable and unstable versions when showing the
41-
update notifier dialog. Unstable versions are the ones that contain a `beta`
42-
pre-release tag. For example:
43-
44-
- Production unstable version: `1.4.0-beta.1`
45-
- Snapshot unstable version: `1.4.0-beta.1+7fde24a`
46-
- Production stable version: `1.4.0`
47-
- Snapshot stable version: `1.4.0+7fde24a`
10+
Etcher supports **pre-release** and **final** release types as does Github. Each is
11+
published to Github releases.
12+
The release version is generated automatically from the commit messasges.
4813

4914
Signing
5015
-------
@@ -73,63 +38,19 @@ Packaging
7338

7439
The resulting installers will be saved to `dist/out`.
7540

76-
Run the following commands:
77-
78-
### OS X
41+
Run the following commands on all platforms with the right arguments:
7942

8043
```sh
81-
make electron-installer-dmg
82-
make electron-installer-app-zip
44+
./node_modules/electron-builder build <...>
8345
```
8446

85-
### GNU/Linux
86-
87-
```sh
88-
make electron-installer-appimage
89-
make electron-installer-debian
90-
```
91-
92-
### Windows
93-
94-
```sh
95-
make electron-installer-zip
96-
make electron-installer-nsis
97-
```
9847

99-
Publishing to Bintray
48+
Publishing to Cloudfront
10049
---------------------
10150

102-
We publish GNU/Linux Debian packages to [Bintray][bintray].
103-
104-
Make sure you set the following environment variables:
105-
106-
- `BINTRAY_USER`
107-
- `BINTRAY_API_KEY`
108-
109-
Run the following command:
110-
111-
```sh
112-
make publish-bintray-debian
113-
```
114-
115-
Publishing to S3
116-
----------------
117-
118-
- [AWS CLI][aws-cli]
119-
120-
Make sure you have the [AWS CLI tool][aws-cli] installed and configured to
121-
access balena.io's production or snapshot S3 bucket.
122-
123-
Run the following command to publish all files for the current combination of
124-
_platform_ and _arch_ (building them if necessary):
125-
126-
```sh
127-
make publish-aws-s3
128-
```
51+
We publish GNU/Linux Debian packages to [Cloudfront][cloudfront].
12952

130-
Also add links to each AWS S3 file in [GitHub Releases][github-releases]. See
131-
[`v1.0.0-beta.17`](https://github.com/balena-io/etcher/releases/tag/v1.0.0-beta.17)
132-
as an example.
53+
Log in to cloudfront and upload the `rpm` and `deb` files.
13354

13455
Publishing to Homebrew Cask
13556
---------------------------
@@ -147,7 +68,7 @@ Post messages to the [Etcher forum][balena-forum-etcher] announcing the new vers
14768
of Etcher, and including the relevant section of the Changelog.
14869

14970
[aws-cli]: https://aws.amazon.com/cli
150-
[bintray]: https://bintray.com
71+
[cloudfront]: https://cloudfront.com
15172
[etcher-cask-file]: https://github.com/caskroom/homebrew-cask/blob/master/Casks/balenaetcher.rb
15273
[homebrew-cask]: https://github.com/caskroom/homebrew-cask
15374
[balena-forum-etcher]: https://forums.balena.io/c/etcher
File renamed without changes.

docs/USER-DOCUMENTATION.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@ Etcher User Documentation
33

44
This document contains how-tos and FAQs oriented to Etcher users.
55

6+
Config
7+
------
8+
Etcher's configuration is saved to the `config.json` file in the apps folder.
9+
Not all the options are surfaced to the UI. You may edit this file to tweak settings even before launching the app.
10+
611
Why is my drive not bootable?
712
-----------------------------
813

@@ -219,10 +224,4 @@ macOS 10.10 (Yosemite) and newer versions][electron-supported-platforms].
219224
[windows-iot-dashboard]: https://developer.microsoft.com/en-us/windows/iot/downloads
220225
[woeusb]: https://github.com/slacka/WoeUSB
221226

222-
How can I simulate an update alert?
223-
-----------------------------
224-
You can set the ETCHER_FAKE_S3_LATEST_VERSION environment variable to a valid semver version (greater than the current version) to trick the application into thinking that what you put there is the latest available version, therefore causing the update notification dialog to be presented at startup.
225-
226-
Note that the value of the variable will be ignored if it doesn't match the release type of the current application version. For example, setting the variable to a production version (e.g. ETCHER_FAKE_S3_LATEST_VERSION=2.0.0) will be ignored if you're running a snapshot build, and vice-versa.
227-
228227
See [PUBLISHING](/docs/PUBLISHING.md) for more details about release types.

0 commit comments

Comments
 (0)