44 lines
584 B
Go
44 lines
584 B
Go
package initboot
|
|
|
|
import (
|
|
"log"
|
|
|
|
"github.com/spf13/cobra"
|
|
|
|
"novit.nc/direktil/inits/pkg/sys"
|
|
)
|
|
|
|
var (
|
|
doNetwork bool
|
|
)
|
|
|
|
func Command() (c *cobra.Command) {
|
|
c = &cobra.Command{
|
|
Use: "boot",
|
|
Short: "boot stage",
|
|
Run: run,
|
|
}
|
|
|
|
c.Flags().BoolVar(&doNetwork, "do-network", true, "setup network")
|
|
|
|
return
|
|
}
|
|
|
|
func run(c *cobra.Command, args []string) {
|
|
setupFiles()
|
|
setupModules()
|
|
|
|
if doNetwork {
|
|
setupNetworking()
|
|
}
|
|
|
|
setupLVM()
|
|
}
|
|
|
|
func setupModules() {
|
|
for _, mod := range sys.Config().Modules {
|
|
log.Print("loading module ", mod)
|
|
sys.Run("modprobe", mod)
|
|
}
|
|
}
|