if not version_match or not self_version or version_match(self_version, "<60.0.1") then DIE("Minimal required version of Updater-ng for Turris repository is 60.0.1!") end if not board then local model = model or os_release["OPENWRT_DEVICE_PRODUCT"] or os_release["LEDE_DEVICE_PRODUCT"] if model:match("[Mm]ox") then board = "mox" elseif model:match("[Oo]mnia") then board = "omnia" elseif model:match("^[Tt]urris$") or model:match("[Tt]urris ?1%.?x") then board = "turris1x" else DIE("Unsupported Turris model: " .. tostring(model)) end end -- Script simplifying lists inclusion when older version of updater is used function list_script(list) if features["relative_uri"] then Script(list) else Script((repo_base_uri or "https://repo.turris.cz/hbs") .. "/" .. board .. "/lists/" .. list) end end ---------------------------------------------------------------------------------- if features.request_condition then -- Advanced dependencies guard -- Kernel -- Install("kmod-ata-ahci", { priority = 40 }) -- File systems Install("kmod-fs-autofs4", "kmod-fs-btrfs", "kmod-fs-cifs", "kmod-fs-exfat", "kmod-fs-exportfs", "kmod-fs-ext4", "kmod-fs-hfs", "kmod-fs-hfsplus", "kmod-fs-msdos", "kmod-fs-nfs", "kmod-fs-nfsd", "kmod-fs-ntfs", "kmod-fs-vfat", "kmod-fs-xfs", { priority = 40 }) -- Native language support Install("kmod-nls-cp1250", "kmod-nls-cp1251", "kmod-nls-cp437", "kmod-nls-cp775", "kmod-nls-cp850", "kmod-nls-cp852", "kmod-nls-cp862", "kmod-nls-cp864", "kmod-nls-cp866", "kmod-nls-cp932", "kmod-nls-iso8859-1", "kmod-nls-iso8859-13", "kmod-nls-iso8859-15", "kmod-nls-iso8859-2", "kmod-nls-iso8859-6", "kmod-nls-iso8859-8", "kmod-nls-koi8r", "kmod-nls-utf8", { priority = 40 }) -- Disk maintenance Install("blkdiscard", "fstrim", { priority = 40 }) -- Fix for SATA card sent with Omnia NAS pack if board == "omnia" then Install("asm1062-fix", { priority = 40 }) end -- Tools -- Install("mount-utils", "losetup", "lsblk", "blkid", "file", { priority = 40 }) Install("fdisk", "cfdisk", "hdparm", "resize2fs", "partx-utils", { priority = 40 }) Install("acl", "attr", { priority = 40 }) Install("blockd" , "smartd", "smartmontools", "smartmontools-drivedb", { priority = 40 }) Install("swap-utils", { priority = 40 }) -- File systems userspace utilities Install("lvm2", "dosfstools", "mkhfs", "btrfs-progs", "davfs2", "e2fsprogs", "fuse-utils", "xfs-mkfs", { priority = 40 }) Install("block-mount", "badblocks", "cifsmount", "hfsfsck", "xfs-fsck", "xfs-growfs", { priority = 40 }) Install("nfs-kernel-server", "nfs-kernel-server-utils", { priority = 40 }) Install("ntfs-3g", "ntfs-3g-utils", { priority = 40 }) Install("sshfs", { priority = 40 }) -- Network Install("wget", "rsync", "rsyncd", { priority = 40 }) -- Luci Install("luci-app-hd-idle", { priority = 40 }) -- Samba -- if options and options.samba then Install("samba4-client", "samba4-server", "samba4-admin", "samba4-utils", { priority = 40 }) Install("luci-app-samba4", { priority = 40 }) end -- DLNA -- if options and options.dlna then Install("luci-app-minidlna", { priority = 40 }) end -- Transmission -- if options and options.transmission then Install("transmission-daemon", { priority = 40 }) Install("luci-app-transmission", { priority = 40 }) Install("transmission-web", { priority = 40 }) end -- Raid -- if options and options.raid then Install("kmod-md-linear", "kmod-md-multipath", "kmod-md-raid0", "kmod-md-raid1", "kmod-md-raid10", "kmod-md-raid456", { priority = 40 }) Install("mdadm", { priority = 40 }) end -- Encryption -- if options and options.encrypt then Install("cryptsetup", "kmod-cryptodev", "kmod-crypto-user", { priority = 40 }) Install("kmod-crypto-cbc", "kmod-crypto-ctr", "kmod-crypto-pcbc", "kmod-crypto-des", "kmod-crypto-ecb", "kmod-crypto-xts", { priority = 40 }) Install("kmod-crypto-cmac", "kmod-crypto-crc32c", "kmod-crypto-sha1", "kmod-crypto-sha256", "kmod-crypto-sha512", "kmod-crypto-md4", "kmod-crypto-md5", "kmod-crypto-hmac", { priority = 40 }) Install("kmod-crypto-seqiv", "kmod-crypto-ccm", "kmod-crypto-deflate", { priority = 40 }) if board == "mox" then Install("kmod-crypto-hw-safexcel", { priority = 40 }) elseif board == "turris1x" then Install("kmod-crypto-hw-talitos", { priority = 40 }) end end end