main.yml 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. - name: add PPA for Ubuntu Toolchain
  2. become: true
  3. ansible.builtin.apt_repository:
  4. repo: ppa:ubuntu-toolchain-r/test
  5. when: ansible_distribution == 'Ubuntu'
  6. - name: Install dependicy packages
  7. become: true
  8. apt:
  9. pkg:
  10. - apt-transport-https
  11. - software-properties-common
  12. - gnupg
  13. - sshpass
  14. - wpasupplicant
  15. - rsync
  16. - at
  17. - sysstat
  18. - libtool
  19. - ethtool
  20. - nethogs
  21. - dnsutils
  22. - dnsmasq
  23. - uuid-runtime
  24. - lshw
  25. - tcpdump
  26. - lm-sensors
  27. # - hddtemp NOT work on jammy
  28. - dmidecode
  29. - net-tools
  30. - iputils-arping
  31. - iputils-ping
  32. - telnet
  33. - vim
  34. - git
  35. - pwgen
  36. - locales
  37. - ntpdate
  38. - imagemagick
  39. - mpg123
  40. - ffmpeg
  41. - sqlite3
  42. - tree
  43. - alsa-utils
  44. - pulseaudio
  45. - zsh
  46. - wget
  47. - curl
  48. - zip
  49. - unzip
  50. - systemd-cron
  51. - systemd-timesyncd
  52. - systemd-journal-remote
  53. - screen
  54. - tmux
  55. - hugo
  56. - python3-full
  57. - python3-dev
  58. - certbot
  59. - python3-certbot-nginx
  60. - build-essential
  61. - ninja-build
  62. - bison
  63. - flex
  64. - mold
  65. - pkg-config
  66. - cmake
  67. - libssl-dev
  68. - libpq-dev
  69. - libmysqlclient-dev
  70. - libsqlite3-dev
  71. - libudev-dev
  72. - crun
  73. - podman
  74. - buildah
  75. - fuse-overlayfs
  76. - include_tasks: locales.yml
  77. - name: Set default editor to vim
  78. become: true
  79. shell: update-alternatives --set editor /usr/bin/vim.basic
  80. - name: Set git rebase mode
  81. become: true
  82. shell: git config --global pull.rebase false
  83. - name: setup git to use http v1.1
  84. shell: git config --global http.version HTTP/1.1
  85. # ---------------------------------------------------
  86. - name: check if friendlyelec
  87. ansible.builtin.stat:
  88. path: /etc/friendlyelec-release
  89. register: app_os_friendlyelec
  90. - include_tasks: friendly-core.yml
  91. when: app_os_friendlyelec.stat.islnk is defined and app_os_friendlyelec.stat.isreg
  92. - name: check if armbian
  93. ansible.builtin.stat:
  94. path: /etc/armbian-release
  95. register: app_os_armbian
  96. - include_tasks: armbian.yml
  97. when: app_os_armbian.stat.islnk is defined and app_os_armbian.stat.isreg
  98. - include_tasks: raspbian.yml
  99. when: ansible_distribution == 'Raspbian'
  100. - include_tasks: pi.yml
  101. when: ansible_distribution == 'Raspbian' or (app_os_armbian.stat.islnk is defined and app_os_armbian.stat.isreg) or (app_os_friendlyelec.stat.islnk is defined and app_os_friendlyelec.stat.isreg)
  102. # ---------------------------------------------------
  103. # FIXME failed on jammy
  104. # - name: enable cron service
  105. # become: true
  106. # ansible.builtin.systemd:
  107. # name: cron
  108. # enabled: yes
  109. # masked: no
  110. - name: enable ssh service
  111. become: true
  112. ansible.builtin.systemd:
  113. name: ssh
  114. enabled: yes
  115. masked: no
  116. - name: enable systemd-timesyncd service
  117. become: true
  118. ansible.builtin.systemd:
  119. name: systemd-timesyncd
  120. enabled: yes
  121. masked: no
  122. - include_tasks: clean.yml