# Installation fails (on Ubuntu 22) when using instruction (via curl): \`curl: (23) Failure writing output to destination\`

**URL:** <https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977>\
**Category:** New to Julia\
**Tags:** juliaup\
**Created:** [February 29, 2024, 10:03pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977 "2024-02-29T22:03:00Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Torkel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/torkel/32/5030_2.png) [@Torkel](https://discourse.julialang.org/u/Torkel)\
**Post date:** [February 29, 2024, 10:03pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/1 "2024-02-29T22:03:00Z")

</div>

I have a new ubuntu 22 computer, and try to install Julia via:

```julia
$ curl -fsSL https://install.julialang.org | sh

info: downloading installer
curl: (23) Failure writing output to destination
juliaup: command failed: downloader https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl /tmp/tmp.reaO5Z3yWc/juliainstaller x86_64-unknown-linux-musl

```

(output included)

Not sure how to proceed from here. The computer is new, and there is not previous Julai installations on it. I have sudo permissions. Here is some info:

```julia
 lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 22.04.4 LTS
Release:	22.04
Codename:	jammy

```

I have tried restarting the computer, but the result is the same.

---

<div class="post-metadata">

**Author:** ![BloodFeastMan](https://avatars.discourse-cdn.com/v4/letter/b/258eb7/32.png) [@BloodFeastMan](https://discourse.julialang.org/u/BloodFeastMan)\
**Post date:** [March 1, 2024, 2:28am UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/2 "2024-03-01T02:28:04Z")

</div>

Have you tried installing using apt? Just try a generic

```julia
sudo apt install julia

```

Should work fine.

---

<div class="post-metadata">

**Author:** ![Torkel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/torkel/32/5030_2.png) [@Torkel](https://discourse.julialang.org/u/Torkel)\
**Post date:** [March 1, 2024, 2:40am UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/3 "2024-03-01T02:40:06Z")

</div>

Does this install Julai with the juliaup interface active?

---

<div class="post-metadata">

**Author:** ![BloodFeastMan](https://avatars.discourse-cdn.com/v4/letter/b/258eb7/32.png) [@BloodFeastMan](https://discourse.julialang.org/u/BloodFeastMan)\
**Post date:** [March 1, 2024, 2:44am UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/4 "2024-03-01T02:44:17Z")

</div>

Yes

 ![Screenshot_2024-02-29_18-42-57](https://global.discourse-cdn.com/julialang/original/3X/b/f/bf4dda99e11140a91be0d2d0cea5bf9f7410fdc5.png)

---

<div class="post-metadata">

**Author:** ![Andy2K11](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/andy2k11/32/9967_2.png) [@Andy2K11](https://discourse.julialang.org/u/Andy2K11)\
**Post date:** [March 1, 2024, 8:42am UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/5 "2024-03-01T08:42:27Z")

</div>

I have some vague memory of running into problems with the `/tmp` directory under ubuntu.

You might want to try changing your configuration to use a `tmp` directory in your user directory e.g. `~/tmp`

Think you would do `mkdir ~/tmp` and then `export TMPDIR=~/tmp`.

It’s a while since I’ve had to do this so hope I’m not sending you off in the wrong direction, but perhaps worth a shot if nothing else is working.

edit: `TMPDIR` works with debian and the `mktemp` command rather than `TEMP`

---

<div class="post-metadata">

**Author:** ![johnh](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/johnh/32/3615_2.png) [@johnh](https://discourse.julialang.org/u/johnh)\
**Post date:** [March 1, 2024, 1:22pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/6 "2024-03-01T13:22:17Z")

</div>

Idiot question from me - why the musl version? Ubuntu 22 is a pretty mainstream distro, why not glibc?

---

<div class="post-metadata">

**Author:** ![Torkel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/torkel/32/5030_2.png) [@Torkel](https://discourse.julialang.org/u/Torkel)\
**Post date:** [March 1, 2024, 1:37pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/7 "2024-03-01T13:37:31Z")

</div>

When I do this I get an error:

```julia
:~$ sudo apt install julia
[sudo] password for user: 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Package julia is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'julia' has no installation candidate

```

---

<div class="post-metadata">

**Author:** ![Torkel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/torkel/32/5030_2.png) [@Torkel](https://discourse.julialang.org/u/Torkel)\
**Post date:** [March 1, 2024, 1:43pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/8 "2024-03-01T13:43:19Z")

</div>

Unfortunatley modifying the TMP directory didn’t work either:

```julia
torkelloman@system76-pc:~$ mkdir ~/tmp
torkelloman@system76-pc:~$ ls
Desktop Downloads Music Public Templates Videos
Documents examples.desktop Pictures snap tmp
torkelloman@system76-pc:~$ TMPDIR=~/tmp
torkelloman@system76-pc:~$ curl -fsSL https://install.julialang.org | sh

info: downloading installer
curl: (23) Failure writing output to destination
juliaup: command failed: downloader https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl /tmp/tmp.GXtRIHrSLf/juliainstaller x86_64-unknown-linux-musl

```

---

<div class="post-metadata">

**Author:** ![johnh](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/johnh/32/3615_2.png) [@johnh](https://discourse.julialang.org/u/johnh)\
**Post date:** [March 1, 2024, 5:22pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/9 "2024-03-01T17:22:37Z")

</div>

Could you give this a try:  
cd /tmp  
wget [https://install.julialang.org](https://install.julialang.org)  
sh -x index.html

ps. totally unrelated anecdote - at FOSDEM the developer of curl said he received death threats (some unbalanced person was convinced that the developer ruined his life for some bizarre reason)  
Also he regularly gets help requests for automotive satnav setups as his email address is listed in the copyright notices.

---

<div class="post-metadata">

**Author:** ![BloodFeastMan](https://avatars.discourse-cdn.com/v4/letter/b/258eb7/32.png) [@BloodFeastMan](https://discourse.julialang.org/u/BloodFeastMan)\
**Post date:** [March 1, 2024, 6:29pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/10 "2024-03-01T18:29:36Z")

</div>

You might just download the zip file, put is somewhere, and put it in your PATH  
[https://julialang-s3.julialang.org/bin/linux/x64/1.10/julia-1.10.1-linux-x86\_64.tar.gz](https://julialang-s3.julialang.org/bin/linux/x64/1.10/julia-1.10.1-linux-x86_64.tar.gz)

I had to do that with Solus that I run in a VM, works fine.

---

<div class="post-metadata">

**Author:** ![Andy2K11](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/andy2k11/32/9967_2.png) [@Andy2K11](https://discourse.julialang.org/u/Andy2K11)\
**Post date:** [March 1, 2024, 7:09pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/11 "2024-03-01T19:09:11Z")

</div>

You probably need the `export`, so

`export TMPDIR=~/tmp`

Also, thinking about it, the script might start it’s own shell and the environment variable won’t persist, so you could try adding it to your `.bashrc` file

```bash
echo export TMPDIR=~/tmp >> ~/.bashrc

source ~/.bashrc

```

Check it’s as expected when you start a new shell session

```bash
echo $TMPDIR

```

When you run `mktemp` it should create a directory in the right location e.g. `~/tmp/tmp.aksjdfh234`

Note the part in your error message:

> [@Torkel](#):
>
> `juliaup: command failed: downloader https://ju[...]-musl /tmp/tmp.reaO5Z3yWc/juliainstaller x86_64-unknown-linux-musl`

**`/tmp/tmp.reaO5Z3yWc`**

This is what I’m intending to see change.

---

<div class="post-metadata">

**Author:** ![Torkel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/torkel/32/5030_2.png) [@Torkel](https://discourse.julialang.org/u/Torkel)\
**Post date:** [March 2, 2024, 1:20pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/12 "2024-03-02T13:20:49Z")

</div>

Unfortunately does not work, I get an error on the last command:

```julia
/tmp$ sh -x index.html
+ has_local
+ set -u
+ JULIAUP_SERVER=https://julialang-s3.julialang.org
+ JULIAUP_VERSION=1.14.5
+ main
+ downloader --check
+ is_zsh
+ [-n]
+ local _dld
+ local _ciphersuites
+ local _err
+ local _status
+ local _retry
+ check_cmd curl
+ command -v curl
+ _dld=curl
+ [--check = --check]
+ need_cmd curl
+ check_cmd curl
+ command -v curl
+ need_cmd uname
+ check_cmd uname
+ command -v uname
+ need_cmd mktemp
+ check_cmd mktemp
+ command -v mktemp
+ need_cmd chmod
+ check_cmd chmod
+ command -v chmod
+ need_cmd mkdir
+ check_cmd mkdir
+ command -v mkdir
+ need_cmd rm
+ check_cmd rm
+ command -v rm
+ need_cmd rmdir
+ check_cmd rmdir
+ command -v rmdir
+ need_cmd ln
+ check_cmd ln
+ command -v ln
+ need_cmd cat
+ check_cmd cat
+ command -v cat
+ need_cmd tty
+ check_cmd tty
+ command -v tty
+ get_architecture
+ local _ostype _cputype _bitness _arch _clibtype
+ uname -s
+ _ostype=Linux
+ uname -m
+ _cputype=x86_64
+ _clibtype=gnu
+ [Linux = Linux]
+ uname -o
+ [GNU/Linux = Android]
+ _clibtype=musl
+ [Linux = Darwin]
+ [Linux = SunOS]
+ check_proc
+ test -L /proc/self/exe
+ _ostype=unknown-linux-musl
+ get_bitness
+ need_cmd head
+ check_cmd head
+ command -v head
+ local _current_exe_head
+ head -c 5 /proc/self/exe
+ _current_exe_head=ELF
+ printf \177ELF\001
+ [ELF = ELF]
+ printf \177ELF\002
+ [ELF = ELF]
+ echo 64
+ _bitness=64
+ _cputype=x86_64
+ [unknown-linux-musl = unknown-linux-gnu]
+ [unknown-linux-musl = unknown-linux-gnueabihf]
+ _arch=x86_64-unknown-linux-musl
+ RETVAL=x86_64-unknown-linux-musl
+ local _arch=x86_64-unknown-linux-musl
+ assert_nz x86_64-unknown-linux-musl arch
+ [-z x86_64-unknown-linux-musl]
+ local _ext=
+ local _url=https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl
+ local _dir
+ ensure mktemp -d
+ mktemp -d
+ _dir=/tmp/tmp.gZEpmvrhn9
+ local _file=/tmp/tmp.gZEpmvrhn9/juliainstaller
+ local _ansi_escapes_are_valid=false
+ [-t 2]
+ [set = set]
+ _ansi_escapes_are_valid=true
+ local _y=no
+ local need_tty=yes
+ [yes = yes]
+ [! -t 1]
+ echo

+ true
+ printf \33[1minfo:\33[0m downloading installer\n
info: downloading installer
+ ensure mkdir -p /tmp/tmp.gZEpmvrhn9
+ mkdir -p /tmp/tmp.gZEpmvrhn9
+ ensure downloader https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl /tmp/tmp.gZEpmvrhn9/juliainstaller x86_64-unknown-linux-musl
+ downloader https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl /tmp/tmp.gZEpmvrhn9/juliainstaller x86_64-unknown-linux-musl
+ is_zsh
+ [-n]
+ local _dld
+ local _ciphersuites
+ local _err
+ local _status
+ local _retry
+ check_cmd curl
+ command -v curl
+ _dld=curl
+ [https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl = --check]
+ [curl = curl]
+ check_curl_for_retry_support
+ local _retry_supported=
+ check_help_for notspecified curl --retry
+ local _arch
+ local _cmd
+ local _arg
+ _arch=notspecified
+ shift
+ _cmd=curl
+ shift
+ local _category
+ curl --help
+ grep -q For all options use the manual or "--help all".
+ _category=all
+ curl --help all
+ grep -q -- --retry
+ true
+ _retry_supported=--retry 3
+ check_help_for notspecified curl --continue-at
+ local _arch
+ local _cmd
+ local _arg
+ _arch=notspecified
+ shift
+ _cmd=curl
+ shift
+ local _category
+ + curlgrep --help -q
 For all options use the manual or "--help all".
+ _category=all
+ curl --help all
+ grep -q -- --continue-at
+ true
+ _retry_supported=--retry 3 -C -
+ RETVAL=--retry 3 -C -
+ _retry=--retry 3 -C -
+ get_ciphersuites_for_curl
+ [-n]
+ local _openssl_syntax=no
+ local _gnutls_syntax=no
+ local _backend_supported=yes
+ curl -V
+ grep -q OpenSSL/
+ _openssl_syntax=yes
+ local _args_supported=no
+ [yes = yes]
+ check_help_for notspecified curl --tlsv1.2 --ciphers --proto
+ local _arch
+ local _cmd
+ local _arg
+ _arch=notspecified
+ shift
+ _cmd=curl
+ shift
+ local _category
+ curl --help
+ grep -q For all options use the manual or "--help all".
+ _category=all
+ curl --help all
+ grep -q -- --tlsv1.2
+ curl --help all
+ grep -q -- --ciphers
+ grep -q -- --proto
+ curl --help all
+ true
+ _args_supported=yes
+ local _cs=
+ [yes = yes]
+ [yes = yes]
+ get_strong_ciphersuites_for openssl
+ [openssl = openssl]
+ echo TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384
+ _cs=TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384
+ RETVAL=TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384
+ _ciphersuites=TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384
+ [-n TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384]
+ curl --retry 3 -C - --proto =https --tlsv1.2 --ciphers TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384 --silent --show-error --fail --location https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl --output /tmp/tmp.gZEpmvrhn9/juliainstaller
+ _err=curl: (23) Failure writing output to destination
+ _status=23
+ [-n curl: (23) Failure writing output to destination]
+ echo curl: (23) Failure writing output to destination
curl: (23) Failure writing output to destination
+ echo curl: (23) Failure writing output to destination
+ grep -q 404$
+ return 23
+ err command failed: downloader https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl /tmp/tmp.gZEpmvrhn9/juliainstaller x86_64-unknown-linux-musl
+ say command failed: downloader https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl /tmp/tmp.gZEpmvrhn9/juliainstaller x86_64-unknown-linux-musl
+ printf juliaup: %s\n command failed: downloader https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl /tmp/tmp.gZEpmvrhn9/juliainstaller x86_64-unknown-linux-musl
juliaup: command failed: downloader https://julialang-s3.julialang.org/juliaup/bin/juliainstaller-1.14.5-x86_64-unknown-linux-musl /tmp/tmp.gZEpmvrhn9/juliainstaller x86_64-unknown-linux-musl
+ exit 1

```

---

<div class="post-metadata">

**Author:** ![Torkel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/torkel/32/5030_2.png) [@Torkel](https://discourse.julialang.org/u/Torkel)\
**Post date:** [March 2, 2024, 1:21pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/13 "2024-03-02T13:21:44Z")

</div>

I think that might work for Julia 1.10 specifically, but I want to download the full juliaup version manager, since that just makes everything way easier once I want a new version.

---

<div class="post-metadata">

**Author:** ![Torkel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/torkel/32/5030_2.png) [@Torkel](https://discourse.julialang.org/u/Torkel)\
**Post date:** [March 2, 2024, 1:31pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/14 "2024-03-02T13:31:32Z")

</div>

This worked, thanks a lot!

---

<div class="post-metadata">

**Author:** ![Andy2K11](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/andy2k11/32/9967_2.png) [@Andy2K11](https://discourse.julialang.org/u/Andy2K11)\
**Post date:** [March 2, 2024, 2:50pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/15 "2024-03-02T14:50:41Z")

</div>

Glad I could help.

Next question, why? 😆

The `/tmp` folder has weird permissions

```bash
drwxrwxrwt 21 root root 20K Mar 2 14:39 tmp/

```

Note, the `t` at the end which is a “sticky” permission with execute, whatever that means.

We’re both on debian based systems, but I wonder if Ubuntu does something weird.

---

<div class="post-metadata">

**Author:** ![johnh](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/johnh/32/3615_2.png) [@johnh](https://discourse.julialang.org/u/johnh)\
**Post date:** [March 2, 2024, 5:14pm UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/16 "2024-03-02T17:14:32Z")

</div>

The installer works fine for me on a Vgrant box with ubuntu 222  
This is the permissions for /tmp

drwxrwxrwt 13 root root 4096 Mar 2 17:11 tmp

---

<div class="post-metadata">

**Author:** ![Torkel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/torkel/32/5030_2.png) [@Torkel](https://discourse.julialang.org/u/Torkel)\
**Post date:** [March 3, 2024, 1:05am UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/17 "2024-03-03T01:05:52Z")

</div>

Got it. Still surprised how messy this is, figured I should have a really standard set up.

---

<div class="post-metadata">

**Author:** ![mkitti](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkitti/32/12459_2.png) [@mkitti](https://discourse.julialang.org/u/mkitti)\
**Post date:** [March 3, 2024, 5:13am UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/18 "2024-03-03T05:13:20Z")

</div>

Something still seems quite off here. Why is it downloading the musl version?

How did you install Ubuntu?

---

<div class="post-metadata">

**Author:** ![johnh](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/johnh/32/3615_2.png) [@johnh](https://discourse.julialang.org/u/johnh)\
**Post date:** [March 3, 2024, 9:37am UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/19 "2024-03-03T09:37:05Z")

</div>

I agree with @mkitti Please tell us your setup and the fix. This could be helpful for people in the future.

---

<div class="post-metadata">

**Author:** ![Torkel](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/torkel/32/5030_2.png) [@Torkel](https://discourse.julialang.org/u/Torkel)\
**Post date:** [March 6, 2024, 1:41am UTC](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977/21 "2024-03-06T01:41:44Z")

</div>

So, this is what confuses me. I just got a new laptop from [https://system76.com/](https://system76.com/) (which specialises in linux laptops), with Ubuntu 22 on. I really hadn’t installed or done anything at all with it when i encountered this problem. So I figured my set-up should be the most normal one could expect. It seems really strange that I got these problems.

[Next page](https://discourse.julialang.org/t/installation-fails-on-ubuntu-22-when-using-instruction-via-curl-curl-23-failure-writing-output-to-destination/110977.md?page=2)
