In a large saucepan, sauté the sliced shallot in 2 tablespoons of olive oil for 1–2 minutes. Add the peeled tomatoes, season with salt, and simmer uncovered over low heat for 20 minutes to create the tomato sauce.
Meanwhile, in a separate skillet, combine the sliced onion, butter, and white wine. Cook over medium heat until the wine has completely evaporated (about 15 minutes). Stir in a tablespoon of chopped parsley and sage, then add the cod fillet and cook for another 3 minutes. Season with salt, stir in the prepared tomato sauce and 300 g of water, and continue cooking for 15 minutes, until the cod is nearly flaked apart and tender.
In the meantime, boil the linguine in salted water until al dente. Drain and add the pasta directly to the skillet with the cod stew. Toss gently to coat the pasta evenly with the sauce, finish with a sprinkle of chopped parsley, and serve immediately while hot.