Search code examples
bashubuntudockerfileapt-get

apt-get install tzdata noninteractive


When I try to

apt-get install -y tzdata

the command line option for picking timezone shows up. I am trying to use this in a script to do some setup, how can I make the apt-get run without user input?

I know to reconfigure the tzdata I can do

echo "America/New_York" > /etc/timezone
dpkg-reconfigure -f noninteractive tzdata

But when installing I need it to run fully even if it doesn't set the right timezone, I can always reconfigure it.

I tried

echo 5 | apt-get install -y tzdata

but it is not working as expected.


Solution

  • This is the script I used

    (Updated Version with input from @elquimista from the comments)

    #!/bin/bash
    
    ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime
    DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata
    dpkg-reconfigure --frontend noninteractive tzdata
    

    Seems to work fine.

    As one liner:

    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata